Zendure MQTT und packData extrahieren

Ich bin leider noch sehr sehr frisch in Sachen Homeassistant, Templates MQTT etc.

Ich habe via Integration in HA den MQTT eingerichtet für einen Zendure BKW Speichersystem und bekomme div. Sensoren ausgegegeben.
Ein Sensor nennt sich “sensor.packData” und liefert aber nicht einen Wert aus sondern hat Informationspakete immer mit Zuordnung zu den Batterien.
2x Batterien liefern über diesen Sensor MaxVol, MinVol und MaxTemp in der Form: [{‘maxTemp’:280.1,‘sn’:‘seriennummerBatterie’})

Dies soll man via:

- name: "Batterie <Nr> maxTemp"
      unique_id: "<deviceID>Batterie<Nr>maxTemp"
      state_topic: "<appKey>/<deviceID>/state"
      value_template: >
        {% if (value_json.packData | is_defined) %}
          {% for i in value_json.packData %}
            {% if i.sn == "<EureBatterieSeriennummer>" %}
              {{ (i.maxTemp | float - 273.15) | round(2) }}
            {% endif %}
          {% endfor %}
        {% endif %}
      unit_of_measurement: "°C"
      device_class: "temperature"
      device: 
        name: "SolarFlow"
        identifiers: "<EurePVHubSeriennummer>"
        manufacturer: "Zendure"
        model: "SmartPV Hub 1200 Controller"

auslesen können. Leider bekomme ich dann aber den Fehler ‘value_json’ is undefined und ich hängt fest.

Hab auch einen anderen Template Weg zum Extrahieren versucht, aber da kommt der selbe Fehler.

Liegt das daran, dass ich ggf. den MQTT in der HA Standard integration nutze und dann irgend was fehlt oder nicht doppelt genutzt werden kann? Ich stehe leider völlig auf dem Schlauch.
Hab probiert via diesem Link mir behelfen:

Leider kommt selbige Fehler in Entwickler Umgebung heraus.

Wann und wo kommt der Fehler?
In der Entwicklerumgebung wird das auch nicht funktionieren, da value_json dort gar nicht bekannt ist.

Was nutzt du für eine MQTT-Konfiguration? Wie hast du deine anderen Werte abgerufen? Auch per YAML?

1 „Gefällt mir“

Vielen Dank für die Antwort.

Inzwischen bin ich hier weiter.
Die extraction hat funktioniert und ich habe generell alle Sensoren manuell in einer yaml angelegt.

Hier habe ich im MQTT Explorer auch noch weitere für den hyper gefunden. zB.:
HyperTmp
Heatstate

Und diese erfolgreich eingebunden in HA.
Nur die switches lassen sich aktuell nicht einbinden, hier bekomme ich immer einen Fehler.

Hey,
ich bin auch am verzweifeln hier und ggf. könnt ihr mir auch bei der MQTT Integration mit Zendure helfen, da ich auch nicht mehr weiter weiß.
Ich habe die Integration von z-master durchgeführt und auch die Mqtt Sonsoren Manuel erstellt. Das klappte auch alles ohne Probleme. Nun stelle ich aber gerade fest, dass sich ständig die State_topic ändert.
mal sieht so so aus: state_topic":“FPm6fT9A/1Tp99jvU/state”
dann wieder so: “state_topic”:“3at76SF0/7SR7UXBa/state”
ich werde noch bekloppt… sollten die nicht immer gleich sein…wie soll ich sonst die sonsoren erstellen :smiley:
hoffe jemand kann mich aufschlauen

danke euch
Debein

Dies wirkt tatsächlich merkwürdig.

Hast du ein oder zwei Zendure Geräte im Einsatz unter gleicher Zendure App?
Er sollte nicht die zugehörigkeiten wechseln.