Здравствуйте! Имеется z-wave диммер Fibaro Dimmer 2 (FGD-212 Ru v3.5). Настраивал в точности с руководством на сайте. По итогу диммер видится и управляется через z-wave сервер, но в каналах MQTT он не появился. В чём может быть проблема и как это исправить?
Отлично.
Нам понадобится MQTT Explorer — это чтобы посмотреть, что происходит за «кулисами» веб-интерфейса.
Итак:
- Давайте убедимся, что у вас последняя версия z-way-server, для этого пришлите вывод команды
apt policy z-way-server
. - Подключитесь к MQTT-брокеру контроллера с помощью MQTT Explorer. После подключения найдите в дереве топиков устройство
/devices/z-way
и пришлите скриншот содержимого топика controls, у меня это выглядит так:
Теперь перейдите в веб-интерфейс Z-Way и далее:
- Откройте вкладку Elements, найдите среди устройств ваш диммер и нажмите на шестерёнку в углу:
- Прокрутите открывшуюся страницу настроек вниз и разверните аккордеон API commands for developers
- Найдите в тексте deviceType и пришлите его значение:
Этой информации должно хватить, чтобы понять, что происходит и куда двигаться.
-
z-way-server:
Installed: 3.2.2-93-g8c133c1
Candidate: 3.2.2-93-g8c133c1
Version table:
*** 3.2.2-93-g8c133c1 990
990 http://deb.wirenboard.com/wb6/stretch testing/main armhf Packages
100 /var/lib/dpkg/status
“deviceType”: “switchMultilevel”,
Неожиданно, что в значении value.
Если сейчас изменить в веб-интерфейсе Z-Way настройки диммера, например, выставить на 50%, то значение value сменится на 50?
Хочу ещё отметить что коллега мне порекомендовал создать js правило с содержимым:
runShellCommand(“mosquitto_pub --retain -t “/devices/z-way/controls/Fibaro Dimmer (5.1) 5-1-38/meta/type” -m value”)
После перезагрузки контроллера, появился mqtt топик
Но значение с нулевого не меняется вообще
Ну это он попытался исправить следствие, а не причину, что нам немного смазало картину теперь. Давайте вернёмся в начало:
- Удалите в MQTT Explorer топик /devices/z-way/controls/Fibaro Dimmer (5.1) 5-1-38
- Перезапустите интеграцию Wiren Board MQTT Integration
- Снова пришлите скриншот топика устройства в /devices/z-way
Заодно приложите текстовым файлом всю информацию, которая доступна в настройках устройства в разделе API commands for developers.
И удалите правило, пожалуйста, чтобы оно нам не мешало.
Получилось
В Fibaro Dimmer (6.1) 6-1-38 отображается текущее диммирование
Отлично, теперь устройство должно появиться в веб-интерфейсе контроллера. Проверьте, пожалуйста.
Ошибся, я посмотрел на Fibaro Dimmer (5.1)
Да. Оно под другим номером
Оно, кстати, тоже неверно определилось, должен быть ползунок.
Приложите, пожалуйста, файлик.
Ползунка нет
Файл:
Fibaro dimmer 2 API.txt (1.2 КБ)
Совершенно непонятно, почему интеграция не создаёт нормальные топики. Для димера она должна была создать такую конструкцию:
Смотрим дальше.
Здесь есть топики димеров Fibaro Dimmer (5.1), Fibaro Dimmer (6.2) — это вы сами создали, или они создались автоматически?
Когда вы говорили, что перезапустили интеграцию, то что вы имели ввиду? Я подразумевал действия по этой инструкции. На всякий случай скажу, что перезапуск z-way-server интеграцию не перезапускает.
Топик 6.2 создался автоматически
Интеграцию перезапускал через кнопку play/pause
Вот это и странно, при создании топика должно было создаться описание meta.
Хорошо, спасибо.
Теперь давайте вернёмся к рекомендации вашего коллеги, но с новыми знаниями, создайте и сохраните правило со строками:
runShellCommand('mosquitto_pub --retain -t "/devices/z-way/controls/Fibaro Dimmer (6.1) 6-1-38/meta/type" -m range');
runShellCommand('mosquitto_pub --retain -t "/devices/z-way/controls/Fibaro Dimmer (6.1) 6-1-38/meta/z-wave_type" -m switchMultilevel');
runShellCommand('mosquitto_pub --retain -t "/devices/z-way/controls/Fibaro Dimmer (6.1) 6-1-38/meta/max" -m 99')
После этого в веб-интерфейсе должен появиться ползунок. Потом подвигайте ползунок и посмотрите, изменится ли значение в веб-интерфейсе Z-Way.
Так мы выясним, интеграция просто не создаёт верное описание топика или проблема ещё глубже.
Можно ещё на всякий случай перезапустить интеграцию.
Создал
Ползунок двигается и диммирует. Как убрать топик 5.1?
То есть теперь диммер работает?
Просто удалите топик в MQTT Explorer.
Ну получается диммер работает! Но вот вопрос - почему автоматически диммер не добавился, а только после прописывания дополнительных правил?
Отлично.
Это какой-то баг в интеграции, но пока не понятно, где именно. Интеграцию когда-то давно писали мы, будем искать такой диммер и выяснять причину.
Как временное решение, могу пока только рекомендовать создавать описание топиков для диммеров через правила.
Спасибо вам большое за диагностику, будем разбираться и исправлять.