Mqtt zigbee устройства
-
Добрый день! Я только установил intrahouse и пытаюсь понять принцип работы.
Есть видео по отправке команд на устройство через топик mqtt (Управление светом).
https://www.youtube.com/watch?v=BMF9l5DV5jA
У меня вопрос по нему. Там описано как отправлять топик при этом для одного устройства создается несколько каналов. Один считывает статус, другой канал отправляет сообщение ON, третий сообщение OFF.
Но в устройстве присутствует другие параметры auto(не нашел что это за параметр и где его взять на устройстве) или toggle (переключатель)
У меня возник вопрос по toggle я правильно понимаю это кнопка? И можно ли чтобы не плодить каналы у устройства реализовать переключение ON и OFF с помощью одного канала toggle и где про это почитать?
-
Добрый день. Toggle это команда, которая в зависимости от состояния включено или выключено вызывает команду ON или OFF, которые в свою очередь если не привязаны к каналу меняют свойство state. Поэтому для управления через MQTT вы можете воспользоваться другим способом - это привязать к каналу состояние не только чтение, но и управление. Все свойства и команды в устройстве могут быть удалены или отредактировано их поведение - это делается в Типе устройства. Если у вас что-то не получилось пишите в телеграм канал https://t.me/intraHouse.
-
Добрый день!
Подскажите как реализовать переключатель в системе intrahouse установленной на wirenboard и подключенному к нему выключателю(switch) по zigbee протоколу7Есть zigbee устройство в каналах mqtt
топик прописывается /devices/2-etag/controls/state_right передавая значения ON или OFF
Когда прописываю по вашей инструкции
Создаем канал MQTT, ставим галочки Чтение и Запись, заполняем:Топик для подписки: /devices/<deviceid>/0
Формула извлечения значения: value == "on" ? 1 : 0
Топик для публикации: /devices/<deviceid>/0/command
Сообщение для публикации: value == 1 ? "on" : "off"То значение меняется но через 20-30 секунд возвращается обратно и физически свет не включается.(только в MQTT)
Прочитал в инструкции производителя https://wirenboard.com/wiki/Zigbee
что управление устройством zigbee осуществляется так
Управление через конвертер wb-zigbee2mqtt пока не реализовано, но вы можете управлять устройствами стандартными инструментами zigbee2mqtt через wb-rules, отправляя команды с помощью функции publish.
Пример включения и отключения реле с friendly_name равным 0x00158d0001f3fc34 в правилах wb-rules:publish("zigbee2mqtt/0x00158d0001f3fc34/set", JSON.stringify({ state: "ON" }), 2, false);
publish("zigbee2mqtt/0x00158d0001f3fc34/set", JSON.stringify({ state: "OFF" }), 2, false);
В скрипте на wirenboard реализовал логику так и она работает
// Ночник
defineRule("1state_right", {
whenChanged: "Button_left/Зал",
then: function (newValue, devName, cellName, a ) {
if (newValue === true) {
publish("zigbee2mqtt/0x00158d0002b571fe/set", JSON.stringify({ state_right: "ON" }), 2, false);
SendTelegramMsg("Зал свет включен");
}
if (newValue === false) {
publish("zigbee2mqtt/0x00158d0002b571fe/set", JSON.stringify({ state_right: "OFF" }), 2, false);
SendTelegramMsg("Зал свет выключен");
}
}
});