Cómo llevar sensores de temperatura Zigbee a Hermetry a través de una Pi como dispositivos separados
Traducido del English por IA ·
Desarrollador backend, aficionado al hardware en el mejor de los casos. Coloqué ocho pequeños sensores Zigbee de temperatura/humedad Xiaomi alrededor de la sala de servidores de nuestra oficina y de la sala de baterías. Se emparejan con un dongle USB Sonoff Zigbee 3.0 (CC2652P) conectado a una Raspberry Pi 4 que ejecuta zigbee2mqtt, el cual publica en un mosquitto local. Esa parte funciona, puedo ver zigbee2mqtt/rack_a_top etc.Después intenté llevarlos a Hermetry con un puente de mosquitto, reenviando zigbee2mqtt/# al broker con un único token de dispositivo. Dos problemas. De forma predeterminada no llegaba nada y el registro del dispositivo acumulaba un montón de temas rechazados hasta que se cerró la sesión. Luego cambié el perfil a Temas personalizados y funcionó, pero los ocho sensores acaban en UN solo dispositivo con claves como zigbee2mqtt.rack_a_top.temperature, lo que hace un desastre de las alarmas y del panel.Quiero ocho dispositivos. ¿Necesito ocho tokens y ocho puentes? Eso me parece incorrecto.
Backend dev, hardware hobbyist at best. I put eight little Xiaomi Zigbee temp/humidity sensors around our office server room and the battery room. They pair to a Sonoff Zigbee 3.0 USB dongle (CC2652P) on a Raspberry Pi 4 running zigbee2mqtt, which publishes to a local mosquitto. That part works, I can see zigbee2mqtt/rack_a_top etc.
Then I tried to get them into Hermetry with a mosquitto bridge, forwarding zigbee2mqtt/# out to the broker with one device token. Two problems. Out of the box nothing arrived and the device log had a pile of rejected topics until the session was closed. Then I switched the profile to Custom topics and it worked, but all eight sensors land on ONE device as keys like zigbee2mqtt.rack_a_top.temperature, which makes alarms and the dashboard a mess.
I want eight devices. Do I need eight tokens and eight bridges? That feels wrong.
Traducido del English por IA ·
No, no necesita ocho tokens ni ocho bridges. El modelo de Hermetry para esta configuración es Detrás de una pasarela. Las fuentes citan "sensores detrás de su propio ordenador edge" como caso típico, y su Pi con zigbee2mqtt encaja exactamente en ese caso.
Cómo funciona
- El Pi inicia sesión en Hermetry como un dispositivo pasarela, con su propia credencial única (un token de acceso sirve).
- Publica los datos de sus dispositivos hijos en los topics
v1/gw/*. Los topics personalizados en un dispositivo normal no hacen esto. - Hermetry crea cada dispositivo hijo la primera vez que la pasarela informa datos de él. Obtiene
rack_a_topy los demás como ocho dispositivos separados, sin tener que añadir cada uno a mano. - Cada hijo es un dispositivo normal: con su propio perfil, telemetría, atributos, alarmas y paneles. También puede asignar cada uno a su sala (sala de servidores o sala de baterías), de modo que el estado y el recuento de alarmas se agrupen por sala.
- Los dispositivos hijos no tienen credencial propia. La pasarela transmite sus datos.
Qué cambiar
- Haga que el dispositivo con el que se conecta el Pi sea una pasarela. Un registro de dispositivo tiene una propiedad "si es una pasarela", y la lista de dispositivos muestra una insignia Gateway y un filtro. Las fuentes aquí no indican dónde configurarlo.
- Haga que lo que publica el Pi siga los topics
v1/gw/*y el formato de carga. Un reenvío simple dezigbee2mqtt/#conserva los nombres de topic propios de zigbee2mqtt. Puede que necesite un pequeño paso de traducción en el Pi en lugar de un simple renombrado con bridge. Si un bridge basta por sí solo depende del formato de carga, que no aparece en el material que tengo. - Cambie el perfil desde Topics personalizados, para usar los topics de la pasarela en lugar de aplanar todo en claves como
zigbee2mqtt.rack_a_top.temperature.
Tenga en cuenta
- Límite de dispositivos: tanto la pasarela como cada hijo cuentan para el límite de dispositivos de su plan, así que aquí son 9 en total.
- Estado en línea: para los hijos de una pasarela, procede de los mensajes de conexión y desconexión de la pasarela.
Los nombres exactos de los topics v1/gw/*, el formato de carga y la forma en que los hijos obtienen sus perfiles están en la página de documentación Dispositivos detrás de una pasarela. Las fuentes que tengo solo la nombran y no dan esos detalles, así que revise esa página antes de escribir la traducción.
Fuentes
No, you don't need eight tokens and eight bridges. Hermetry's model for this setup is Behind a gateway. The sources list "sensors behind your own edge computer" as a typical case, and your Pi with zigbee2mqtt is exactly that.
How it works
- The Pi logs in to Hermetry as one gateway device, with its own single credential (an access token is fine).
- It reports data for its child devices on the **
v1/gw/*topics**. Custom topics on a normal device won't do this. - Hermetry creates each child device the first time the gateway reports for it. You get
rack_a_topand the others as eight separate devices, without adding each by hand. - Each child is an ordinary device: its own profile, telemetry, attributes, alarms and dashboards. You can also place each one on its room (server room or battery room), so status and alarm counts roll up per room.
- Child devices have no credential of their own. The gateway brings their data.
What to change
- Make the device the Pi connects as a gateway. A device record has a "whether it is a gateway" property, and the Devices list shows a Gateway badge and filter. The sources here don't say where to set it.
- Make what you publish from the Pi follow the
v1/gw/*topics and payload format. A plainzigbee2mqtt/#forward keeps zigbee2mqtt's own topic names. You may need a small translation step on the Pi rather than a pure bridge rename. Whether a bridge alone is enough depends on the payload format, which isn't shown in the material I have. - Switch the profile back from Custom topics, so the gateway topics are used instead of flattening everything into keys like
zigbee2mqtt.rack_a_top.temperature.
Keep in mind
- Device limit: both the gateway and each child count toward your plan's device limit, so 9 in total here.
- Online status: for gateway children it comes from the gateway's connect and disconnect messages.
The exact v1/gw/* topic names, the payload format and how children get their profiles are on the Devices behind a gateway docs page. The sources I have only name it and don't give those details, so check that page before writing the translation.
Sources
Escrito por IA a partir de la documentación y de los temas resueltos. Si resolvió tu problema, márcalo como solución; si no, el equipo hará un seguimiento.
- Debes estar registrado para responder a este debate.
Únete a la conversación
Inicia sesión para preguntar y responder, dar me gusta a las publicaciones útiles y marcar la respuesta que resolvió tu problema. Cada aportación suma puntos y niveles.

