Интересно. Вы пошли по пути через HACS, вижу также через MQTT собираете информацию об устройствах и каналах управления. Поставил посмотреть, пока еще не учитываете тип сенсора и нет возможности добавить только нужный канал от устройства, мне кажется со стороны HA меньше гибкости на самом деле, правда более детально с этой стороны не изучал.
Ну и в таком виде лампой пользоваться точно не получится:
Должно быть так:
Очень рекомендую посмотреть со стороны MQTT Discovery (например light.mqtt), идеально чтобы wb-mqtt-serial правильно готовил топики с учетом интеграции с HA, например чтобы учитывать доступность устройства, пришлось городить такую конструкцию:
availability:
- topic: /devices/wb-led_2/controls/RGB Strip
value_template: '{{ False if value == '''' else True }}'
payload_not_available: false
payload_available: true
- topic: /devices/wb-led_2/controls/RGB Strip/meta
value_template: '{{ False if value == '''' else True }}'
payload_not_available: false
payload_available: true
- topic: /devices/wb-led_2/controls/RGB Strip/meta/error
value_template: '{{ True if value == '''' else False }}'
payload_not_available: false
payload_available: true
Зачем так много: когда устройство становится доступным, WB просто удаляет топик /error, как это отследить со стороны HA я не нашел, поэтому приходится еще “следить” за топиками канала и meta.
А вот если бы WB учитывал особенности HA и имел топик availability c содержимым online/offline , то тогда конфигурация стала намного проще, например (я как-то спрашивал про это, был не понят и поэтому пришлось городить конструкцию выше):
availability:
- topic: /devices/wb-led_2/controls/RGB Strip/meta/availability
Почему MQTT Discovery, да банально в мире Zigbee очень много разновидностей устройств и zigbee2mqtt умеет их все передавать через MQTT Discovery, с этой стороны уже все придумали. Уже все готовое есть, как работать с термостатами шторами и прочим, надо только иметь топики в формате который MQTT Discovery понимает нативно, иначе придется делать посредника на wb-rules (для штор например HA передает команду текстом open/close, а со стороны WB ждут нажатие на switch)