Elija su integración
Abra la página Settings del dispositivo (http://<IP-DISPOSITIVO>/settings). Ambas opciones se configuran desde ahí. Elija una — son independientes y pueden activarse/desactivarse por separado.
Descubrimiento automático MQTT
Ya utiliza un broker Mosquitto/MQTT en Home Assistant. El Pylon-Monitor publica sus propias configuraciones de descubrimiento y Home Assistant crea los sensores automáticamente. Sin YAML.
Configurar la opción 1 ↓Sondeo por API REST
No se necesita broker. Home Assistant consulta directamente el endpoint JSON integrado /api.json. Pegue el YAML una vez — la página Settings del dispositivo lo genera por usted, con su IP ya rellenada.
<IP-DISPOSITIVO> como marcador de posición — sustitúyalo por la IP mostrada en la pantalla TFT. Para una integración estable, configure una reserva DHCP en su router (recomendado) o rellene la sección IP estática en la página Settings del dispositivo. Opción 1 — Descubrimiento automático MQTT
Recomendado si ya usa el complemento Mosquitto / MQTT broker en Home Assistant. Una vez configurada la conexión al broker, el dispositivo publica configuraciones de descubrimiento de Home Assistant en los topics estándar homeassistant/sensor/…, y los sensores aparecen en Ajustes → Dispositivos y servicios → MQTT en pocos segundos — agrupados bajo un único dispositivo llamado Pylon-Monitor.
Lo que rellena en el dispositivo
En la página Settings del dispositivo, abra la tarjeta MQTT Home Assistant y rellene estos cuatro campos exactamente como el firmware los espera:
Guarde. La fila MQTT del panel del Pylon-Monitor se pone azul (Connected) en ~5 segundos, y los diez sensores siguientes se publican automáticamente — sin configuración manual de entidades. Para desactivar MQTT, simplemente vacíe los cuatro campos y guarde.
Topics que publica el firmware
El nombre de host del dispositivo (por defecto pylon-monitor) se usa como prefijo del topic e id de descubrimiento. Sustitúyalo abajo por el nombre de host que haya elegido. Los diez sensores se agrupan bajo una única tarjeta de dispositivo de Home Assistant llamada Pylon-Monitor.
| Sensor | Discovery config topic | Unit / class |
|---|---|---|
| Battery SOC | homeassistant/sensor/pylon-monitor/soc/config | % · battery |
| Battery SOH | homeassistant/sensor/pylon-monitor/soh/config | % · mdi:battery-heart-variant |
| Battery voltage | homeassistant/sensor/pylon-monitor/voltage/config | V · voltage |
| Battery current | homeassistant/sensor/pylon-monitor/current/config | A · current |
| Battery power | homeassistant/sensor/pylon-monitor/power/config | W · power |
| Battery temp | homeassistant/sensor/pylon-monitor/temp/config | °C · temperature |
| MOSFET temp | homeassistant/sensor/pylon-monitor/mostemp/config | °C · temperature |
| Charge cycles | homeassistant/sensor/pylon-monitor/cycles/config | mdi:counter |
| Battery state | homeassistant/sensor/pylon-monitor/state/config | mdi:battery-sync |
| Cell imbalance | homeassistant/sensor/pylon-monitor/celldelta/config | mV · mdi:scale-balance |
Los diez sensores comparten un único topic de estado del que obtienen sus valores:
pylon-monitor/state
La carga útil, actualizada aproximadamente cada 40 segundos (un ciclo completo de sondeo de la batería), tiene este aspecto:
{
"soc": 94,
"soh": 96,
"voltage": 48.62,
"current": -7.20,
"power": -350.1,
"temp": 23.4,
"mostemp": 28.1,
"cycles": 486,
"celldelta": 12,
"state": "Discharging"
}
El dispositivo también publica un topic de disponibilidad (en línea/fuera de línea) con un Last-Will-and-Testament, para que cada sensor se atenúe correctamente en Home Assistant si el dispositivo pierde alimentación o WiFi, en lugar de quedarse congelado silenciosamente en su último valor:
pylon-monitor/status → "online" (retained) or "offline" (LWT, retained)
Opción 2 — Sondeo por API REST
No se necesita broker MQTT. La plataforma rest integrada de Home Assistant consulta el dispositivo cada 30 segundos y crea 6 sensores. El bloque YAML siguiente es exactamente el que el propio firmware genera en la página Settings (con su IP actual ya rellenada) — cópielo desde ahí sin escribir nada, o use la versión de abajo.
El JSON que devuelve el dispositivo
GET http://<DEVICE-IP>/api.json
{
"system": "pylon-monitor",
"firmware": "2.0",
"summary": {
"soc": 94,
"voltage": 48.62,
"current": -7.20,
"power": -350.10,
"state": "Discharging"
},
"health": {
"soh": 96,
"cycles": 486
}
}
Esto está recortado para mayor legibilidad — la respuesta real también incluye los objetos temps, cells, net y alarms. Tenga en cuenta que SOH está bajo health, no bajo summary — un error de copiar y pegar habitual.
Pegue esto en configuration.yaml
rest:
- resource: http://<DEVICE-IP>/api.json
scan_interval: 30
sensor:
- name: "Pylontech SOC"
unique_id: pylontech_soc
value_template: "{{ value_json.summary.soc }}"
unit_of_measurement: "%"
device_class: battery
state_class: measurement
- name: "Pylontech SOH"
unique_id: pylontech_soh
value_template: "{{ value_json.health.soh }}"
unit_of_measurement: "%"
state_class: measurement
- name: "Pylontech Voltage"
unique_id: pylontech_voltage
value_template: "{{ value_json.summary.voltage }}"
unit_of_measurement: "V"
device_class: voltage
state_class: measurement
- name: "Pylontech Current"
unique_id: pylontech_current
value_template: "{{ value_json.summary.current }}"
unit_of_measurement: "A"
device_class: current
state_class: measurement
- name: "Pylontech Power"
unique_id: pylontech_power
value_template: "{{ value_json.summary.power }}"
unit_of_measurement: "W"
device_class: power
state_class: measurement
- name: "Pylontech State"
unique_id: pylontech_state
value_template: "{{ value_json.summary.state }}"
Reinicie Home Assistant. Los 6 sensores aparecen en Ajustes → Dispositivos y servicios → Entidades, localizables mediante pylontech.
Node-RED
Use un nodo http request, método GET, URL http://<IP-DISPOSITIVO>/api.json, retorno a parsed JSON object. Luego lea msg.payload.summary.soc (o cualquier otro campo) más adelante en el flujo. Si MQTT está configurado en el dispositivo, también puede suscribirse directamente a pylon-monitor/state con un nodo MQTT-in — sin necesidad de sondeo.
Jeedom
Instale el plugin JSON, apunte un equipo a http://<IP-DISPOSITIVO>/api.json, y luego asocie rutas JSON a comandos (p. ej. summary>soc, summary>voltage, summary>state).