Daten der openDTU Sensoren zuweisen. HowTo

Hi
Nach tagelangem Suchen ohne Erfolg und dem Eingeständnis, ich verstehe die Syntax nicht, frage ich jetzt einmal hier nach:

Vor 3 Wochen habe ich ein Balkonkraftwerk (BKW) in Betrieb genommen, Hoymiles HM-700 als Wechselrichter (WR) und versuche die Daten, die die openDTU vom WR erhält, per MQTT an HomeAssistant (HA) zu senden.

Mit dem MQTT-Explorer kann ich die Daten sehen, sehe auch die Feldnamen (Yieldtotal ,Yieldday) bekommes es aber nicht selber hin, Sensoren in der Configuration.Yaml (CY) so zu beschreiben, dass ich danach Entitäten in HA finde, bzw. dass die CY keine Fehler meldet.

Im MQTT-Explorer finde ich z.B. unter dtu/Open/ac/yieldtotal den Wert für die seit Inbetriebnahme erzeugte Leistung des BKW.

Wenn ich es richtig verstanden habe, sendet die DTU alle 5 Sekunden u.a. diesen Wert und der MQTT-Broker (ADD-ON in HA) wartet, ob er Daten, die nach einer (in der CY?) definierten Form findet und sendet diese weiter an HA?

Vielleicht kann mir jemand in kleinen Schritten den nächsten Stepp erklären.

Ich habe folgendes in eine MQTT.YAML eingetragen:

    sensor:
      name: "DTU Gesamtertrag"
      state_topic: dtu/Open/ac/yieldtotal
      unit_of_measurement: "KWh"

Damit finde ich auch tatsächlich eine Entität mit dem Namen “DTU Gesamtertrag”

Setzte ich nun weiteren Zeilen darunter, z.B.

    sensor:
      name: "DTU Tagesertrag"
      state_topic: dtu/Open/ac/yieldday
      unit_of_measurement: "KWh"

dann erhalte ich diese Fehlermeldung:
duplicated mapping key (26:5)

23 | state_topic: dtu/Open/ac/yiel …
24 | unit_of_measurement: “KWh”
25 |
26 | sensor:
----------^
27 | name: “DTU Tagesertrag”

Da stehe ich vor dem Wald :wink:

Nehme ich die Zeilen

    sensor:
      name: "DTU Gesamtertrag"
      state_topic: dtu/Open/ac/yieldtotal
      unit_of_measurement: "KWh"

so in die CY, dann erhalte ich wieder andere Fehlermeldungen:
bad indentation of a mapping entry (20:11)

17 |
18 |
19 |
20 | sensor:
----------------^
21 | name: “DTU Gesamtertrag”

Mir schwirrt der Kopf, ein und dasselbe ist nicht ein und dasselbe, ich brauche kleine Hilfen für das langsame tiefere Verständnis.

LG, Joska

:crayon:by HarryP: Codezeilen formatiert (bitte immer in </> einbinden)

Nun denn, ich mache einfach mal weiter. Die eigenständige Anlage von Sensoren gelingt mir nicht, eine nicht endende Flut von Fehleremldungen (alle auch schon mit ChatGPT versuchsweise und erfolglos interpretiert), aber dennoch bin ich ein Schrittchen weiter.
Ich finde eine lange Liste von Entitäten zur openDTU (von der die Daten kommen), die wohl automatisch angelegt wurden, alle beginnend mit HM-KG17 gefolgt vom Datensatznamen (Topic) aus der im MQTT-Explorer sichtbaren Topic-Liste.
HM-KG17 YieldTotal heißt es in der Entität,
sensor.hm_kg17_yieldtotal heißt die Entitäts-ID,
dtu/Open/ac/yieldtotal steht im MQTT-Explorer.

Da diese Angaben als Sensoren nicht in der Configuration.yaml, bzw. nicht in der Sensors.yaml auftauchen, muss ich die dort noch explizit anlegen und wenn ja, wie?

Ich lasse es mal bei diesem Schritt, bei dieser Frage.

Wenn du die Entität in HA unter Entitäten findest, musst du nichts extra anlegen. Sind ja schon da.

Danke für die Rückmeldung.

Ich mache dann mal mit Verständnisfragen dazu weiter. Wenn die Entitäten dann da sind, wie heißen dann die Sensoren, die damit verwendet werden können.

Langfristig (für mich ein scheinbar langer Weg), will ich die Daten der Sensoren in eine InfluxDB speichern und dann mit Grafana anzeigen. Reines pures Interesse, hat sonst keinen zielgerichteten Nährwert :slight_smile:

Hi,
Habt ihr das Auto Discovery aktiv, dann bekommt der HA die Entitäten dich automatisch überspielt.

So sollten dann die Werte aussehen:

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

Danke
Die von dir beschriebenen Daten bekomme ich auch jetzt, als automatisch angelegte Entitäten.

Wenn ich die dann in eine Influxdb schreiben will, habe ich es so verstanden, das ich dabei Sensoren (=Variablen, die die Werte der DTU beinhalten) definiert haben muss, und diese Inhalte dann der influxDB übergeben muss. Da tauchen dann wieder andere Begriffe auf, bei denen es letztendlich aber auch wieder um Variablen geht, die mit Daten gefüllt werden. ( So, wie ich es verstehe, Variablen mit zusätzlichen Eigenschaften, die dann Tags genannt werden)

Die Entitäten haben komplexere Namen, als die Sensoren und daran scheiterte ich bisher.

Edit:

Bin einen Schritt weiter. Die Daten fließen, automatisch, inzwischen sogar automatisch in eine Influx DB.