Страница 1 из 1

MQTT обратная связь...

Добавлено: Вс мар 13, 2016 7:39 pm
gorec2005
Подскажите пожалуйста - как правильно/лучше сделать обратную связь с устройствами:
на тек. момент устройства (ESP8266+самописная прошивка) подключаются к MQTT брокеру, топик
/ESP/DEVMAC/C/#
и MJD подключено туда-же (топик /ESP/#)- если использовать стандартную схему привязки - то все работает нормально, но есть нюанс - ESP шлет подтверждение исполнения команды устройством
для команды
/ESP/18FE3498EC00/C/GPIO/1/FADE 1000
подтверждение будет
/ESP/18FE3498EC00/PWM/1 1000
:-) если топики сделать одинаковыми (без буквы C) получаем вечный двигатель
кто-то отправляет команду в топик и ESP потом ее ретранслирует бесконечно.
кроме того, есть еще широковещательные сообщения вроде
/ESP/BROADCAST/C/... которые возвращают то-же в другой топик
если я делаю слайдер на регулирование яркости подсветки, то связь устанавливается в обе стороны одновременно :-( как в этом случае сделать контроль?

Re: MQTT обратная связь...

Добавлено: Вс май 29, 2016 11:59 pm
dagenwail
У меня MJD get апросы на исполнение
а Arduino шлет сообщение со статусом с топиком /ARD/STATUS/LAMP1
MJD подписано на /ARD/STATUS/#

т к я не знаю как организовать запрос через mqtt с MJM
если подскажешь буду рад

Re: MQTT обратная связь...

Добавлено: Пн май 30, 2016 8:55 am
ShouseD
Я настроил связь по протоколу MQTT из ESP-12 (тоже кастомная прошивка). И управляю, и получаю состояние. На самом деле ничего сложного. Смотрите мое видео. https://youtu.be/jZGjd04IvI4 Скетч с комментариями в описании.

Re: MQTT обратная связь...

Добавлено: Вс июн 05, 2016 1:56 am
dagenwail
ShouseD писал(а):Я настроил связь по протоколу MQTT из ESP-12 (тоже кастомная прошивка). И управляю, и получаю состояние. На самом деле ничего сложного. Смотрите мое видео. https://youtu.be/jZGjd04IvI4 Скетч с комментариями в описании.
Как получать статус на esp я понял а как ты его отправляешь его с mdm я не поймы. Ты связываешь mqtt сообщение пришеднее с esp со свойством объекта switch1 и у объекта меняется status. А какой командой сделать так чтобы когда ты щелкаешь по переключателю отправлялось сообщение для esp по которому он переключится. Нужно ведь что-то в метод прописать?

Re: MQTT обратная связь...

Добавлено: Вс июн 05, 2016 11:28 am
ShouseD
dagenwail писал(а): Нужно ведь что-то в метод прописать?
Нет. Ничего прописывать не надо. Я ведь со свойством объекта уже связал, и система сама отправляет сообщение, когда ты щелкаешь по переключателю, на связанный адрес(relay/relay_1), например 0 или 1.

Re: MQTT обратная связь...

Добавлено: Вт июн 07, 2016 7:54 pm
ryzh
А я поступил по другому:
создал объект mqttSend со свойством .command, это свойство привязал к mqtt (/ESP8266/COMMAND/) и setGlobal-ом присваиваю этому свойству все нужные мне команды ( Строку вида "room=Hall&device=Lamp1&command=1" ). ESP 12 (c прошивкой на ардуино), выполняющая функцию шлюза слушает этот топик, разбирает строку, командует другим ESP и ардуинкам, принимает от них отчет об исполнении и отвечает в соответствующем топике (например /ESP8266/STATUS/Hall/Lamp1 ).

Попутно решается проблема передачи команд моим старым устройствам сделанным на 433 Мгц и на NRF24L01.