Не отображается часть параметров устройства zigbee

Добрый день!
Имеется Wiren Board 6.6.0, release wb-2204 и датчик влажности почвы Сенсор влажности почвы Zigbee. Версия №3 - Всё чем хочется поделиться...Всё чем хочется поделиться…
Добавил устройство через WebUI WB и получил следующие параметры:
image
Но тут не видно параметров “soil_moisture” и “voltage”.
В логе zigbee2mqtt видно:

MQTT publish: topic 'zigbee2mqtt/sFlowerHum02', payload '{"battery":100,"illuminance":2914,"illuminance_lux":2,"last_seen":"2022-11-03T20:29:56+03:00","linkquality":0,"pressure":null,"soil_moisture":3,"voltage":3300}'

В MQTT Explorer топик выглядит так

{
  "battery": 100,
  "illuminance": 661,
  "illuminance_lux": 1,
  "last_seen": "2022-11-03T21:30:17+03:00",
  "linkquality": 7,
  "pressure": null,
  "soil_moisture": 100,
  "voltage": 3300
}

(параметры смотрел в разных источниках в разное время по этому конкретные значения могут различаться)

Такое ощущение, что конвертер wb его не переваривает?

Итак, сделал сденд.
публикую в существующее у меня устройство так:

mosquitto_pub -t zigbee2mqtt/0x00124b002454cd17 -m '{"battery":33,"illuminance":1414,"illuminance_lux":2,"last_seen":"2022-11-04T15:29:56+03:00","linkquality":0,"pressure":null,"soil_moisture":3,"voltage":2900}'

Навскидку, проблема возникает с

"pressure":null


Для быстрого исправления предлагаю сейчас просто поменять в конверторе wb-zigbee2mqtt.js строчку

dev[ctrlName][k] = v;

на

if (v!=null){dev[ctrlName][k] = v;}

Это позволит при получении значения null - не публиковать его.
Таким образом работает:
Screenshot_20221104_163310

1 лайк

Урра, помогло!
Большое спасибо!
Планируете внести исправление в будущий релиз?

Остался один декоративный вопрос…
У меня значение влажности почему-то отображается в том месте где указаны единицы измерения. Это не страшно т.к. в канале mqtt все в порядке, но не дает покоя внутреннему перфекционисту:)
image

В начале файла wb-zigbee2mqtt.js есть маппинг типов, добавьте туде soil_moisture и укажите для него тип value. Сейчас он представлен текстом, а будет числом.

1 лайк

Спасибо, помогло!

Обсужу с профессиональными разработчиками - и добавим, возможно более красивое решение сделаем.

Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.