Pylontech in Home Assistant, MQTT, JSON und Jeedom
Die Cloud ist für unterwegs. Zu Hause gibt PylonCheck seine Daten direkt über Ihr Netzwerk an Ihr System — ohne Cloud, ohne Konto, auch wenn das Internet ausfällt.
MQTT-Auto-Discovery: null YAML
Tragen Sie auf der Seite Einstellungen der Box die Adresse Ihres Brokers ein (und ggf. Benutzer / Passwort). Sekunden später legt Home Assistant ein Gerät PylonCheck mit seinen Sensoren an:
- Ladezustand, State of Health, Zyklenzahl
- Spannung, Strom, Leistung
- Batterie- und BMS-/MOSFET-Temperatur
- Ladestatus, Anzahl Batterien, Zellungleichgewicht (mV)
- Ein Online-/Offline-Verfügbarkeitssignal
rest-Integration.Topics
Alle Topics sind retained, ein später startender Abonnent erhält sofort die letzten Werte. Das Präfix ist der Hostname der Box (Standard 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)Jede state-Nachricht ist ein JSON-Objekt mit denselben Feldern wie die API unten — dieselbe Vorlage funktioniert überall.
Ein GET, die ganze Batterie
GET http://pylon-check.local/api.json (oder die IP der Box) liefert den vollständigen Zustand. Gekürztes Beispiel:
{
"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" }
]
}Ein optionaler Zugriffsschlüssel lässt sich in den Einstellungen setzen; die API wird dann mit ?key=… gelesen. Die Werte werden alle paar Sekunden aktualisiert.
REST-Beispiel für 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
Plugin jMQTT installieren, auf den Broker zeigen und pylon-check/# abonnieren: Stack und jede Batterie erscheinen als Geräte. Oder das Script-Plugin mit der JSON-API nutzen.
Node-RED
Ein mqtt in-Knoten auf pylon-check/state oder ein http request-Knoten auf /api.json alle 30 Sekunden.
openHAB, Domoticz, ioBroker
Jedes System, das MQTT spricht oder JSON per HTTP liest, kann PylonCheck nutzen. Nichts Proprietäres.
Fragen
Braucht Home Assistant die PylonCheck-Cloud?
Nein. Home Assistant liest die Box direkt im Netzwerk. Cloud und Home Assistant können gleichzeitig laufen.
Muss ich YAML schreiben?
Nein, mit MQTT-Auto-Discovery erscheinen die Sensoren von selbst. YAML brauchen Sie nur für die REST-Integration.
Ersetzt das die Wechselrichter-Integration?
Es ergänzt sie: Der Wechselrichter liefert die Leistungsflüsse, PylonCheck das, was die Batterie selbst weiß — SOH, Zellen, Temperaturen, Detail je Batterie.
Bekomme ich jede Batterie als eigene Sensoren?
Ja. Jede Batterie hat ein eigenes MQTT-Topic, und die JSON-API listet sie einzeln auf.
Ihre Batterie, von überall. Für 39 €.
Cloud-Dashboard, Verlauf, Warnungen, Home Assistant und MQTT inklusive. Kein Abo.