MySQLitto или IoT в коробке
ฝัง
- เผยแพร่เมื่อ 28 ก.ย. 2024
- Быстрое развертывание стека контейнеров с MQTT брокером и БД с сохранением истории публикаций.
Файлы из видео: github.com/Moo...
Пример кода для ESP:
...
const char MQTT_CLIENT[] PROGMEM = "ESP_";
...
char clientId[sizeof(MQTT_CLIENT) + 6];
...
{
uint8_t mac[6];
WiFi.macAddress(mac);
sprintf_P(clientId, PSTR("%S%02X%02X%02X"), MQTT_CLIENT, mac[3], mac[4], mac[5]);
}
...
mqtt.connect(clientId, user, pswd);
...
snprintf_P(topic, sizeof(topic), PSTR("/devices/%s/state"), clientId);
mqtt.publish(topic, payload);
Класс!!! Очень полезно!!!
Можно еще Grafana контейнер добавить и будет наглядно с графиками.
Вариантов куча. К примеру у меня такой стек, traefik+mosquitto+telegraf+influxdb
Сложнее вариантов бесконечность, проще только беженцы за еду на старом буке вручную раскладывают поля в бд :)
Fine!
Большое спасибо за ваш труд! Недавно сам увлекся похожим проектом, но смотрел с интересом. Вероятно порог вхождения в тему этого видео не совсем уж начальный, зато хорошая отправная точка для дальнейшего развития в области IoT. Хочу предложить заинтересовавшимся зрителям самостоятельно добавить в стек контейнеров ещё и Grafana - и полезно и наглядно.
Задачу, поставленную на 1:15 , с учетом природы подписки MQTT, имхо можно решить в общем виде на Kafka + kafka-connect-mqtt + KSQL(необязательно, но если хочется искать записи как в MySQL). Но настроить всё это далеко не так просто как MySQL, это скорее промышленное решение для вашей задачи. Kafka как раз брокер сообщений, которые при этом может хранить на диске как в БД.
У меня под эти задачи home assistant с соответствующими аддонами