Устройства на MQTT следует определять топиком config, retain сообщением. В этом же топике описывается кроме параметров устройства так же топики: состояния(state), возможные значения состояний, командный топик, его значения, а так же топик доступности. Для полной картины так же можно заполнить тег device c информацией об устройстве: производитель, модель, версия железа, софта и т.д. Конфигурация отправляется на MQTT сервер при запуске устройства, а т.к. сообщение имеет метку retain, то все подключенные после старта устройства клиенты, так же получат конфигурацию. Далее отправляете топик состояния с нужной вам периодичностью и переодически топик доступности. Ожидаете на устройстве командный топик. P.S. Если будете формировать большие сообщения в MQTT, то можете получить обрезанное сообщение на сервере, лечится установкой максимальной длины пакета client.setMaxPacketSize( ) в клиенте.
Лучше отправляй данные так: создай структуру с данными. Например struct SensorData { float temp; float hum; float co2; float tvoc; } data; Потом когда забьешь значениями, кастуешь её к void* вот так send((void*)data); На приемной части пакет данных кастуешь обратно так: SensorData* data = (SensorData*) received; Если к этому ещё контрольную сумму добавить то будет совсем хорошо. Json лучше не использовать для такого, т.к. он очень громоздкий для передачи по радио каналу.
@@pavelpavel7938 ну это прочувствуешь, когда будешь отправлять больше данных текстовым протоколом. Данные могут не успевать отправляться. Сам сравни. Структура весит 4+4+4+4 байта. И это только полезная информация, а в json много мусора по типу различных символов. В мк чем меньше памяти юзаешь тем лучше
@@AdamFullowsky мне кажется, что отталкиваться над от задачи, а не от экономии байтиков.В данной задаче даже потеря данных при передаче не является критической. А если возникают проблемы от того что ты передаешь 50 байт, а не 16, то возможно ты вообше выбрал не тот инструментарий.
Бери любую статью по mqtt или документацию к популярным либам. Какая разница на чем сервер. Всеравно сам сервер будет максимум собираться из примеров )
сам иногда пользуюсь ножничной технологией сверления отверстий. иной раз надо сделать дырку в пластике, а в мастерскую идти расчехлять инструмент и сверла не охота
Локальный автономный MQTT брокер на ESP интересная тема, если к нему еще дисплей прикрутить и сделать комбо mosqito + explorer, то для отладки будет самое то.
Всегда полагал, что MQTT брокер обеспечивает своим клиентам взаимодействие по модели публикация/подписка, т.е. при приеме опубликованного топика всем клиентам, подписанным на путь, который включает тему топика, разослать его копию. Это помимо внутренней кухни с поддержанием связи, хранением персистент-топиков, QoS и т.п. Так что задача не совсем тривиальная, а учитывая скудность ОЗУ ESP8266 вообще виртуозная. С другой стороны, есть ESP32...
У меня локальный брокер крутится на Synology, вариантов то масса, но на Synology например нет монитора сколько устройств подключилось, сколько прошло пакетов, вообще ни какого интерфейса с внешним миром. Приходится цеплять или комп или телефон и делать подписку на все что-бы понять что происходит. А тут компактное устройство все в одном, на дисплей можно будет вывести нужную инфу
@@pavelpavel7938 Вот и получается что для отладки нада кучу всего запускать, а я часто пишу программы то дома, то на работе, то на даче вот и приходится все с собой таскать
Кстати если "просто так" отправлять датчики в народный мониторинг, то одним пакетом, с одного IP можно отправить много (*) датчиков, но если они разбросаны по квартире, то тоже есть идея делать шлюз на ESP, которая будет с других ESP собирать данные и уже общим пакетом отправлять в народный мониторинг. (*) сколько именно - не знаю.
Смотрю и понимаю что это сильно смахивает на телеметрию crossfire, qczlrs, elrs и прочее радио оборудование для дронов, определение датчиков, система свой чужой, железки...
с dc-dc модулем странная история. если это 360mini, то я их уже несколько лет использую без проблем. еще есть старший брат чуть больше, если нужно >1А. Но подстроечник меняю сразу на постоянный смд резистор. 22к = 3.4в. может из-за него глючат.
тоже не понимаю, там должна стоять MP2307, которая как и все модели от MPS - довольно приличные МСки под свое назначение. разве что на модуле какая-то "перемаркировка" стоит.
Вопрос - каковы они по сравнению с nrf24? Так же интересно на сколько реально общаться с ними только по spi. И самое главное - есть ли возможность читать уровень сигнала rssi ?
я Вас давно спрашивал как из лоры и есп сделать мост для вайфая, чтобы одна есп подключалась к домашней сети потом через лору передавала на другую есп а та уже раздавала вайфай
Устройства на MQTT следует определять топиком config, retain сообщением. В этом же топике описывается кроме параметров устройства так же топики: состояния(state), возможные значения состояний, командный топик, его значения, а так же топик доступности. Для полной картины так же можно заполнить тег device c информацией об устройстве: производитель, модель, версия железа, софта и т.д. Конфигурация отправляется на MQTT сервер при запуске устройства, а т.к. сообщение имеет метку retain, то все подключенные после старта устройства клиенты, так же получат конфигурацию. Далее отправляете топик состояния с нужной вам периодичностью и переодически топик доступности. Ожидаете на устройстве командный топик.
P.S. Если будете формировать большие сообщения в MQTT, то можете получить обрезанное сообщение на сервере, лечится установкой максимальной длины пакета client.setMaxPacketSize( ) в клиенте.
Лучше отправляй данные так: создай структуру с данными. Например
struct SensorData
{
float temp;
float hum;
float co2;
float tvoc;
} data;
Потом когда забьешь значениями, кастуешь её к void* вот так send((void*)data);
На приемной части пакет данных кастуешь обратно так: SensorData* data = (SensorData*) received;
Если к этому ещё контрольную сумму добавить то будет совсем хорошо.
Json лучше не использовать для такого, т.к. он очень громоздкий для передачи по радио каналу.
Если компилятор ругается, то возможно ему нужно const char*, просто кастуй к нему, это сишный каст, он такое разрешает
А в чем проблема громоздкости? ))
@@pavelpavel7938 ну это прочувствуешь, когда будешь отправлять больше данных текстовым протоколом. Данные могут не успевать отправляться. Сам сравни. Структура весит 4+4+4+4 байта. И это только полезная информация, а в json много мусора по типу различных символов. В мк чем меньше памяти юзаешь тем лучше
@@AdamFullowsky мне кажется, что отталкиваться над от задачи, а не от экономии байтиков.В данной задаче даже потеря данных при передаче не является критической. А если возникают проблемы от того что ты передаешь 50 байт, а не 16, то возможно ты вообше выбрал не тот инструментарий.
@@pavelpavel7938 в случае с LoRa, где расстояние напрямую зависит от скорости, экономия "байтиков" имеет законный смысл.
Приветствую, интересно было бы послушать про mqtt сервер на esp.
Бери любую статью по mqtt или документацию к популярным либам. Какая разница на чем сервер. Всеравно сам сервер будет максимум собираться из примеров )
слабоват для этого есп мне кажется.. если только как резервный..
Вы большой молодец 👍 ждемс продолжения .
сам иногда пользуюсь ножничной технологией сверления отверстий. иной раз надо сделать дырку в пластике, а в мастерскую идти расчехлять инструмент и сверла не охота
вывод - надо работать в мастерской )
@@RobotN001 паяю я в комнате. Есть для этого отдельный стол с отдельным монитором. А в мастерской нет нормальной теплоизоляции и отопления
Хорошо когда понимаешь, что делаешь. Я на покупал всякого, а сделать ни чего не могу.
Локальный автономный MQTT брокер на ESP интересная тема, если к нему еще дисплей прикрутить и сделать комбо mosqito + explorer, то для отладки будет самое то.
А что в нем интересного? Обычный сервер который просто прокидывает сообщения дальше.
Всегда полагал, что MQTT брокер обеспечивает своим клиентам взаимодействие по модели публикация/подписка, т.е. при приеме опубликованного топика всем клиентам, подписанным на путь, который включает тему топика, разослать его копию. Это помимо внутренней кухни с поддержанием связи, хранением персистент-топиков, QoS и т.п. Так что задача не совсем тривиальная, а учитывая скудность ОЗУ ESP8266 вообще виртуозная. С другой стороны, есть ESP32...
У меня локальный брокер крутится на Synology, вариантов то масса, но на Synology например нет монитора сколько устройств подключилось, сколько прошло пакетов, вообще ни какого интерфейса с внешним миром. Приходится цеплять или комп или телефон и делать подписку на все что-бы понять что происходит. А тут компактное устройство все в одном, на дисплей можно будет вывести нужную инфу
@@АндрейЕвгеньевич-и5м А Synology куда прокидывает сообщения? Вот там и смотри. Или замени/поставь еще один нормальный брокер с вэбмордой.
@@pavelpavel7938 Вот и получается что для отладки нада кучу всего запускать, а я часто пишу программы то дома, то на работе, то на даче вот и приходится все с собой таскать
Кстати если "просто так" отправлять датчики в народный мониторинг, то одним пакетом, с одного IP можно отправить много (*) датчиков, но если они разбросаны по квартире, то тоже есть идея делать шлюз на ESP, которая будет с других ESP собирать данные и уже общим пакетом отправлять в народный мониторинг.
(*) сколько именно - не знаю.
Тема радиосвязи досихпор мной не разобрана, поэтому интересно! Но не понятно ;)
Лору без антены лучше не включать.
да, я как увидел, кричу - антенну накрути..
LoRa модуль только как трансивер работает , или его можно запрограммировать на сбор данных 1wire + сон + батарейный домен?
тот, только как модем.
очень интересен брокер на esp!
Тот дс-дс сам по себе очень плохо, плюс именно среди них каждый третий просто греться может из-за глючности.
Здо́рово! Идея очень интересная
Смотрю и понимаю что это сильно смахивает на телеметрию crossfire, qczlrs, elrs и прочее радио оборудование для дронов, определение датчиков, система свой чужой, железки...
с dc-dc модулем странная история. если это 360mini, то я их уже несколько лет использую без проблем. еще есть старший брат чуть больше, если нужно >1А. Но подстроечник меняю сразу на постоянный смд резистор. 22к = 3.4в. может из-за него глючат.
тоже не понимаю, там должна стоять MP2307, которая как и все модели от MPS - довольно приличные МСки под свое назначение.
разве что на модуле какая-то "перемаркировка" стоит.
Очень интересно про брокер на есп
нихрена не понятно, но очень интересно
А датчики с ионисторами и солнечными батареями
Интересно про брокер на esp8266
Есть российский МК миландр аналог СТМ 32 К1986ВЕ92QI, но цены на платки гнут лютые , раз это аналог можно просто чип поменять на СТМ борде ?
А смысл?
@@Svetliy_777 хотелось по юзать Российский МК по дешевле , думаю купить самый бюджетный мк борт за 5к, спасибо за внимание
спасибо! а можно ещё про orange pi?
Вопрос - каковы они по сравнению с nrf24?
Так же интересно на сколько реально общаться с ними только по spi.
И самое главное - есть ли возможность читать уровень сигнала rssi ?
про всё то было рассказано несколько лет назад, ищите на канале.
я Вас давно спрашивал как из лоры и есп сделать мост для вайфая, чтобы одна есп подключалась к домашней сети потом через лору передавала на другую есп а та уже раздавала вайфай
Скорость конечно супер минимальной будет но так конечно тоже интересно было бы пощупать.
Народ не вкурил схемное построение сети с датчиками+Лора+есп... Нужно бы показать, а то каждый рисует себе в голове свое построение..
а эта штука не запрещена? мощность то там большая
комент написал
@Google Account @Вперед Смотрящий последую вашим двум примерам
Привет, как раз сейчас занимаюсь этой темой. Уже есть готовое решение, если интересно, то отпиши, могу скинуть.
Привет, не мог бы помочь ?.. Я не обладаю достаточными знаниями.. Жалко автор видео мало уделяет этому в видео.
@@quasar3885 привет, чем именно?