Z2M Discovery Translator - translate Zigbee2MQTT entity names before Home Assistant imports them

Hi,

I built a small Home Assistant add-on: Z2M Discovery Translator.

Problem:
Zigbee2MQTT exposes some device-specific entities through MQTT Discovery with English names, e.g. “Smart temperature control”, “Child lock”, “Valve opening degree”. Home Assistant can translate generic device classes, but not these Z2M-specific labels.

Solution:
The add-on acts as a lightweight MQTT Discovery proxy:
Zigbee2MQTT → z2m_discovery → Z2M Discovery Translator → homeassistant → Home Assistant

Known names are translated using JSON translation files. Unknown names are forwarded unchanged.

Main use case:
French Home Assistant setups using Zigbee2MQTT, but the project is designed to support other languages through translation files.

GitHub:

Feedback and translation contributions are welcome.

1 Like