Auf Lumentree über MQTT schreiben

Hallo Community,

ich habe endlich einen Lummentree 600 bekommen. Die Einrichtung hat soweit funktioniert. Über Mqtt ist er an HA angebunden. Zur Nulleinspeisungsregelung müsste ich allerdings die aktuelle Leistung vom EM24-Zähler an den Lummentree schicken. Das soll wohl per mqtt möglich sein. Allerdings weiß ich nicht wie. Der Bereitsteller der Software Trucki ist mit HA nicht so firm. Ich habe da sein Beispiel angefangen in meine config.yaml zu schreiben, aber da kamen nur Fehlermeldungen. :confused:

Hat jemand eine Idee?

Hallo @JohnDoe,

die hier beschriebene und (leider) nur als Bild verfügbare HA config hast du bereits durchgeführt?

Wie gesagt, ich hatte das gelb markierte schon abgeschrieben, aber es hagelte Fehlermeldungen.


Wenn ich so drüber nachdenke, muss ich wahrscheinlich nicht nur das “T2SG” nehmen, weil bei meinem Namen da noch etwas dahinter kommt. Probiere ich später mal aus.

Erst mal danke. Ich melde mich bei der nächsten Stolperstelle…
Gruß JohnDoe

Hallo, ich bin zurück.

So, mit dieser Ergänzung in der YAML:

#Trucki2Shelly Gateway
mqtt:
  sensor:
    - state_topic: "T2SGEA4F42/ACSETPOINT"
      name: "T2SG_ACSetpoint"
      unit_of_measurement: "W"
    - state_topic: "T2SGEA4F42/ACDISPLAY"
      name: "T2SG_ACDisplay"
      unit_of_measurement: "W"
    - state_topic: "T2SGEA4F42/VGRID"
      name: "T2SG_VGrid"
      unit_of_measurement: "V"
    - state_topic: "T2SGEA4F42/VBAT"
      name: "T2SG_VBat"
      unit_of_measurement: "V"
    - state_topic: "T2SGEA4F42/DAC"
      name: "T2SG_DAC"
    - state_topic: "T2SGEA4F42/CALSTEP"
      name: "T2SG_Calstep"
    - state_topic: "T2SGEA4F42/TEMPERATURE"
      name: "T2SG_Temperature"
      unit_of_measurement: "°C"
    - state_topic: "T2SGEA4F42/METER"
      name: "T2SG_Meter"
      unit_of_measurement: "W"
  number:
    - command_topic: "T2SGEA4F42/METEROVR"
      name: "T2SG_Meter_override"
      unit_of_measurement: "W"
      min: -5000
      max: 20000
    - command_topic: "T2SGEA4F42/ACSETPOINTOVR"
      name: "T2SG_ACSetpoint_override"
      unit_of_measurement: "W"
      min: 0
      max: 600
    - command_topic: "T2SGEA4F42/DACOVR"
      name: "T2SG_DAC_override"
      min: 0
      max: 65535
    - command_topic: "T2SGEA4F42/CALSTEPOVR"
      name: "T2SG_Calinration_Step"
      min: 0
      max: 100

Bekomme ich dies:
Lumentree1

Natürlich würde ich gerne den aktuellen Leistungs-Wert aus meinem EM24 in den T2SG_Meter_override schreiben. Also per MQTT übertragen.

Warum taucht der T2SG_Meter_override in der Integration bei MQTT nicht auf?

Bei den Entitäten tauchen auch die anderen in der YAML angelegenten “Sensoren” und “Nummern” auf. Allerdings haben die anscheinend einen Schreibschutz. Wobei man mit den Hoch-Runter Tasten den Wert bei T2SG_Meter_override schon verändern kann.

Wie kann ich den aktellen Leistungsmesswert aus dem Zähler in den MQTT T2SG_Meter_override schreiben? :thinking:

Vielen Dank für jede Hilfe.

Weiß niemand, wie man den Schreibschutz wegbekommt?

Hi John die,

Ich habe den Lumentre 600 G2 jetzt auch mit dem Stick aber muss mich noch damit beschäftigen. Danke für das Listing, teste ich mit meinem und gebe Feedback.

Ich würde aber an deiner Stelle mit Automatisierungen arbeiten, also mit mqtt publish. Das mache ich aktuell mit meinem AWMatrix Display so. Da setze ich Icons und Werte wie Temperatur oder die aktuelle PV Erzeugung auf die Anzeige.

Hier würde ich die aktuellen Werte aus meinem SMA Smart Meter als Trigger nehmen und in Abhängigkeit davon die Einspeisung per T2SG über MQTT setzen.

Ich werde ein paar Tage brauchen aber wenn ich soweit bin Post ich das hier.

Hallo @JohnDoe,

ich habe ihn angeschlossen und dein Listing verwendet (vielen Dank dafür!).

Ich trage dann entweder den Wert in “T2SG_ACSetpoint_override” manuell ein und drücke Enter - dann wird der Wert gesetzt.

Oder ich nutze eine Automatisierung die dann den Wert über service: number.set_value setzt (MQTT Befehle brauchte ich nicht nehmen), hab ich aber alles über die grafische Oberfläche gemacht:
alias: Einspeisung von Batterien starten
description: Nach 19:30h die Einspeisung auf 150 Watt starten, wenn kein Strom
mehr erzeugt wird.

  trigger:
  - platform: numeric_state
    entity_id:
    - sensor.psupply
    for:
      hours: 0
      minutes: 10
      seconds: 0
    below: 100
  condition:
  - condition: time
    after: '19:30:00'
  - condition: state
    entity_id: switch.ladegerat_24v_akku_abstellkammer
    state: 'off'
  action:
  - service: number.set_value
    metadata: {}
    data:
      value: '250'
    target:
      entity_id: number.t2sg_acsetpoint_override
  mode: single

Wenn du noch Fragen hast…

Ich warte aktuell auf den Einbau meines Smartmeters, dann kann ich das voll automatisieren, je nach aktuellem Verbrauch.

Viele Grüße

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

Hallo Zusammen,

ich habe jetzt komplett die Einspeisung vom Lumentree dynamisch mit einem Smart Meter von SMA automatisiert und kann damit zu den Zeiten, wo keine Erträge von der PV Anlage kommen, immer den Netzbezug bei nahezu 0 halten.

Wenn jemand Interesse hat, teile ich gerne die Logik - einfach kurz hier schreiben.

VG

Die nächste Zeit werde ich mich mit dem Target und Average unter ZEPC beschäftigen. Zur Zeit ist Target 10 und Average 5. Wenn der Stick von hohen Lasten runterregelt gibt es ein Überschwingen und es eine Netzeinspeisung im Sekundenbereich. Das sind nur wenige Watt und hinnehmbar.

Hallo @U-Rise,

das Thema war etwas in den Hintergrund getreten, aber da ich morgen einen “modernen Zähler” bekomme und die “externe Batterie” damit endgültig Geschichte ist, steigt die Motivation, das Thema wieder auf die Schiene zu setzen :wink:.

Von daher wäre ich sehr an deiner Lösung interessiert. Habe heute noch Mal versucht, den aktuellen Leistungswert aus dem Smart Meter EM24 in den Lumentree zu bringen. T2SG_Meter_override Aber das klappt noch nicht.

LG

Womit liest du den EM 24 aus?
image
Beim Trucki Stick unter Meter kann man eine URL und Json-Key eingeben

Moin, der EM24 ist über Modbus mit einem Raspi verbunden. Auf dem läuft Venus OS von Victron. Der ist über eine Integration in HA eingebunden. Der aktuelle Leistungswert ist als Entität sensor.em24_zp vorhanden. Es gibt also keine IP oder json.

Hallo @JohnDoe,

erst einmal definiere ich einen virtuellen Sensor:

lumentree_einspeisewert:
        friendly_name: "Lumentree Einspeisewert"
        unit_of_measurement: "W"
        device_class: power
        value_template: "{% set lumentree_einspeisewert = ( [0, states('sensor.pconsume')|round - states('sensor.psupply')|round + states('sensor.t2sg06c
56d_t2sg06c56d_output')| round]) | max %} {{ 600 if lumentree_einspeisewert > 600 else lumentree_einspeisewert }}"

Hier nehme ich den Verbrauch im Haus und ziehe davon die Einspeisung ab. Deshalb prüfe ich, ob ich in den negativen Bereich komme und setze den Wert dann auf 0 hoch, weil der Lumentree das sonst nicht “versteht”. Zudem setze ich den Wert bei Werten über 600 fest auf 600, da er nicht mehr einspeisen kann, hab den kleinen Lumentree. Reicht mir aber auch bei meinen 5 KW Batterienverbund :slight_smile:

Dann habe ich eine Automatisierung die alle 30 Sekunden diesen Wert auf dem Lumentree setzt:

- id: 'xxx'
  alias: Einspeisung von Batterien starten
  description: Wenn das Ladegerät aus ist.
  trigger:
  - platform: time_pattern
    seconds: '30'
  condition:
  - condition: state
    entity_id: switch.ladegerat_24v_akku_abstellkammer
    state: 'off'
  - condition: numeric_state
    entity_id: sensor.t2sg06c56d_t2sg06c56d_battery_voltage
    above: 23
  action:
  - service: number.set_value
    metadata: {}
    data:
      value: '{{ states(''sensor.lumentree_einspeisewert'') }}'
    target:
      entity_id: number.t2sg_acsetpoint_override
  mode: single

Da sind dann zwei Bedingungen drin, er soll nicht einspeisen, wenn die Batterien geladen werden und er soll nicht unter 23 Volt entladen (24v System mit zwei 100 Ah Batterien)

Ist also recht simpel gehalten. Ich hoffe, ich habe es halbwegs nachvollziehbar erklärt, ansonsten frag gerne.

Moin, folgende Fragen dazu:

in welcher YAML ist der denn definiert. Wenn ich das in meine configuration.yaml packe, kommt eine Fehlermeldung wegen Verweis auf configuration.yaml

Wo oder wie sind die Sensoren sensor.pconsume und sensor.psupply definiert?

Gruß

Hallo @JohnDoe

da musst du die beiden entsprechenden Sensoren deines EM 24 eintragen. Die kommen bei mir vom SMA Energy Meter und zeigen entweder den aktuellen Verbrauch (Grid) oder die aktuelle Einspeisung ins Netz an, also alles was ich selbst nicht benötige.
Richtig eingetragen hast du das in die configuration.yaml

Der EM24 liefert mir über die Victron Integration folgende Entitäten.

Ich habe die Leistungswerte in eine Helfer-Entität “sensor.em24_zp” zusammengefasst. Insofern habe ich keinen Wert für Konsum und Erzeugung.

Es wäre ja schon mal ein Anfang, wenn ich irgendwie den Ist-Wert aus dem EM24 inden number.t2sg_meter_override geschrieben bekomme… :roll_eyes:

so, ich habe es geschafft! Mit NodeRed ging es nun endlich. Den Rest erledigt die Regelung im Truckistick/Lumentree. Mal beobachten, wie gut das geht.