Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Heidelberg Energy Control Wallbox ModBus Adapter #559

Closed
zzhorch opened this issue Jan 17, 2021 · 104 comments
Closed

Heidelberg Energy Control Wallbox ModBus Adapter #559

zzhorch opened this issue Jan 17, 2021 · 104 comments
Labels
modbus works The Modbus adapter works fine

Comments

@zzhorch
Copy link

zzhorch commented Jan 17, 2021

Aufgrund der KFW-Förderung und der schon jetzt recht langen Lieferzeit der Energy Control gehe ich davon aus, das dieser Adapter einiges erleichtern würde .

Die Neue Heidelberg Energy Control Wallbox ist per Modbus steuerbar, um z.b Ladeleistung anzupassen, laden freigeben oder stoppen, PV-Ladung zu ermöglichen, Verbräuche abzurufen, usw...

Mit einem passenden Adapter könnte man eine Zeitsteuerung realisieren, PV Ladung, evtl. sogar den Discovergy Strom Adapter mit einbeziehen um Strompreisgerecht das E-Auto zu laden z.b. über Nacht etc.

Für andere Wallboxen (KEBA KeContact Wallbox, go-eCharger Wallbox integration...) wurde die anbindung mittel Adapter bereits umgesetzt wobei diese nicht per Modbus arbeiten.

Ich denke der Adapter wäre für viele interessant um das ganze zu erleichtern, man könnte zwar vieles auch per Javascript umsetzen, ist aber für einige nicht praktikabel, evtl hat jemand Lust einen schönen Adapter zu schreiben.

Viele Grüße!

Hier noch ein paar Infos:

Externes Lastmanagment: https://wallbox.heidelberg.com/wp-content/uploads/2020/11/Wallbox_Energy_Control_Externes_Lastmanagement.pdf
Modbus-Register nach Hersteller: https://wallbox.heidelberg.com/wp-content/uploads/2020/11/ModBus_register_table.pdf

Hier eine fertige Liste der funktionierenden Punkte bei mir zum einpflegen in den Modbus Adapter (Slave ID muss angepasst werden)

Inputregister
deviceId address name description unit type len factor offset formula role room
2 4 Modbus Register-Layouts Version Modbus Register-Layouts Version uint16be 1 1 0 state
2 5 charging state charging state uint16be 1 1 0 state
2 6 L1 - Current RMS L1 - Current RMS uint16be 1 1 0 state
2 7 L2 - Current RMS L2 - Current RMS uint16be 1 1 0 state
2 8 L3 - Current RMS L3 - Current RMS uint16be 1 1 0 state
2 9 PCB-Temperatur in 0.1 °C PCB-Temperatur in 0.1 °C °C uint16be 1 0.1 0 state
2 10 Voltage L1 - N rms in Volt Voltage L1 - N rms in Volt Volt uint16be 1 1 0 state
2 11 Voltage L2 - N rms in Volt Voltage L2 - N rms in Volt Volt uint16be 1 1 0 state
2 12 Voltage L3 - N rms in Volt Voltage L3 - N rms in Volt Volt uint16be 1 1 0 state
2 13 extern lock state extern lock state uint16be 1 1 0 state
2 14 Power (L1+L2+L3) in VA Power (L1+L2+L3) in VA uint16be 1 1 0 state
2 15 Energy since PowerOn Energy since PowerOn uint16be 1 1 0 state
2 16 Energy since PowerOn Energy since PowerOn uint16be 1 1 0 state
2 17 Energy since Installation Energy since Installation uint16be 1 1 0 state
2 18 Energy since Installation Energy since Installation uint16be 1 1 0 state
2 100 Hardware configuration maximal current Hardware configuration maximal current uint16be 1 1 0 state
2 101 Hardware configuration minimal current Hardware configuration minimal current uint16be 1 1 0 state
2 200 Hardware-Variant Hardware-Variant uint16be 1 1 0 state
2 203 Application Software svn-revNo Application Software svn-revNo uint16be 1 1 0 state

Holdingregister
deviceId address name description unit type len factor offset formula role room poll wp isScale
2 261 Maximal current command Maximal current command uint16be 1 1 0 value true false false
2 262 FailSafe Current configuration FailSafe Current configuration uint16be 1 1 0 value true false false

@Apollon77
Copy link
Collaborator

Why not using mbus adapter?

@zzhorch
Copy link
Author

zzhorch commented Jan 22, 2021

Ich benutze auch den Mbus Adapter, aber um gewisse Situationen zu schalten, benötigt es viele einzelne Scripte. Der Gedanke war eine kombinierte Lösung zu haben. Dieser Wallbox-Typ ist derzeit gefragt ohne Ende, ich denke es wäre Sinnvoll einen fertigen Adapter zu haben der alles kann, als wenn sich jeder Scripte basteln muss, die vorne und hinten nicht funktionieren.

@Thim-Thaler
Copy link

Moin,
ich habe mir auch eine Heidelberg Energy Control Wallbox installiert.
Da ich auch ioBroker verwende, wäre es ne echt coole Sache,
wenn es dafür einen Adapter geben würde.
Wie würde ich denn den ModBus an mein ioBroker-System bekommen?
Ich zähle auf euch. ;-))

@Gonzo1981
Copy link

ich kann die Register 15-101 und 258-259 nicht auslesen. Modbus Adapter sagt, dass es diese nicht gibt.
Ich habe keine Ahnung ob man da was spezielles beachten muss. Habe auch probiert die Adapter einzeln auszulesen.
Das sende ich: 02 03 01 02 00 01 24 05
Das bekomme ich zurück : 02 83 02 30 F1

@MarcelMertens
Copy link

Ich habe ebenfalls die Energy Control Wallbox hier liegen. Allerdings noch nicht Angeschlossen, aktuell nur via Einphasig via 230V um die Modbus Integration zu testen.
Ist es eigentlich möglich die Wallbox nur "Auszulesen"? Ich schaffe es zumindest alle Werte die mich Interessieren via Modbus Adapter auszulesen. Mich wundert aktuell nur, dass Register "5" "Charging State" auf dem Wert 2 (A1 = No vehicle plugged, Wallbox doen't allow charging") bleibt
DIP Schalter Konfig: Block S4/4 = On (ID1), S6/2 = On (Endwiderstand Ein). Die Wallbox ist somit Follower mit der ID1 ohne Master.

@Gonzo1981
Copy link

Ich habe noch nicht geladen mit der Wallbox als Slave.
Die Box gefällt mir nicht.
Sobald sie in Standby geht, bringt der Modbus Adapter ständig Fehler.
Ich sehe keinen Startbefehl, somit müsste es gehen nur auszulesen.
Habe mir jetzt den Go-E Charger gekauft. Tausend mal besser.
Die Heidelberg versuche ich zu verkaufen.
Ich klemme die Heidelberg schnell an und hänge das Auto dran.
Mal schauen wie sich das Register 5 ändert

@Gonzo1981
Copy link

Wenn man ein Auto ansteckt, springt der Charging State auf 4.
Das Auto zeigt auch Bereit zum Laden an.
Dann muss man mit einem Script jede Sekunde (ich lese alle 2 Sekunden) einen Ladestrom in das Register 261 schreiben
Der Charging State Springt auf 7
Zum stoppen des Ladevorgangs muss der Ladestrom auf 0 geschrieben werden

@Gonzo1981
Copy link

Gonzo1981 commented Mar 8, 2021 via email

@MarcelMertens
Copy link

MarcelMertens commented Mar 8, 2021 via email

@Gonzo1981
Copy link

Gonzo1981 commented Mar 8, 2021 via email

@MarcelMertens
Copy link

MIt welchem Tool hast du es gamacht? Hast du es probiert Zyklisch dieses Register zu beschreiben?

Am 08.03.2021 um 09:40 schrieb Andrzej Gonsior @.>: Ich kann leider nicht in das Register 258 schreiben, weil ich es nicht lesen kann. Bekomme eine Fehlermeldung, dass es dieses Register nicht gibt > Am 08.03.2021 um 09:14 schrieb MarcelMertens @. @.***>>: > > > Ich habe noch nicht geladen mit der Wallbox als Slave. > Die Box gefällt mir nicht. > Sobald sie in Standby geht, bringt der Modbus Adapter ständig Fehler. > Ich sehe keinen Startbefehl, somit müsste es gehen nur auszulesen. > Habe mir jetzt den Go-E Charger gekauft. Tausend mal besser. > Die Heidelberg versuche ich zu verkaufen. > Ich klemme die Heidelberg schnell an und hänge das Auto dran. > Mal schauen wie sich das Register 5 ändert > > Ja, das Problem hatte ich auch. Schreibt man "4" in das Register 258 geht die Box nicht mehr in StandBy > > — > You are receiving this because you commented. > Reply to this email directly, view it on GitHub <#559 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AH5KCLHTNXV7F2IANA2TIPLTCSBOTANCNFSM4WGPMBIA. >

Mit QModMaster:
grafik
Via IOBroker Modbus gibt es aktuell ein Bug, dass Write Only Registers nicht erstellt werden.
ioBroker/ioBroker.modbus#77

Der Datenpunkt wird nicht erstellt, somit ist ein dauerhaftes schreiben nicht möglich...
grafik
grafik

@Thim-Thaler
Copy link

Thim-Thaler commented Mar 8, 2021 via email

@MarcelMertens
Copy link

Die Heidelberg Wallbox macht nur Modbus RTU (also Seriel via RS485)
Hierfür gibt es einen einen USB <> RS485 Adapter. Gibts bei Amazon etc für ca 15€ (habe einen mit einem CP2102 Chip).
Dann etwas verdrillte Leitung (Netzwerkkabel oder Telefonkabel).
Wer sein IOBroker System nicht direkt neben der Wallbox stehen hat kann auch Modbus auf WiFi/Ethernet Adapter verwenden. Liegen bei ca 60-80€.
Softwareseitig bin ich aktuell noch nicht sehr weit.
Aktuell ist mein Anschluss in der Garage noch nicht Fertig und das eAuto auch nur Bestellt und noch nicht geliefert. Daher liegt die Wallbox am 230V Anschluss auf allen 3 Phasen neben dem Schreibtisch.
Mein Kenntnissstand (hier kann Gonzo1981 evtl genauer werden):

  • Es ist nicht möglich die Wallbox "Autark" zu betreiben. Wenn man mit ModBus ran will, muß man auch mit Modbus steuern. Ein "Wallbox mach mal und ich lese nur aus" geht AFAIK nicht. Aktiviert man Modbus ist entweder die Box Master und sucht nach einem Slave: Findet sie keinen -> Fehler. Oder man stellt die Box auf Slave und muß mit IOBroker die Box steuern (regelmäßig den Ladestrom mitteilen) etc.
  • Nach einer gewissen Zeit (5min) geht die Wallbox in Standby und nimmt keine Modbus Verbindung mehr an. Der Modbus IOBroker Adapter wirft dann Fehler. Es gibt das Register 258 welches dieses Verhindern soll. Einmaliges Schreiben bringt aber keine Verbesserung, mehrmaliges Schreiben aktuell nicht ausprobiert.

@Gonzo1981
Copy link

Gonzo1981 commented Mar 8, 2021

Ich habe einen Adapter, der Modbus RTU kann (etwas teuer). Im iOBroker ModbusAdapter stelle ich dann auf TCP
Ich frage mich ob ein normaler RS485 auch funktioniert. Dann im iOBroker Adapter auf RTU über TCP einstellen?
Wie hast du es gemacht Marcel? Hast du bei der Verdrahtung auch A und B tauschen müssen? Normal wäre A auf A und B auf B.

@Thim-Thaler
Copy link

Thim-Thaler commented Mar 8, 2021 via email

@MarcelMertens
Copy link

MarcelMertens commented Mar 8, 2021

Also:
IOBroker Prod Umgebung (Intel NUC mit Ubuntu 18.04 LTS)
1x https://www.amazon.de/gp/product/B08DXLJF8J/ref=ppx_yo_dt_b_asin_title_o05_s00?ie=UTF8&psc=1
Hier hängen aktuell zwei SDM Stromzähler dran (andere Baud und Parity Settings)
Konfiguration im IOBroker:
grafik

IOBroker Dev Umgebung (Oracle Virtual Box VM mit Ubuntu auf Windows Client)
1x ModbusTCP/IP zu Modbus RTU (RS485) Gateway von http://hoelldobler.net/. Zu finden auf ebay.
Konfig IOBroker:
grafik
Konfig Gateway:
grafik

Dann habe ich noch einen zweiten USB <> RS485 Adapter um mit diversen Windows Tools zu testen

@Gonzo1981
Copy link

Für alle die noch keine Wallbox haben, meiner Meinung nach ist der go eCharger viel besser. Die Wallbox hat WiFi. NFC. App Es gibt einen iOBroker Adapter mit hunderten Stats. Hat leider kein fest angeschlossenes Kabel und keinen Kabelhalter.

@Thim-Thaler
Copy link

Thim-Thaler commented Mar 8, 2021 via email

@MarcelMertens
Copy link

MarcelMertens commented Mar 8, 2021

MIt welchem Tool hast du es gamacht? Hast du es probiert Zyklisch dieses Register zu beschreiben?

Ich habe das nun gerade auch nochmal ausprobiert:
Mit QModMaster schreibe ich nun seit knapp 25 Min alle 10 Sekunden eine "4" in den Register 258... Bis jetzt geht die Wallbox nicht mehr in den Standby..
grafik

@harnisch1109
Copy link

Hi ,
ich versuch auch auf das Register 261 einmal pro Sekunde zu schreiben, damit die Ladung des Fahrzeugs beginnt.
Leider geht da nix.
Ich verwende allerdings ein KNX <> Modbus Gateway. Auslesen der Port 04 - readInputRegister klappt.
Das Auslesen der 03 - readHoldingRegister und das Schreiben auf 06 - writeHoldingRegister geht leider nicht.

Falls jemand etwas herausfindet lasst es uns wissen.

@kahuwi14
Copy link

So, nach vielem Hin-und-Her und ausprobieren, habe ich heute endlich meine Energy Control komplett "überschussladefähig" gemacht..
Mir sind beim Installieren und probieren ein paar Dinge aufgefallen, die bei mir nicht so funktionieren, wie sie sollten.

Punkt 1: Zum Testen habe ich PyModbus genutzt, um einfach mal rohe Daten an die Box senden zu können und um zu sehen, was die Box macht bzw antwortet.
Das hat allerdings erst funktioniert, als ich in den Tiefen des Internets über den Hinweis gestolpert bin, dass mein RS485-TCP-Gateway in PyModbus nur mit dem RTU-Framer funktioniert.

Punkt 2: Ich musste tatsächlich mit Modbus-TCP-Adapter an den "Bus-OUT"-Anschluss (links) gehen, sonst hats nicht geklappt.
Mir ist schon relativ zu Anfang aufgegallen, als ich das erste Mal ein bisschen getestet hatte, dass der integrierte Abschlusswiderstand nur am IN-Anschluss zu messen, habe mich aber leider lange auf die Beschriftung der Platine verlassen. (Eig sollten es ja die Hersteller besser wissen)
Der Durchbruch kam dann letztendlich Heute, weil ich nur am OUT-Anschluss auch die Werte für den MaxCurr (06#261) schreiben konnte.

Punkt 3: Das Schreiben des Remotelock-Wertes (06#259) , welches ja über den ModBus-Adapter nicht funktioniert, ist grundsätzlich nicht notwendig. Meine Absicht (und wahrscheinlich die der meisten anderen auch) war es, damit die Freigabe zum Laden zu realisieren und unbefugtes Laden zu unterbinden. Das ist aber tatsächlich nicht notwendig, denn eine 0 in MaxCurr (06#261) hat das gleiche Ergebnis: Die Ladung wird nicht initiiert oder abgebrochen sofern schon gestartet.

Punkt 4: Der Wert, der Zähler Energy since Installation (04#18) setzt sich beim Neustart (Strom aus - Strom an) ebenso zurück, wie der Energy since PowerOn (04#16). Umgekehrt werden beide aber auch nicht resettet, wenn man das Auto abklemmt und wieder anklemmt oder die Box aus dem StandBy erwacht. Vielleicht hat ja schon jemand herausgefunden, wie da die Absicht der Herstellers ist.

Punkt 5: Nur, falls jemand irgendwie darüber stolpert, man hat ja manchmal einfach ein Brett vorm Kopf, die Einstellungen der Dip-Schalter werden nur beim Neustart übernommen.

Zum guten Schluss dann nur die Wert der PV-Anlage mit den Möglichkeiten der Wallbox in einen Sack geworfen, mit dem großen Blockly-Hammer drauf gehauen und jetzt kann meine Energy Control auch endlich Überschuss laden!!
Abschließend bin ich auch echt froh, mich für die Heidelberg entschieden zu haben, denn die Verarbeitung der Box selbst, sowie das schöne Aussehen in Verbindung mit dem Preis, ist mMn schon ein Plus für sie und ein Minus für viele Mitbewerber.

Ich hoffe sehr, dass ich dem einen oder anderen damit helfen konnte und sollte es noch Anmerkungen aus diesem Kreise geben, bin ich natürlich sehr dankbar für konstruktive Hinweise oder auch Fragen.

MfG

@steff393
Copy link

steff393 commented Apr 15, 2021

Hi,
ich habe mir mittlerweile auch eine Heidelberg zugelegt, da ich sie qualitativ für besser verarbeitet halte als den go-eCharger. Für das fehlende WLAN-Interface habe ich eine NodeMCU mit RS485-Adapter aufgesetzt, s. hier: https://github.com/steff393/wbec
Damit kann ich den Standby kontrollieren, die Werte auslesen und den Ladestrom einstellen (per HTTP GET z.B. aus der Loxone).
Jetzt fehlt mir nur noch das Auto ;-)

@kahuwi14
Copy link

Hi @steff393 ,
ebenfalls eine sehr sehr coole Lösung!!

@bigschnulli
Copy link

Hallo zusammen
Ich habe mir auch eine Heidelberg installiert mich dann durch die ganzen Foren durchgelesen.
Heute dann mein persönlicher Durchbruch. Sie ist erreichbar, kann alles auslesen und z.B. die Standby Funktion ausschalten.
Habe das Modbus Gateway USR W610 und den Modbus 3.3.0 im Einsatz. Hätte ich jetzt noch ein Auto zum testen wäre alles super

@harnisch1109
Copy link

Hi
nachdem ich mal wieder etwas Zeit hatte, kann ich euch sagen, das meine Konfiguration mit der Heidelberg EnergyControl dem Weinzierl (KNX-Modubus Gateway ) nun funktioniert. Was ich genau falsch gemacht habe kann ich leider auch nicht sagen. Aber ein einfaches Schreiben auf das Register 261 mit dem Wert 0;60-160 reicht um die Ladung zu starten und zu steuern.

Aktuell stört mich an der Wallbox nur, das ich nicht einzelne Phasen steuern kann. Da erwarte ich wohl zu viel ;-)

@kerstinbaskakow
Copy link

Hi zusammen,
wir haben die WB auch über ein Python-Script im Einsatz und können über einen ModeSelector zwischen "Sofort-Laden" und "Überschuss-Laden aus PV" umschalten. Funktioniert soweit so gut. Das Script läuft über ein Schedule-Module alle 10sec.
Wir haben auch festgestellt, dass die Energiezähler (#15,16,17,18) immer mal wieder zurückgesetzt werden. Keine Ahnung warum das so ist. Wir rechnen das jetzt selber mit. (Einmal beim letzten Ladevorgang, und dann Gesamtenergie).

Wir bauen jetzt noch eine Phasenerkennung ein, damit wir den Schwellwert für die Überschussladung auch für ein 1phasiges Fahrzeug einstellen können. (1p 1,4kW, 2p, 2,8kW, 3p 4,2kW). Kennt jemand eine Möglichkeit, die Phasen schon beim Einsteckvorgang zu prüfen, alternativ müssten wir einen kurzen Prüfimpuls mit 6A setzen und dann über den Stromfluss aus Register #6,7,8 die Anzahl der Ladenden Phasen zu ermitteln.

Wir haben es heute beim Test festgestellt, dass das E-Fahrzeug bei Vorgabe von 0A (wg. PV-Leistung < 4kW) in der Ladedose Rot blinkt. Sobald wieder mehr Leistung verfügbar ist und wieder über #261 ein Strom geschrieben wird, fängt das Fzg. wieder an zu laden.

@kahuwi14
Copy link

Wir haben auch festgestellt, dass die Energiezähler (#15,16,17,18) immer mal wieder zurückgesetzt werden. Keine Ahnung warum das so ist. Wir rechnen das jetzt selber mit. (Einmal beim letzten Ladevorgang, und dann Gesamtenergie).

Jap.. :-/

Wir bauen jetzt noch eine Phasenerkennung ein, damit wir den Schwellwert für die Überschussladung auch für ein 1phasiges Fahrzeug einstellen können. (1p 1,4kW, 2p, 2,8kW, 3p 4,2kW). Kennt jemand eine Möglichkeit, die Phasen schon beim Einsteckvorgang zu prüfen, alternativ müssten wir einen kurzen Prüfimpuls mit 6A setzen und dann über den Stromfluss aus Register #6,7,8 die Anzahl der Ladenden Phasen zu ermitteln.

Ich habe auch eine OnChange() auf den Strom der Phasen gesetzt und prüfe dann, wie viele über 0A sind und dementsprechend dividiere ich dann den Max-Strom in 261.

Wir haben es heute beim Test festgestellt, dass das E-Fahrzeug bei Vorgabe von 0A (wg. PV-Leistung < 4kW) in der Ladedose Rot blinkt. Sobald wieder mehr Leistung verfügbar ist und wieder über #261 ein Strom geschrieben wird, fängt das Fzg. wieder an zu laden.

Ja genau, das klappt super.

@kerstinbaskakow
Copy link

Ya, so müssen wir es auch machen. Bzgl. Phasenumschaltung werde ich ein zusätzliches Schütz vor die WB hängen und L2 und L3 schaltbar machen. z.B. über Shelly o.ä.

Bzgl. der Roten Lade-LED würde ich morgen mal probieren, statt 0A (#261) den Wert auf 6A zu lassen, aber dann über den RemoteLock zu sperren. Vielleicht werden dann die Phasen (fahrzeug-seitig) nicht geschalten und das Fahrzeug geht nur in "INIT" und blinkt weiß.

Visualisierung läuft über Grafana
Visu

@xxKenny87xx
Copy link

Hallo zusammen.
Hat Jemand schon die Phasenumschaltung für die Heidelberg realisiert?

@snodo
Copy link

snodo commented Oct 13, 2021

Die Heidelberg selbst kann das ja nicht. Wenn nur 1 Phase Spannung hat, lädt sie 1-phasig. Wenn alle 3 Phasen Spannung haben, eben 3-phasig.

Von @kerstinbaskakow kam aber die Idee, die Phasen 2 und 3 mit externer Einrichtung ab-/zuschalten, siehe #559 (comment)
Möglicherweise ist das inzwischen realisiert und da kommt vielleicht eine Antwort? So oder so wäre das aber natürlich eine Individuallösung mit genauso individueller Programmierung. Um ein wenig Bastelei kommt man hier mit dieser Wallbox nicht herum.

@steff393
Copy link

Hi, ich hab mal überlegt, das Konzept von @kerstinbaskakow mit wbec umzusetzen: steff393/wbec#7
Allerdings hab ich's in der Praxis nicht so aufgebaut, da aktuell kein Bedarf.
Man müsste das mal schrittweise testen:

  • Manuell die Phasen weg/zuschalten, wenn Fahrzeug nicht gesteckt --> sollte ja kein Problem sein
  • Prüfen, ob die Ansteuerung des Schütz stabil und wie gewünscht ohne Aussetzer läuft (aber noch ohne damit wirklich die Wallbox zu steuern/anzuschließen)
  • Dann mal Schütz und Wallbox kombinieren, aber noch ohne angeschlossenes Fahrzeug

Erst danach würde ich das Fahrzeug anstecken (natürlich keine Zoe, die soll da ja anfällig sein) ;-)

@maxpd1
Copy link

maxpd1 commented May 3, 2022

Als ich dann 2 Stück hatte, habe ich zunächst mal die beiden miteinander verbunden. Beide am gleichen PC eingestöpselt (oder an 2 unterschiedlichen, das ist an sich egal). Auf dem einen mit pyModSlave gesendet und auf dem anderen mit QModMaster empfangen. Somit wusste ich zumindest schonmal, dass die Kommunikation prinzipiell klappt und dass beide Adapter in Ordnung sind.

So... Hab es jetzt geschafft, Daten aus der Wallbox zu bekommen. Hab testweise die WBEC Lösung angeschlossen und es kommt alles richtig an, wodurch die Wallbox und deren Konfiguration als Problemquelle ausgeschlossen werden kann. Jetzt ware ich einfach, bis der richtige RS485 to Ethernet Adapter aus China kommt und dann bin ich überzeugt, dass ich die Daten auch mit dem Modbus Adapter in ioBroker bekomme...

Ich habe ein Spannungswandler von 230V auf 5V an den ESP angeschlossen. Damit blinkt er alle 5 Sekunden kurz hell blau.
Ich habe eine Powerbank an den ESP angeschlossen und sie blinkt jede Sekunde schwach blau.

Was davon ist korrekt, wie verhält es sich bei euch?

Daten bekomm ich aber weiterhin mit verschiedensten Wallbox Settings nicht geliefert. Ich schaue im Json immer auf die PCB Temp.

Habe es exakt wie auf den Bildern umgesetzt, wobei ich das Kabel der Wago Klemme nicht nutze.

@steff393
Copy link

steff393 commented May 3, 2022

Hi, kannst du bitte mal zeigen, was bei /json und /cfg rauskommt?

@maxpd1
Copy link

maxpd1 commented May 4, 2022

Ja klar

{"wbec":{"version":"v0.4.4","bldDate":"Feb 26 2022 10:47:44","timeNow":"12:32:03"},"box":[{"busId":1,"version":"0","chgStat":0,"currL1":0,"currL2":0,"currL3":0,"pcbTemp":0,"voltL1":0,"voltL2":0,"voltL3":0,"extLock":0,"power":0,"energyP":0,"energyI":0,"currMax":0,"currMin":0,"logStr":"","wdTmOut":0,"standby":0,"remLock":0,"currLim":0,"currFs":0,"lmReq":0,"lmLim":255,"resCode":"e2"}],"modbus":{"state":{"lastTm":96395,"millis":98458}},"rfid":{"enabled":false,"release":false,"lastId":""},"pv":{"mode":0,"watt":0},"wifi":{"mac":"98:CD:AC:26:B6:32","rssi":-84,"signal":32,"channel":11}}

{"cfgApSsid":"wbec","cfgApPass":"wbec1234","cfgCntWb":1,"cfgMqttIp":"","cfgMqttLp":[]}

@steff393
Copy link

steff393 commented May 4, 2022

Seltsam, den resCode:"e2" habe ich bisher noch nie gesehen.
EX_DATA_MISMACH = 0xE2, // Custom. Inpud data size mismatch
Sieht aus, als würde die angekündigte Anzahl von Bytes nicht zur tatsächlichen passen, evtl. ein Verbindungsthema. Kannst du mir bitte kurz direkt unter wbec393@gmail.com schreiben?

@uwe-beach
Copy link

Super, dass es so jetzt funktioniert. Dann hat die Box schonmal keine Macke, sondern es war in der Konfiguration mit dem USB<=>ModBus Adapter nur irgendwas seltsam. Vielleicht hat ja wirklich einfach der Umsetzer nen Defekt.
Einstellungen die man in der Box vornehmen muss, sind für Leute die nur 1 Box fernsteuern wollen ja in aller Regel identisch und zwar nur die beiden DIP Schalter S4/4 für die ID 1 und S6/2 für den 120 Ohm Widerstand.
Ich denke auch, dass es mit dem Ethernet Adapter dann alles klappen wird. Drücke dir die Daumen.

Richtig, aber S5/4 sollte ja auch noch auf Follower gestellt werden für externes Lastmanagement

Hallo,

ich habe an einer Heidelberg Energy Control die DIP-Schalter wie oben eingestellt, 2 Adern eines CAT-7 Kabels an 'IN' angeschlossen und das Kabel mit einem 120 Ohm Widerstand abgeschlossen. Wenn ich die Wallbox einschalte, meldet diese
durch die Blink-Sequenz (6 x weiß, Pause, 3 x blau) einen Kommunikationsfehler.
Muss zwingend ein ModBus-Adapter am Ende des CAT-Kabels hängen ?
Eigentlich wollte ich eine Comexio ModBus-Bridge anschliessen, aber damit kommt auch nur der Kommunikationsfehler. Jetzt wollte ich herausfinden, ob es an der Wallbox liegt.

Uwe

@steff393
Copy link

steff393 commented Jun 4, 2022

Ja, sobald die Wallbox per DIP-Schalter als Follower eingestellt ist, muss es einen Master (z.B. wbec ) geben, der regelmäßig die Kommunikation startet und z.B. Werte ausliest. Ansonsten erkennt die Wallbox einen Fehler und startet entsprechend das Blinken.

@uwe-beach
Copy link

Super, danke. Dann muss ich mit der ModBus-Bridge weiter testen.

@uwe-beach
Copy link

Nun funktioniert das Überschussladen mit der Heidelberg Energy Control. Vielen Dank an alle hier für die vielen hilfreichen Beiträge, ohne Euch hätte ich das nicht hinbekommen.

Danke.

@mmoeller53
Copy link

Hoffe das hier wird noch gelesen, versuche das ganze auch gerade aufzubauen, mit einem ew11 habe ich das signal von rs 485 auf wifi geholt, nun bekomme ich das mit dem modbus adapter nicht hin, meine wallbox blingt nurnoch blöd rum und mit qmodmaster werden mir teilweise sachen angezeigt oder es kommt zum timeout

@munich-ml
Copy link

Ich habe nun auch lange an der Modbus Kommunikation zu Heidelberg Energy Control gebastelt und dabei zwei wesentliche Punkte gelernt:

  1. Wenn ich den länger als Modbus Timeout (Reg 257) nicht über Modbus kommuniziere, springt der charging state (Reg 5) auf 10 "F" und die Wallbox macht das Weiß-blaue Fehler Blinklicht. Man kann Reg 257 auf maximal 65s setzen, also muss man mindestens 1 "Keep-alive" pro Minute in die Wallbox schreiben.
  2. Wenn Standby enabled ist (Reg 258 ->0), dann geht die Wallbox nach ca. 13 Minuten in einen Standby Modus und ist dann nicht mehr über Modbus ansprechbar.

Wenn ich diese beiden (wirklich schlecht dokumentieren) Eigenschaften beachte, kann ich vernünftig mit der Wallbox arbeiten.

@mcm1957
Copy link
Collaborator

mcm1957 commented Jan 29, 2023

Wenn ich die letzten Einträge hier lese scheint die Heidelberg via MODBUS an ioBroker anbindbar zu sein.

Frage 1) Stimmt das? Fist die Box via MODBUS anbindbar?

Frage 2) Gibt es einen (od. mehrere Gründe) die für einen de?izierten Adapter sprechen? Oder kann alles was benötigt wird, via MODBUS erreicht werden?

DANKE für Feedback.

@mcm1957 mcm1957 added the modbus sufficient? Is the Modbus Adapter maybe sufficient? label Jan 29, 2023
@LiamHD
Copy link

LiamHD commented Mar 3, 2023

@hackicodi
Copy link

Moment, ich habe ebenfalls wbec mittels ESP und rs485 Adapter aufgebaut. Muss ich mit dem buskabel auf IN gehen?

@csh-de
Copy link

csh-de commented Apr 30, 2023

ja

@csh-de
Copy link

csh-de commented Apr 30, 2023

ich hatte nur eine 100Ohm Widerstand, hatte gelesen das ginge auch.

leider bekomme ich keine Kommunikation:

{"wbec":{"version":"v0.4.8","bldDate":"Mar 18 2023 17:45:49","timeNow":"11:04:00"},"box":[{"busId":1,"version":"0","chgStat":0,"currL1":0,"currL2":0,"currL3":0,"pcbTemp":0,"voltL1":0,"voltL2":0,"voltL3":0,"extLock":0,"power":0,"energyP":0,"energyI":0,"energyC":0,"currMax":0,"currMin":0,"logStr":"","wdTmOut":0,"standby":0,"remLock":0,"currLim":0,"currFs":0,"lmReq":61,"lmLim":255,"resCode":"e4"}],"modbus":{"state":{"lastTm":4493067,"millis":4497281}},"rfid":{"enabled":false,"release":false,"lastId":""},"pv":{"mode":0,"watt":0},"wifi":{"mac":"FC:F5:C4:97:DB:8D","rssi":-46,"signal":100,"channel":11}}

@mcm1957
Copy link
Collaborator

mcm1957 commented Apr 30, 2023

Da es seit Jänner keine Rückmeldung gibt, welche Vorteile eine dedizierter Adapter gegenüber der Modbus Anbindung hätte, schließe ich hier mal.

Falls ein Bedarf an einem dedizierten Adapter besteht, bitte mit einer kurzen Begründung heir posten - issue kann jederzeit wieder geöffnet werden. Alternativ ein neues Issue (mit Verweis auf diesen Issue UND Begründung warum ein dedizierter Adapter Vorteile hat) öffnen.

@mcm1957 mcm1957 closed this as completed Apr 30, 2023
@mcm1957 mcm1957 added modbus works The Modbus adapter works fine and removed Requested modbus sufficient? Is the Modbus Adapter maybe sufficient? labels Apr 30, 2023
@horst789github
Copy link

ich habe gestern die zum erstem mal die heidelberg mit modbus zum laufen gebracht... leider war noch eine wilde LED Blink party... weil die so gestört hatte, wurde die wallbox über nacht ausgemacht... heute funktioniert nix mehr bzgl modbus... bekomme in evcc/modbus nur noch ein timeout. hat jemand eine idee was man machen kann?
laut LED Blinken ist es ein Kommunikationsfehler zwischen Lastmgmtsteuerung und Wallbox.
Ich habe bisher noch kein 120 Ohm widerstand eingebaut, brauch ich das zwingend? Warum hat es gestern alles geklappt ? (ohne 120 Ohm widerstand)

@mcm1957
Copy link
Collaborator

mcm1957 commented Jun 20, 2023

This issue us clised as the devuce can be controlled using modbus adapter.

Please report issues and feature requests at the adapter repository or discuss geberal topics at forum.

If you feel a dedicated adapter us needed please open a new issue stating what additonal features are required.

@ioBroker ioBroker locked and limited conversation to collaborators Jun 20, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
modbus works The Modbus adapter works fine
Projects
None yet
Development

No branches or pull requests