Pylontech dans Home Assistant, MQTT, JSON et Jeedom
Le cloud, c’est pour quand vous êtes loin. À la maison, PylonCheck transmet ses données directement à votre système sur votre réseau — sans cloud, sans compte, et même si Internet est coupé.
Auto-découverte MQTT : zéro YAML
Saisissez l’adresse de votre broker (et l’identifiant / mot de passe s’il y en a) dans la page Réglages du boîtier. En quelques secondes, Home Assistant crée un appareil PylonCheck avec ses capteurs :
- État de charge, état de santé, nombre de cycles
- Tension, courant, puissance
- Température batterie et BMS / MOSFET
- État de charge/décharge, nombre de batteries, déséquilibre des cellules (mV)
- Un signal de disponibilité en ligne / hors ligne
rest de Home Assistant.Les topics
Tous les topics sont retenus : un abonné qui démarre plus tard reçoit tout de suite les dernières valeurs. Le préfixe est le nom d’hôte du boîtier (par défaut pylon-check).
pylon-check/status online | offline (retained, last will)
pylon-check/state whole stack: soc, voltage, current, power, state…
pylon-check/battery1/state battery 1 of the stack
pylon-check/battery2/state battery 2 …
homeassistant/sensor/pylon-check/…/config auto-discovery (retained)Chaque message state est un objet JSON avec les mêmes champs que l’API ci-dessous : le même modèle marche partout.
Un GET, toute la batterie
GET http://pylon-check.local/api.json (ou l’IP du boîtier) renvoie l’état complet. Exemple abrégé :
{
"system": { "firmware": "1.0.1", "uptime": 86400 },
"battery_link": true,
"summary": { "soc": 87, "voltage": 52.41, "current": 23.5,
"power": 1231.6, "state": "Charging", "units": 3 },
"health": { "soh": 98, "cycles": 412 },
"temps": { "battery": 24.0, "mosfet": 26.5, "low": 23.0, "high": 25.1 },
"cells": { "count": 15, "min": 3271, "max": 3280, "delta": 9,
"mv": [3274, 3276, 3271, "…"] },
"unitsDetail": [
{ "label": "Battery 1", "voltage": 52.41, "current": 7.9,
"soc": 87, "soh": 98, "cycles": 412, "state": "Charging" }
]
}Une clé d’accès facultative peut être définie dans les Réglages ; l’API se lit alors avec ?key=…. Les valeurs sont rafraîchies toutes les quelques secondes.
Exemple REST pour Home Assistant
# configuration.yaml — only needed if you prefer REST to MQTT
rest:
- resource: http://pylon-check.local/api.json
scan_interval: 30
sensor:
- name: "Pylontech SOC"
value_template: "{{ value_json.summary.soc }}"
unit_of_measurement: "%"
device_class: battery
- name: "Pylontech power"
value_template: "{{ value_json.summary.power }}"
unit_of_measurement: "W"
device_class: power
- name: "Pylontech cell spread"
value_template: "{{ value_json.cells.delta }}"
unit_of_measurement: "mV"Jeedom, Node-RED, openHAB, Domoticz
Jeedom
Installez le plugin jMQTT, pointez-le sur votre broker et abonnez-vous à pylon-check/# : la pile et chaque batterie apparaissent comme équipements. Ou utilisez le plugin Script sur l’API JSON.
Node-RED
Un nœud mqtt in sur pylon-check/state, ou un nœud http request sur /api.json toutes les 30 secondes.
openHAB, Domoticz, ioBroker
Tout système qui parle MQTT ou lit du JSON en HTTP peut utiliser PylonCheck. Rien de propriétaire.
Questions
Home Assistant a-t-il besoin du cloud PylonCheck ?
Non. Home Assistant lit le boîtier directement sur votre réseau. Cloud et Home Assistant peuvent fonctionner en même temps.
Faut-il écrire du YAML ?
Non, avec l’auto-découverte MQTT les capteurs apparaissent tout seuls. Le YAML n’est utile que si vous choisissez l’intégration REST.
Cela remplace-t-il l’intégration de l’onduleur dans Home Assistant ?
Cela la complète : l’onduleur donne les flux de puissance, PylonCheck ce que sait la batterie elle-même — SOH, cellules, températures, détail par batterie.
Puis-je avoir chaque batterie de la pile en capteurs séparés ?
Oui. Chaque batterie a son propre topic MQTT, et l’API JSON les liste une par une.
Votre batterie, de partout. Pour 39 €.
Tableau de bord cloud, historique, alertes, Home Assistant et MQTT inclus. Sans abonnement.