NEWS
Neuer Adapter EMS-ESP für Bosch Heizungen
-
Ich hatte in den letzten 5 Wochen viele Diskussionen mit den beiden Entwicklern vom ems-esp Gateway.
Die Datenstrukturen für Warmwasser wurden mit 3.7 geändert.Aktuell wurde aber die GW Firmware so angepasst, dass für Home Assistant weiterhin die alte Struktur verwendet werden kann.
Für ioBroker setze ich die Struktur auf die alte Version um, wenn die km200-Struktur verwendet wird.Falls nicht, übernehme ich die neue Struktur und Ihr müsst ggfs. Scripts / VIS anpassen.
Dann bitte die letzte stable Adapterversion verwenden. Es sprichts gegen ein Update auf die aktuelle 3.7.xx Firmware.
Schaut Euch einfach die Änderungen an. Ggfs. müsst Ihr "alte" States manuell löschen. Ich empfehle aber ein Löschen beim Start des Adapters (im Parameter Tab).Neu sind ohne km200-Struktur dann dhw1-Unterebenen in "boiler" und "thermostat". (ggfs. gibt es auch dhw2)
-
@tp1de sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Für ioBroker setze ich die Struktur auf die alte Version um, wenn die km200-Struktur verwendet wird.
Falls nicht, übernehme ich die neue Struktur und Ihr müsst ggfs. Scripts / VIS anpassen.Ok danke. Verstehe Dich so, dass ich bei Nutzung der EMS-ESP Struktur ohnehin anpassen müsste.
Dann such ich mir irgendwann demnächst mal einen ruhigen Tag aus und gehe das an.
Wie geschrieben, für WW ist das bei mir nicht allzu viel -
@tp1de
So, habe heute Abend den Schritt mal 'gewagt'
BBQ GW läuft nun mit 3.7.0-dev.12
Adapter habe ich parallel auf 3.5.0 gebracht.Wie von Dir geschrieben, gibt es in der EMS-ESP Datenstruktur (ich hatte die alte sicherheitshalber komplett gelöscht) nun unter Boiler und Thermostat je zwei neue Sub-Folder DHW und DHW1, wobei die Inhalte völlig identisch zu sein scheinen.
Ich habe meine entsprechenden Aliase angepasst und meine WW DP alle auf die neuen DP im jeweiligen DHW-Folder umgebogen.
Die Überprüfung aller anderen (HK1, HK2, Boiler, Mixer, usw.) DP, welche ich nutze, hat aktuell erstmal keine Änderungen in der Datenstruktur ergeben.Aktuell sieht erst einmal alles gut aus, den Rest zeigt dann die Zeit
-
@tp1de
Hallo,
Bei meinem Adapter erscheint seit 2 Tagen nur noch Error:
Ich hatte den Adapter im IO Broker schon komplett gelöscht und neu installiert. Verson 3.5.0
Keine Änderung
Bei den Objects gibt es nur einen Eintrag :
ems-esp->1->info->
connection : false
connection_ems: falseIm EMS GW habe ich mal einen neuen User, mit Admin Rechten, angelegt und den neuen API-Key im Adapter eingetragen. - Keine Änderung
Logge ich mich direkt in das EMS-Gateway ein, kann ich alle Heizungsparameter lesen und ändern.
Hier die Einträge vom Log nach de restart der EMS Instanz:
ems-esp.1
2024-06-03 13:44:30.259 error wrong formatting options for api/mqtt bool format in ems-esp settings -> correct: 1/0
ems-esp.1
2024-06-03 13:44:30.074 info starting. Version 3.5.0 in /opt/iobroker/node_modules/iobroker.ems-esp, node: v18.17.1, js-controller: 5.0.19
ems-esp.1
2024-06-03 13:44:29.955 debug States connected to redis: 127.0.0.1:9000
ems-esp.1
2024-06-03 13:44:29.900 debug States create User PubSub Client
ems-esp.1
2024-06-03 13:44:29.899 debug States create System PubSub Client
ems-esp.1
2024-06-03 13:44:29.894 debug Redis States: Use Redis connection: 127.0.0.1:9000
ems-esp.1
2024-06-03 13:44:29.881 debug Objects connected to redis: 127.0.0.1:9001
ems-esp.1
2024-06-03 13:44:29.879 debug Objects client initialize lua scripts
ems-esp.1
2024-06-03 13:44:29.861 debug Objects create User PubSub Client
ems-esp.1
2024-06-03 13:44:29.861 debug Objects create System PubSub Client
ems-esp.1
2024-06-03 13:44:29.860 debug Objects client ready ... initialize now
ems-esp.1
2024-06-03 13:44:29.846 debug Redis Objects: Use Redis connection: 127.0.0.1:9001Den einzigen error den ich habe ist:
error wrong formatting options for api/mqtt bool format in ems-esp settings -> correct: 1/0Welcher Eintrag ist das denn ?
Irgendeine Idee wie ich den Adapter wieder zum laufen bekommen kann ?
Bin für jede Hilfe dankbar.IOBroker: v6.13.16
Node.js: v18.17.1
NPM: 9.6.7Gruß
Jürgen -
@juergen01 Ist die PDF Doku oder das Protokoll nicht klar genug?
Du musst im ems-esp gateway die formatting options für api/mqtt bool auf 1/0 setzten.... es nervt etwas, dass immer neu zu erklären.
-
@juergen01 sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Node.js: v18.17.1
Deutet auf eine falsche/veraltete Installation hin. Bring das mittels
iob nodejs-update
auf einen aktuellen Stand.
-
@thomas-braun
Das ist aber nicht der Grund für den Stop des Adapters. Nachdem ich festgestellt habe, dass viele die Doku nicht lesen, habe ich eine Überprüfung für richtige ems-esp Gateway Parameter eingeführt. Der Adapter stoppt dann mit entsprechender Fehlermeldung. -
Warnung an alle die das beta-Repository benutzen und die Adapterversionen 4.x.x installieren:
Ab Version 4 wird die neue Adapter Konfiguration mit jsonConfig verwendet.
Vor einer Installation bitte die Instanz stoppen und nach Installation alle Parameter überprüfen, ob diese noch richtig sind.Geändert wurden:
- alle text-Felder zur Eingabe eines States sind jetzt neu definiert. (mit Auswahlmöglichkeit)
- Die Datenbank und Instanz im Parameter Tab wird jetzt anders eingegeben (Auswahl unter allen aktiven Instanzen)
- Die km200.csv Datei für das Original Gateway wird jetzt unter ../iobroker-data/files/ems-esp.x/ gespeichert (x: Instanz)
Die bisherige Lokation wird gelöscht. Die Datei muss also einmal neu aufgebaut werden. Danach kann der Adapter mit dieser Datei gestartet werden. Das beschleunigt den Start erheblich. - Es kann jetzt eine Datei own.csv ausgewählt werden. Diese muss selber erstellt werden und kann dann weniger States enthalten.
-
@tp1de sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Das ist aber nicht der Grund für den Stop des Adapters.
Das habe ich auch nicht behauptet.
Nur das nodejs 18.17.1 eine 'steinalte' Version ist, die offenbar aus dem alten nodesource-Repo stammt.
Muss eh auf das aktuelle Repo umgestellt werden. -
@pedder007 sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Ich habe meine entsprechenden Aliase angepasst und meine WW DP alle auf die neuen DP im jeweiligen DHW-Folder umgebogen.
Kleine Ergänzung/Korrektur doch noch:
Ich musste für die WW DP, die im Folder Boiler/dhw1 nehmen. Die DP in dhw sehen zwar genauso aus, zeigen aber nicht die richtigen Werte, bzw. beinhalten nicht die richtigen Funktionen.Abwarten wie es weiter geht ...
-
@tp1de sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
@juergen01 Ist die PDF Doku oder das Protokoll nicht klar genug?
Du musst im ems-esp gateway die formatting options für api/mqtt bool auf 1/0 setzten.... es nervt etwas, dass immer neu zu erklären.
Auch wenn der Eintrag auf 1/0 gesetzt ist bleibt es bei dem Fehler
Die Fehlermeldung : wrong formatting options for api/mqtt .... ist jetzt weg,
ems-esp.1
2024-06-03 21:24:33.603 info starting. Version 3.5.0 in /opt/iobroker/node_modules/iobroker.ems-esp, node: v20.14.0, js-controller: 5.0.19Nach Rücksprache mit BBQ-Kees sieht es nach einem HW-defekt im Gateway aus, da es z.Zt. nur noch read-only ist. Die Bus Einstellungen sind immer noch die gleichen mit denen das GW die letzten 8 Monate gearbeitet hat.
-
@juergen01 kommt nicht mehr im Protokoll nach Start der Instanz? Bitte nur Info kein Debug.
Funktionieren die Aufrufe ems-esp/api/system bzw. ../boiler im Browser? -
@tp1de Hallo, sorry für die späte Antwort,
mittlerweile reagiert die Heizung auch nicht mehr wenn ich mich direkt am EMS Gateway einlogge und mit der Weboberfläche Befehle eingebe,
Das Gateway arbeitet mittlerweile nur noch "Read-only".
Ich habe mal das "alte" Junkers Gateway MB-LAN zum Test an die Heizung angeschlossen, alle Befehle funktionieren. Also scheint das BUS-System der Heizung in Ordnung zu sein.Trotzdem hier das Log vom IOBroker vom Restart der Instanz:
ems-esp.1
2024-06-12 06:52:45.361 info starting. Version 3.5.0 in /opt/iobroker/node_modules/iobroker.ems-esp, node: v20.14.0, js-controller: 5.0.19
host.iobroker
2024-06-12 06:52:44.674 info instance system.adapter.ems-esp.1 started with pid 37324
host.iobroker
2024-06-12 06:52:41.648 info instance system.adapter.ems-esp.1 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
host.iobroker
2024-06-12 06:52:41.096 info stopInstance system.adapter.ems-esp.1 send kill signal
ems-esp.1
2024-06-12 06:52:41.038 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
ems-esp.1
2024-06-12 06:52:41.038 info terminating
ems-esp.1
2024-06-12 06:52:41.037 debug Interval cleared: 474
ems-esp.1
2024-06-12 06:52:41.024 info Got terminate signal TERMINATE_YOURSELFSo sieht das EMS-Activity Log aus:
EMS-Write(TX) ist ganz schlecht.Ich werde wohl ein neues Interface brauchen,
Gruß
Jürgen
-
@juergen01 Ich weiss nicht, ob ggfs. das Firmware Update falsch gelaufen ist. Gib im Browser bitte mal ein:
ems-esp/api/system und ..../boiler ein. Ersetze ems-esp durch die IP Adresse und poste das Ergebnis.
Woher kommen denn deine ganzen EMS Writes??????
Und warum hast denn MQTT aktiviert? Benutzt du Home Assistant?
Es gibt keine API Calls vom Adapter. Das ist mehr als merkwürdig.Stimmen die Adapter-Parameter und die EMS-ESP settings ?
Und ich würde das ems-esp ggfs. mit der Flasher-Tool komplett neu flashen, um Fehler auszuschließen.
https://emsesp.github.io/docs/Getting-Started/#first-time-install
Hilfe dann im EMS-ESP Discord Kanal. -
@tp1de sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
ems-esp/api/system
{"System Info":{"version":"3.7.0-dev.12","uptime":"008+13:49:14.468","uptime (seconds)":740954,"platform":"ESP32-S3","arduino":"ESP32 Arduino v2.0.16","sdk":"v4.4.7-dirty","free mem":208,"max alloc":171,"free caps":8361,"used app":2160,"free app":5968,"partition":"app1","reset reason":"Software reset CPU / Software reset CPU"},"Network Info":{"network":"WiFi","hostname":"ems-esp","RSSI":-53,"BSSID":"set","TxPower setting":0,"static ip config":true,"low bandwidth":false,"disable sleep":false,"enable MDNS":true,"enable CORS":false,"AP provision mode":"disconnected","AP security":"wpa2","AP ssid":"ems-esp"},"NTP Info":{"NTP status":"connected","enabled":true,"server":"192.168.10.3","tz label":"Europe/Berlin"},"MQTT Info":{"MQTT status":"connected","MQTT publishes":645835,"MQTT queued":0,"MQTT publish fails":0,"MQTT connects":2,"enabled":true,"client id":"esp32-9d188534","keep alive":60,"clean session":false,"entity format":0,"base":"ems-esp","discovery prefix":"homeassistant","discovery type":0,"nested format":2,"ha enabled":false,"mqtt qos":0,"mqtt retain":false,"publish time heartbeat":60,"publish time boiler":10,"publish time thermostat":10,"publish time solar":10,"publish time mixer":10,"publish time water":10,"publish time other":10,"publish time sensor":10,"publish single":true,"publish2command":true,"send response":true},"Syslog Info":{"enabled":false},"Sensor Info":{"temperature sensors":0,"temperature sensor reads":0,"temperature sensor fails":0,"analog sensors":0,"analog sensor reads":0,"analog sensor fails":0},"API Info":{"API calls":0,"API fails":0},"Bus Info":{"bus status":"connected, tx issues - try a different Tx Mode","bus protocol":"HT3","bus telegrams received (rx)":771906,"bus reads (tx)":74170,"bus writes (tx)":713,"bus incomplete telegrams":0,"bus reads failed":377,"bus writes failed":31286,"bus rx line quality":100,"bus tx line quality":100},"Settings":{"board profile":"S32S3","locale":"en","tx mode":3,"ems bus id":11,"shower timer":false,"shower alert":false,"hide led":false,"notoken api":false,"readonly mode":false,"fahrenheit":false,"dallas parasite":false,"bool format":6,"bool dashboard":1,"enum format":1,"analog enabled":true,"telnet enabled":true,"max web log buffer":50,"web log buffer":50},"Devices":[{"type":"boiler","name":"Condens 2500/Logamax/Logomatic/Cerapur Top/Greenstar/Generic HT3","device id":"0x08","product id":95,"version":"18.11","entities":70,"handlers received":"0x10 0x11 0x15 0x1C 0x18 0x19 0x34 0x04","handlers fetched":"0x14 0x16 0x33","handlers pending":"0xBF 0xC2 0x1A 0x35 0x26 0x2A 0x2E 0x3B","handlers ignored":"0x23"},{"type":"thermostat","name":"FW120","device id":"0x10","product id":192,"version":"53.02","entities":22,"handlers received":"0x06","handlers fetched":"0x016F 0x0165 0x01D3","handlers pending":"0xA3 0xA2 0x12 0x13 0x0170 0x0171 0x0172 0x0166 0x0167 0x0168 0xBB 0x23","handlers ignored":"0xBE"},{"type":"gateway","name":"KM200/MB LAN 2","device id":"0x0D","product id":189,"version":"01.10","entities":0,"handlers ignored":"0x18 0x01D3 0x01FB 0x0165 0x011E 0x022D 0x1C"},{"type":"controller","name":"HT3","device id":"0x09","product id":95,"version":"18.11","entities":0}]}/api/boiler:
{"heatingoff":0,"heatingactive":0,"tapwateractive":0,"selflowtemp":0,"heatingpumpmod":0,"outdoortemp":23.3,"curflowtemp":20.0,"rettemp":22.2,"syspress":0.5,"burngas":0,"burngas2":0,"fanwork":0,"ignwork":0,"oilpreheat":0,"burnminpower":0,"burnmaxpower":100,"burnminperiod":3,"boilhyston":-10,"boilhystoff":0,"heatingactivated":1,"heatingtemp":75,"heatingpump":0,"pumpmodmax":100,"pumpmodmin":10,"pumpdelay":3,"setflowtemp":0,"selburnpow":100,"curburnpow":0,"burnstarts":44,"burnworkmin":1592189,"burn2workmin":0,"heatworkmin":1538294,"heatstarts":18,"ubauptime":3944647,"servicecodenumber":0,"maintenancemessage":"H08","maintenance":"time","maintenancetime":2300,"nompower":28,"nrgtotal":18729.78,"nrgheat":18696.51,"dhw":{"settemp":50,"seltemp":50,"type":"buffer","comfort":"hot","flowtempoffset":35,"circpump":0,"chargetype":"3-way valve","hyston":0,"hystoff":0,"disinfectiontemp":75,"circmode":"2x3min","circ":0,"curtemp":50.3,"curtemp2":50.3,"curflow":0.0,"activated":1,"onetime":0,"disinfecting":0,"charging":0,"recharging":0,"tempok":1,"active":0,"3wayvalve":0,"setpumppower":0,"starts":26,"workm":53894,"nrg":33.27}}Wer die EMS Writes macht weiß ich nicht und MQTT war zum Testen eingeschaltet ob das Gateway überhaupt Daten liest.
Die Parameter sind gesetzt wie von Tag 1 an, da hat alles funktioniert.
DasEMS-Flasher Tool hatte ich schonmal probiert (Windows 10+11) aber leider kam immer nur :
Auch bei run as administratorLog from ESP-Flasher:
Auto-detected serial port: COM5
Using 'COM5' as serial port.
Connecting...
Detecting chip type... ESP32-S3
Connecting...Chip Info:
- Chip Family: ESP32
- Chip Model: ESP32-S3
- Number of Cores: 1
- Max CPU Frequency: 80MHz
- Has Bluetooth: NO
- Has Embedded Flash: NO
- Has Factory-Calibrated ADC: NO
- MAC Address: 34:85:18:9D:C3:FC
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Unexpected error: Error changing ESP upload baud rate: No serial data received.
Auto-detected serial port: COM5
Using 'COM5' as serial port.
Unexpected error: could not open port 'COM5': PermissionError(13, 'Zugriff verweigert', None, 5)Da ich schon andere ESP32 oder ESP8266 mit dem ESP-Flasher-v2.2.4.exe geflasht habe, nicht EMS, wundert mich das etwas.
Oder will das Tool einen bestimmten USB Device Treiber ?Gruß
Jürgen -
@juergen01 Du musst auf jedem Fall folgendes Flash-Tool verwenden: https://github.com/emsesp/EMS-ESP-Flasher/releases
Und achte darauf, dass Du das S3 Bin-File nimmst.
Da bei Dir die Browser API aufrufe funktionieren, wundere ich mich, dass der Adapter nicht startet.
Bist Du sicher. die richtige IP Adresse zu verwenden? -
@tp1de sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
@juergen01 Du musst auf jedem Fall folgendes Flash-Tool verwenden: https://github.com/emsesp/EMS-ESP-Flasher/releases
Mit genau diesem Tool hatte ich es probiert.
Und achte darauf, dass Du das S3 Bin-File nimmst.
Hatte ich auch.
Da bei Dir die Browser API aufrufe funktionieren, wundere ich mich, dass der Adapter nicht startet.
Bist Du sicher. die richtige IP Adresse zu verwenden?Ja, 100%. Ich drehe und resette nochmal an den Einstellungen.
-
@juergen01 Wohin sendet mqtt? (iobroker mqtt adapter?) Schalte mqtt mal testweise im ems-esp aus.
Du kannst auch mal die letzte Adapterversion von Github installieren.
Überprüfe dann bitte nochmal die Parameter der Instanz, da auf jsonConfig umgestellt wurde. -
@tp1de MQTT ist mittlerweile aus. Die Daten wurden zum IOBroker gesendet.
Ich ausserdem mal einen Reset auf dem Gateway gemacht und die Daten per Hand neu eingegeben. - Kein Restore von einem Backup.Beim starten kommt jetzt:
ems-esp.1
2024-06-12 13:59:12.505 info ems : polling every 60 secs
ems-esp.1
2024-06-12 13:59:12.504 info end of initializing EMS-ESP states
ems-esp.1
2024-06-12 13:59:09.583 info url1:http://192.168.168.22/api/thermostat
ems-esp.1
2024-06-12 13:58:57.556 info url1:http://192.168.168.22/api/boiler
ems-esp.1
2024-06-12 13:58:57.413 info url:http://192.168.168.22/api/system
ems-esp.1
2024-06-12 13:58:57.411 info start initializing EMS-ESP states
ems-esp.1
2024-06-12 13:58:57.410 warn *** you need to adjust your scripts / vis ui's to reflect these changes if necessary
ems-esp.1
2024-06-12 13:58:57.410 warn *** Version 3.7. might change structure and names of warm water / dhw objects
ems-esp.1
2024-06-12 13:58:57.409 warn *** There might be structural changes involved. Use is on your own risk
ems-esp.1
2024-06-12 13:58:57.409 warn *** You are using a non-productive version of ems-esp gateway firmware
ems-esp.1
2024-06-12 13:58:57.407 info EMS-ESP API version: 3.7.0-dev.12
ems-esp.1
2024-06-12 13:58:57.406 info formatting options for ems-esp gateway checked --> OK
ems-esp.1
2024-06-12 13:58:57.231 info starting. Version 3.5.0 in /opt/iobroker/node_modules/iobroker.ems-esp, node: v20.14.0, js-controller: 5.0.19Jetzt reden die wieder miteinander, warum - keine Ahnung.
Die Objekte wurden auch im Verzeichnisbaum angelegt.Ich lass das erstmal so laufen und beobachte was da so passiert.
Kann es sein das die EMS-Write von dem MB-LAN kommen ?
-
@juergen01 sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Kann es sein das die EMS-Write von dem MB-LAN kommen ?
Nein, ich glaube vielmehr dass MQTT das Problem war. Ich benutze nicht den ioBroker mqtt Broker, sondern Mosquitto Broker unter Proxmox. Sieht irgendwie so aus, als wenn der ioBroker MQTT Broker updates / writes zurückschickt und damit das Gateway zu macht.
Das MB-LAN kannst du ja mit dem Adapter parallel abfragen.
Und wenn du schon die aktuellste Beta Firmware für das Gateway benutzt, dann solltest Du auch die Beta-Version vom Adapter verwenden. (aktuell Version 4.2.0).