NEWS
Драйвер MQTT
- 
					
					
					
					
 Добрый день всем, строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? 
- 
					
					
					
					
 Добрый день всем, строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? ` 
 Создать в админ такой объект ручками
- 
					
					
					
					
 Добрый день всем, строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручками
 Сначала создаем в нужном устройстве lcd (у меня OLED дисплей), а потом внутри него line1, line2 и так далее…! [img  ] ]
- 
					
					
					
					
 Добрый день всем, строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручками
 Сначала создаем в нужном устройстве lcd (у меня OLED дисплей), а потом внутри него line1, line2 и так далее…! [imgioBroker.admin.png] ` Спасибо, все получилось. Хотелось бы уточнить - надо для этой переменной ставить Role: variable, или text как у вас? У меня работает variable. Значит без разницы? Вообще на что влияет свойвство common.role? Сходу не нашел в ддокументации. 
- 
					
					
					
					
 Создать в админ такой объект ручками ` 
 Сначала создаем в нужном устройстве lcd (у меня OLED дисплей), а потом внутри него line1, line2 и так далее…! [imgioBroker.admin.png] ` Спасибо, все получилось. Хотелось бы уточнить - надо для этой переменной ставить Role: variable, или text как у вас? У меня работает variable. Значит без разницы? Вообще на что влияет свойвство common.role? Сходу не нашел в ддокументации. ` 
 Role используется для отображения. Что бы знать, как это значение показывать в vis или mobile
- 
					
					
					
					
 Добрый день всем, строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручкамиВозникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно. А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false, без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет. Куда копать, где грабли ?  
- 
					
					
					
					
 Добрый день всем, строку для отображения. Но проблема в том, что ESP не публикует этот топик (но подписан на все топики /nodename/* по willcard, следовательно получит информауию и обработает).Следовательно надо этот топик опубликовать средствами IOB. Вопрос - как? Создать в админ такой объект ручкамиВозникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно. А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false, без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет. Куда копать, где грабли ?  ` `
 Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqtt
- 
					
					
					
					
 Создать в админ такой объект ручками ` Возникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно. А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false, без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет. Куда копать, где грабли ?   Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqttПоставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика. Куда копать дальше? 
- 
					
					
					
					
 Возникла странная проблема. Создаю объект руками, через админку назначаю значение, все отлично, по MQTT модуль принимает данные и отображает мгновенно. А вот когда я изменяю состояние этого объекта из JavaScript, то в админке вижу что состояние меняется, но модуль по MQTT обновления не получает. Пробовал setState с ask = true, и false, без разницы. При рестарте модуля ESP он читает данные из топика, но при обновлении из скрипта - нет. Куда копать, где грабли ?   Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqttПоставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика. Куда копать дальше? ` клиент подписан? Js скрипт запущен? 
- 
					
					
					
					
 Попробуй слать и отслеживать с помощью mqtt-spy. Мне часто помогает помогает понять ,что происходит с mqtt ` Поставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика. Куда копать дальше? клиент подписан? Js скрипт запущен?Да, конечно. 1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает. 2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже. Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять. 
- 
					
					
					
					
 Поставил mqtt-spy и вижу что MQTT драйвер не шлет ничего, когда топик обновляется из javascript. Мистика. Куда копать дальше? клиент подписан? Js скрипт запущен?Да, конечно. 1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает. 2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже. Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять. ` а в какой ветке создан? Подписывается на отдельный топик или на всю ветку? 
- 
					
					
					
					
 клиент подписан? Js скрипт запущен? ` Да, конечно. 1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает. 2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже. Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять. а в какой ветке создан? Подписывается на отдельный топик или на всю ветку?Вот видно на скрине (выделен красным) топик который я создал. !  Клиент ESP подписывается регэкспом на всю свою ветку: mqtt-0 2016-11-21 12:01:32.004 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^mqtt.0.sh-esp-klad..*/ mqtt-0 2016-11-21 12:01:32.003 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^sh-esp-klad..*/ 
- 
					
					
					
					
 Да, конечно. 1. Клиент (ESP) подписан, и обрабатывает изменение топика как нужно. Тут нет проблем. Ставим ручками в админке значение mqtt объекта, оно передается подписчикам (mqtt-spy подтверждает), ESP тоже получает и отрабатывает. 2. Js скрипт запущен. Он производит установку значения объекта через setState. В админке я вижу что изменение состояние объекта есть (from: javascript.0). НО: mqtt-spy подписанный на этот топик не видит изменений. ESP соответственно тоже. Отсюда вывод: MQTT - брокер на IOB не рассылает изменения подписчикам. Топик (объект) MQTT создан ручками в админке. Может в этом дело? Не могу понять. а в какой ветке создан? Подписывается на отдельный топик или на всю ветку?Вот видно на скрине (выделен красным) топик который я создал. ! mqtt_topic.jpg Клиент ESP подписывается регэкспом на всю свою ветку: mqtt-0 2016-11-21 12:01:32.004 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^mqtt.0.sh-esp-klad..*/ mqtt-0 2016-11-21 12:01:32.003 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^sh-esp-klad..*/ ` очень странно, последние версии драйверов? В настройках драйвера все ок? Дебаг Включи еще 
- 
					
					
					
					
 Вот у меня MQTT в прошивке от MaksMS, стабильно работает только с авторизацией… Но драйвер MQTT уже много с того времени потерпел изменений. 
- 
					
					
					
					
 а в какой ветке создан? Подписывается на отдельный топик или на всю ветку? ` Вот видно на скрине (выделен красным) топик который я создал. ! mqtt_topic.jpg Клиент ESP подписывается регэкспом на всю свою ветку: mqtt-0 2016-11-21 12:01:32.004 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^mqtt.0.sh-esp-klad..*/ mqtt-0 2016-11-21 12:01:32.003 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^sh-esp-klad..*/ очень странно, последние версии драйверов? В настройках драйвера все ок? Дебаг Включи ещеСтранно. Включил Trace output for every message: в настройках драйвера (версия 1.2.4, я так понимаю последняя). Но никаких дополнительных сообщений в логе с уровнем debug не увидел. Или я включил отладку не в том месте? 
- 
					
					
					
					
 Вот у меня MQTT в прошивке от MaksMS, стабильно работает только с авторизацией… Но драйвер MQTT уже много с того времени потерпел изменений. ` ну у меня он то работает и без авторизации с ESP. да и проблема не в ESP собственно, а в том, что почему-то MQTT не отдает изменения сделанные через JS . Причем только в случае с самодельным топиком. А управление gpio например на те же ESP работает отлично. 
- 
					
					
					
					
 Вот видно на скрине (выделен красным) топик который я создал. ! mqtt_topic.jpg Клиент ESP подписывается регэкспом на всю свою ветку: mqtt-0 2016-11-21 12:01:32.004 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^mqtt.0.sh-esp-klad..*/ mqtt-0 2016-11-21 12:01:32.003 info Client [ESP8266001a53d2] subscribes on "sh-esp-klad.#" with regex /^sh-esp-klad..*/ очень странно, последние версии драйверов? В настройках драйвера все ок? Дебаг Включи ещеСтранно. Включил Trace output for every message: в настройках драйвера (версия 1.2.4, я так понимаю последняя). Но никаких дополнительных сообщений в логе с уровнем debug не увидел. Или я включил отладку не в том месте? ` 
 http://forum.iobroker.net/download/file … &mode=view
- 
					
					
					
					
 очень странно, последние версии драйверов? В настройках драйвера все ок? Дебаг Включи еще ` Странно. Включил Trace output for every message: в настройках драйвера (версия 1.2.4, я так понимаю последняя). Но никаких дополнительных сообщений в логе с уровнем debug не увидел. Или я включил отладку не в том месте? [http://forum.iobroker.net/download/file … &mode=view](http://forum.iobroker.net/download/file.php?id=6886&mode=view)Спасибо, было перед глазами но не заметил  Впрочем проблема решилась следующим образом - я при помощи mqtt-spy запостил данные в созданный ручками объект топика MQTT. После этого видимо что-то внутри драйвера пришло в состояние шеншуя, и после этого апдейт топика из JS работает нормально, и сообщения уходят подписчикам. По мере изучения IOB я все больше прихожу к пониманию необходимости приобретения шаманского бубна. Самый полезный инструмент, после синей изоленты, конечно  
- 
					
					
					
					
 Новая проблема с брокером MQTT. Начал разбиратся почему при рестарте брокера иногда самопроизвольно включаются устройства, управляемые по MQTT, и вот что при включении логирования выяснил: 1. запуск mqtt брокера и подписка интересующего нас клиента 2016-11-23 10:58:23.135 - ^[[32minfo^[[39m: mqtt.0 Starting MQTT server on port 1883 2016-11-23 10:58:25.091 - ^[[32minfo^[[39m: mqtt.0 Client [color=#ff0000][ESP826600d3304e] connected2016-11-23 10:58:25.104 - ^[[32minfo^[[39m: mqtt.0 Client [ESP826600d3304e] subscribes on "sh-esp-ver2.#" with regex /^sh-esp-ver2..*/ 2016-11-23 10:58:25.105 - ^[[32minfo^[[39m: mqtt.0 Client [ESP826600d3304e] subscribes on "sh-esp-ver2.#" with regex /^mqtt.0.sh-esp-ver2..*/ 2. Клиент получает от брокера сохраненное значение интересующего нас GPIO, посколько при создании топика установлен флаг retain : (пока все нормально, выход выключен) 2016-11-23 10:58:25.133 - ^[[34mdebug^[[39m: mqtt.0 Send to client [ESP826600d3304e//~~[color=#ff0000]~~sh-esp-ver2/output15] "/sh-esp-ver2/output15": 0 3. ESP отдает брокеру тоже самое: 2016-11-23 10:58:25.195 - ^[[34mdebug^[[39m: mqtt.0 Server received " [color=#ff0000]/sh-esp-ver2/output15" (number): 04. Брокер запоминает это: 2016-11-23 10:58:25.206 - ^[[34mdebug^[[39m: mqtt.0 stateChange mqtt.0.~~[color=#ff0000]~~sh-esp-ver2.output15: {"val":0,"ack":true,"ts":1479887905196,"q":0,"from":"system.adapter.mqtt.0","lc":1479887085735} 5. И шлет клиенту ESP нечто в своем внутреннем представлении. <u>Упс:</u> 2016-11-23 10:58:27.848 - ^[[34mdebug^[[39m: mqtt.0 Send to client [ESP826600d3304e//sh-esp-ver2/output15] "/sh-esp-ver2/output15": {"val":0} 6. Бедная ESP отпарсив очевидно это {"val":0} решает что надо включить GPIO что и делает, и бодро репортует брокеру: 2016-11-23 10:59:49.070 - ^[[34mdebug^[[39m: mqtt.0 Server received [color=#ff0000]"/sh-esp-ver2/output15" (number): 1Вопрос по пункту 5: а зачем брокер шлет это подписчикам. И можно ли это отключить? Может быть Bluefox может подключится и прокоментировать? 
- 
					
					
					
					
 Новая проблема с брокером MQTT. Начал разбиратся почему при рестарте брокера иногда самопроизвольно включаются устройства, управляемые по MQTT, и вот что при включении логирования выяснил: 1. запуск mqtt брокера и подписка интересующего нас клиента 2016-11-23 10:58:23.135 - ^[[32minfo^[[39m: mqtt.0 Starting MQTT server on port 1883 2016-11-23 10:58:25.091 - ^[[32minfo^[[39m: mqtt.0 Client [color=#ff0000][ESP826600d3304e] connected2016-11-23 10:58:25.104 - ^[[32minfo^[[39m: mqtt.0 Client [ESP826600d3304e] subscribes on "sh-esp-ver2.#" with regex /^sh-esp-ver2..*/ 2016-11-23 10:58:25.105 - ^[[32minfo^[[39m: mqtt.0 Client [ESP826600d3304e] subscribes on "sh-esp-ver2.#" with regex /^mqtt.0.sh-esp-ver2..*/ 2. Клиент получает от брокера сохраненное значение интересующего нас GPIO, посколько при создании топика установлен флаг retain : (пока все нормально, выход выключен) 2016-11-23 10:58:25.133 - ^[[34mdebug^[[39m: mqtt.0 Send to client [ESP826600d3304e//~~[color=#ff0000]~~sh-esp-ver2/output15] "/sh-esp-ver2/output15": 0 3. ESP отдает брокеру тоже самое: 2016-11-23 10:58:25.195 - ^[[34mdebug^[[39m: mqtt.0 Server received " [color=#ff0000]/sh-esp-ver2/output15" (number): 04. Брокер запоминает это: 2016-11-23 10:58:25.206 - ^[[34mdebug^[[39m: mqtt.0 stateChange mqtt.0.~~[color=#ff0000]~~sh-esp-ver2.output15: {"val":0,"ack":true,"ts":1479887905196,"q":0,"from":"system.adapter.mqtt.0","lc":1479887085735} 5. И шлет клиенту ESP нечто в своем внутреннем представлении. <u>Упс:</u> 2016-11-23 10:58:27.848 - ^[[34mdebug^[[39m: mqtt.0 Send to client [ESP826600d3304e//sh-esp-ver2/output15] "/sh-esp-ver2/output15": {"val":0} 6. Бедная ESP отпарсив очевидно это {"val":0} решает что надо включить GPIO что и делает, и бодро репортует брокеру: 2016-11-23 10:59:49.070 - ^[[34mdebug^[[39m: mqtt.0 Server received [color=#ff0000]"/sh-esp-ver2/output15" (number): 1Вопрос по пункту 5: а зачем брокер шлет это подписчикам. И можно ли это отключить? Может быть Bluefox может подключится и прокоментировать? ` 4 ым пунктом просто говорит что объект изменился, 5ым пунктом шлет изменение клиенту. Что не так? Код Меги давай и настройкиmqtt 
 
		
	 
		
	