# \[ANNOUNCE\] node-red-contrib-homie-home-assistant-discovery - Homie MQTT devices to Home Assistant discovery

**URL:** <https://discourse.nodered.org/t/announce-node-red-contrib-homie-home-assistant-discovery-homie-mqtt-devices-to-home-assistant-discovery/100904>\
**Category:** Share Your Nodes\
**Tags:** home-assistant, mqtt, mqtt-in\
**Created:** [4 May 2026 19:25 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-homie-home-assistant-discovery-homie-mqtt-devices-to-home-assistant-discovery/100904 "2026-05-04T19:25:36Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![labodj](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/labodj/32/106682_2.png) [@labodj](https://discourse.nodered.org/u/labodj)\
**Post date:** [4 May 2026 19:25 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-homie-home-assistant-discovery-homie-mqtt-devices-to-home-assistant-discovery/100904/1 "2026-05-04T19:25:36Z")

</div>

Hi all,  
I wanted to share a new Node-RED node I extracted while cleaning up the Home Assistant  
discovery side of my Labo Smart Home work.  
The important part is that this node is not LSH-specific. It is a generic Homie MQTT -\>  
Home Assistant MQTT discovery mapper:

> **[node-red-contrib-homie-home-assistant-discovery](https://flows.nodered.org/node/node-red-contrib-homie-home-assistant-discovery)**
>
> Node-RED node that publishes Home Assistant MQTT discovery from Homie MQTT metadata.

It is meant to sit in a normal Node-RED MQTT flow:

- `mqtt in` receives Homie metadata from the broker
- `homie-ha-discovery` parses the Homie device model
- `mqtt out` publishes retained Home Assistant discovery messages
- optional dynamic subscription output can be wired back to the same `mqtt in` node

It does not open its own MQTT connection. Node-RED's MQTT nodes still own the broker,  
credentials, TLS, reconnect behavior and deployment-specific settings. The discovery  
node only focuses on Homie parsing, Home Assistant mapping, diagnostics and editor  
configuration.

It can be installed from the Node-RED Palette Manager as  
`node-red-contrib-homie-home-assistant-discovery`.

The shared core package is here:

> **[GitHub - labodj/homie-home-assistant-discovery: Convert Homie MQTT devices (v3, v4 and v5) into...](https://github.com/labodj/homie-home-assistant-discovery)**
>
> Convert Homie MQTT devices (v3, v4 and v5) into Home Assistant MQTT discovery with robust entity mapping, granular overrides, CLI and Node.js APIs.

It supports:

- Homie v3.0.1 retained topic metadata
- Homie v4 retained topic metadata
- Homie v5 `$description` documents
- conservative Home Assistant entity mapping
- optional overrides when Homie metadata is not specific enough

The default mapping is intentionally careful. It will map obvious commandable booleans to `light`, `fan` or `switch`, read-only booleans to `binary_sensor`, numbers to `sensor` or `number`, enums to `select`, and so on. It will not invent complex Home Assistant domains such as `cover`, `climate` or `lock` from generic Homie metadata alone.

The reason I split this out is that Home Assistant discovery had originally grown inside my LSH Node-RED logic. That made sense for my own installation, but it was the wrong boundary for reuse. Homie-to-Home-Assistant discovery is useful on its own, even for people who do not care about LSH at all.

I would especially appreciate feedback from people who already run Homie devices and currently maintain Home Assistant MQTT discovery by hand.

The areas where external feedback would help most are:

- whether the default entity mapping feels conservative enough
- whether the override model is understandable from the editor
- whether the dynamic subscription pattern feels natural in real Node-RED flows
- whether any Homie v3/v4/v5 metadata edge cases are missing

---

<div class="post-metadata">

**Author:** ![labodj](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/labodj/32/106682_2.png) [@labodj](https://discourse.nodered.org/u/labodj)\
**Post date:** [4 May 2026 19:26 UTC](https://discourse.nodered.org/t/announce-node-red-contrib-homie-home-assistant-discovery-homie-mqtt-devices-to-home-assistant-discovery/100904/2 "2026-05-04T19:26:11Z")

</div>

For context, the package is listed on the Homie implementations page as well:

> **[The Homie convention](https://homieiot.github.io/implementations/)**

The Node-RED package is just the visual wrapper around the same Homie parsing and Home  
Assistant mapping logic provided by the shared core package.
