Плагин MQTT
-
Участник @gewer написал в Плагин MQTT:
Был бы признателен за небольшой мануал по выводу значения температуры на главный экран.
Создаете аналоговый датчик температуры и подключаете его к топику , в который передаете данные с ТН10, канал AI, ваш датчик температуры , и топик н.р /Sonoff TH10/datt/temperature . Топик создаете в прошивке ТН10. Обработка не нужна, этот датчик передает в градусах, округление можно настроить лучше в прошивке ТН10
-
@Anatol а где это в тасмоте делается?
-
Я в ESP Easy Mega, но и в тасмоте можно. Топик для реле вы ведь создали, точно также и для датчика.
-
Участник @Anatol написал в Плагин MQTT:
Я в ESP Easy Mega, но и в тасмоте можно. Топик для реле вы ведь создали, точно также и для датчика.
Примерно понял логику. Данные в логах вроде верные.
Но вместо температуры получаю какую-то чушь:
-
@Anatol в логах:
-
@gewer данные приходят в JSON, поэтому на вкладке "Обработка" - Формула входного значения нужно прописать:
JSON.parse(value).DS18B20.Temperature
-
@intrapro супер, всё получилось. Спасибо!
-
Очередной затык...
Сделал кнопку с действием при нажатии toggle.
Но она только включает выключенное реле, выключить уже не может и состояние кнопки не меняется.
Подозреваю, что неправильно настроил канал...Помогите разобраться.
-
@gewer отвечаю сам себе через минуту, посмотрев на скриншоты... Топик чувствителен к регистру))
-
Никак не получается запустить плагин MQTT v1.0.4 на Win10,Nodev12.13.0 NPM -v6.12. Cервер установлен на тойже машине где IH, другие клиенты (MQTT.fx, MQTT exlorer) подписываются и подключаются без проблем. В чем может загвоздка?
20.11 07:42:07.158 IH: Run C:\ProgramData\intrahouse-c/plugins/mqttclient/mqttclient.js mqttclient1
20.11 07:42:07.428 mqttclient1: ERR: uncaughtException { Error: Cannot find module 'mqtt'
at Function.Module._resolveFilename (module.js:527:15)
at Function.Module._load (module.js:476:23)
at Module.require (module.js:568:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (C:\ProgramData\intrahouse-c\plugins\mqttclient\lib\agent.js:6:14)
at Module._compile (module.js:624:30)
at Object.Module._extensions..js (module.js:635:10)
at Module.load (module.js:545:32)
at tryModuleLoad (module.js:508:12)
at Function.Module._load (module.js:500:3) code: 'MODULE_NOT_FOUND' }
20.11 07:42:07.935 IH: Plugin exit with code 0
20.11 07:42:07.935 IH: restart timer 5
-
@ra2fgomm Не установился модуль mqtt, который устанавливается через npm.
А какие-то другие модули у вас стоят?
Проверьте, в папке C:\ProgramData\intrahouse-c\plugins\mqttclient должна быть папка node_modules/mqtt. Можно попробовать установить с консоли вручную
-
Стоит модуль voiceconrol.
Папки node_modules/mqtt в указанной директории нет :(.
Если можно краткую инструкцию -как установить с консоли и где можно найти её содержимое.
-
@ra2fgomm В командной строке попробуйте запустить
cd C:\ProgramData\intrahouse-c\plugins\mqttclient npm install mqtt
-
Запускал npm install mqtt дважды:
Папка появилась но plugin теперь совсем молчит, никаких ошибок не выдает.
Побывал перезапускать plugin, IH, mqtt broker, результата нет.
MQTT брокер работает, другие клиенты подключаются без проблем.
-
Ух разобрался запустил из командной строки еще и npm install mqtt-client
И вот она удача !!!! Спасибо за помощь. Наилучшими пожеланиями!!!
-
@ra2fgomm Отлично что получилось!
В принципе достаточно запускать просто npm init. npm берет файл package.json в текущей папке и устанавливает все зависимости
Сервер IH пытается сделать то же самое прозрачно для пользователя. По какой-то причине у него не получилось это сделать, возможно, дело в правах доступа.
В папке системы ("%LOCALAPPDATA%/intrahouse-c" для Windows) есть логи в папке log. Можно посмотреть, какие были сообщения при установке плагина, чтобы при установке других плагинов, имеющих зависимости, все прошло более гладко. Но можно ставить и вручную через npm init
-
Да видимо проблема из-за компанейского прокси (играюсь на работе в свободное время) хотя npm прописан для работы через proxy, но видимо не всегда это срабатывает. Пока разбираюсь с логами. Спасибо за помощь !!!!
-
Как можно избавится от повторного отправления в топик, при подстановке значения "value"?
Невозможно нормально диммировать лампочку из икеи.
10.01.2020 19:05:57
{"state": "ON", "brightness": 254}
10.01.2020 19:05:57(-0.01 seconds)
{"state": "ON", "brightness": ${value}}
10.01.2020 19:05:56(-1.2 seconds)
{"state": "ON", "brightness": 198}
10.01.2020 19:05:56(-0.01 seconds)
{"state": "ON", "brightness": ${value}}
-
@trash
Не совсем понятна ситуация. Покажите пожалуйста настройку канала (включая команды) и лог отладчика плагина в процессе диммирования
-
@intrapro
LOG:
10.01 22:28:39.378 IH: command [ { dn: 'DIMM1', prop: 'set', val: '99' } ]
10.01 22:28:39.380 IH: send { type: 'act',
data:
[ { id: 1,
chan: 1,
desc: 'AO',
topic: 'zigbee2mqtt/lampROBOT/set',
value: 252.45,
startscene: '',
nofb: true,
act: 'set',
message: '{"state": "ON", "brightness": ${value}}',
calc_outfn: [Function: anonymous],
command: 'set' } ] }
10.01 22:28:39.390 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": ${value}}' } ]
set { DIMM1: { aval: '{"state": "ON", "brightness": ${value}}', err: 0 } }
10.01 22:28:39.394 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 252.45}' } ]
set { DIMM1: { aval: 99, err: 0 } }
10.01 22:28:39.399 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": ${value}}' } ]
set { DIMM1: { aval: '{"state": "ON", "brightness": ${value}}', err: 0 } }
10.01 22:28:39.455 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 252.45}' } ]
set { DIMM1: { aval: 99, err: 0 } }
10.01 22:28:46.789 IH: command [ { dn: 'DIMM1', prop: 'set', val: '100' } ]
10.01 22:28:46.790 IH: send { type: 'act',
data:
[ { id: 1,
chan: 1,
desc: 'AO',
topic: 'zigbee2mqtt/lampROBOT/set',
value: 254.99999999999997,
startscene: '',
nofb: true,
act: 'set',
message: '{"state": "ON", "brightness": ${value}}',
calc_outfn: [Function: anonymous],
command: 'set' } ] }
10.01 22:28:46.799 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": ${value}}' } ]
set { DIMM1: { aval: '{"state": "ON", "brightness": ${value}}', err: 0 } }
10.01 22:28:46.803 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 254.99999999999997}' } ]
set { DIMM1: { aval: 100, err: 0 } }
10.01 22:28:46.818 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": ${value}}' } ]
set { DIMM1: { aval: '{"state": "ON", "brightness": ${value}}', err: 0 } }
10.01 22:28:46.823 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 254.99999999999997}' } ]
set { DIMM1: { aval: 100, err: 0 } }
10.01 22:28:49.299 IH: command [ { dn: 'DIMM1', prop: 'on', val: '100' } ]
10.01 22:28:49.300 IH: send { type: 'act',
data:
[ { id: 1,
chan: 1,
desc: 'AO',
topic: 'zigbee2mqtt/lampROBOT/set',
value: '100',
startscene: '',
nofb: true,
act: 'on',
message: '{"state": "ON", "brightness": 255}',
command: 'on' } ] }
10.01 22:28:49.307 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 255}' } ]
set { DIMM1: { aval: 100, err: 0 } }
10.01 22:28:49.314 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 255}' } ]
set { DIMM1: { aval: 100, err: 0 } }
10.01 22:28:49.316 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 255}' } ]
set { DIMM1: { aval: 100, err: 0 } }
10.01 22:28:49.320 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "ON", "brightness": 255}' } ]
set { DIMM1: { aval: 100, err: 0 } }
10.01 22:28:50.230 IH: command [ { dn: 'DIMM1', prop: 'off' } ]
10.01 22:28:50.231 IH: send { type: 'act',
data:
[ { id: 1,
chan: 1,
desc: 'AO',
topic: 'zigbee2mqtt/lampROBOT/set',
value: 0,
startscene: '',
nofb: true,
act: 'off',
message: '{"state": "OFF"}',
command: 'off' } ] }
10.01 22:28:50.240 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "OFF"}' } ]
set { DIMM1: { aval: NaN, err: 0 } }
10.01 22:28:50.244 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "OFF"}' } ]
set { DIMM1: { aval: NaN, err: 0 } }
10.01 22:28:50.248 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "OFF"}' } ]
set { DIMM1: { aval: NaN, err: 0 } }
10.01 22:28:50.252 IH: get [ { id: 1,
topic: 'zigbee2mqtt/lampROBOT/set',
value: '{"state": "OFF"}' } ]
set { DIMM1: { aval: NaN, err: 0 } }