NEWS
Neuer Adapter EMS-ESP für Bosch Heizungen
-
@chaot sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
wenn ich also an der Regelung den Maximalwert auf 50% setze
Versuch mal den Wert über den Adapter zu setzen: boiler.burnmaxpower.
-
@tp1de Hi, habe jetzt eine 2. Instanz installiert. Die erste läuft, bis auf ein paar Ungereimtheiten, problemlos.
-
Moin, habe das Problem das der Adapter bei mir nach kurzer Zeit
Abstürze. Die Daten werden beim erstenmal auch richtig gelesen aber dann gibt es folgende Fehler im log2021-06-27 02:18:06.662 - error: ems-esp.0 (5937) uncaught exception: Cannot read property 'val' of null 2021-06-27 02:18:06.663 - error: ems-esp.0 (5937) uncaught exception: Cannot read property 'val' of null 2021-06-27 02:18:06.663 - error: ems-esp.0 (5937) TypeError: Cannot read property 'val' of null at Immediate. (/opt/iobroker/node_modules/iobroker.ems-esp/main.js:356:72) at processImmediate (internal/timers.js:463:21) 2021-06-27 02:18:06.663 - error: ems-esp.0 (5937) Cannot read property 'val' of null 2021-06-27 02:18:06.664 - error: ems-esp.0 (5937) TypeError: Cannot read property 'val' of null at Immediate. (/opt/iobroker/node_modules/iobroker.ems-esp/main.js:356:72) at processImmediate (internal/timers.js:463:21) 2021-06-27 02:18:06.664 - error: ems-esp.0 (5937) Cannot read property 'val' of null 2021-06-27 02:18:06.665 - info: ems-esp.0 (5937) terminating 2021-06-27 02:18:06.665 - warn: ems-esp.0 (5937) Terminated (UNCAUGHT_EXCEPTION): Without reason 2021-06-27 02:18:07.165 - info: ems-esp.0 (5937) terminating 2021-06-27 02:18:07.165 - warn: ems-esp.0 (5937) Terminated (UNCAUGHT_EXCEPTION): Without reason
-
@iccube
Ich vermute, dass bei Dir die Rücklauftemperatur nicht zur Verfügung steht.
Diese wird benötigt, um den Wirkungsgrad zu berechnen. Gibt es bei Dir den State ems-esp.0.boiler.rettemp?Deaktiviere doch mal die Effizienzberechnung (unterste Checkbox). Funktioniert der Adapter dann?
Ergänzung: Ich habe gerade den Code angepasst und nun sollte der Fehler abgefangen werden.
Wenn keine Rücklauftemperatur zur Verfügung steht, dann wird im Moment diese auf 10°C tiefer als die Vorlauftemperatur gesetzt.
-
@manrum1 sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Die erste läuft, bis auf ein paar Ungereimtheiten
Was sind denn die "Ungereimtheiten" ?
-
@tp1de ja den state habe ich nicht. Habe die neue Version installiert seit dem läuft der Adapter. Werde weiter beobachten ob die Werte soweit passen. Danke für dein Adapter auf den habe ich schon lange gewartet
-
Hallo liebe User,
Wer hat den ems-esp Adapter am Laufen?
Habt Ihr Rebooting Probleme mit dem ems-esp Gateway? Wie sieht Eure Uptime aus? ems-esp.0.esp.uptimeIch habe aktuell 1-2 Neustarts des ems-Gateways am Tag. Die bisherige ioBroker Adapter Version hat das gar nicht registriert, die aktuellste Version gibt eine Fehlermeldung aus, wenn das Gateway nicht erreichbar ist.
Es fehlen dann vielleicht 1-2 Datensätze für 30-60 Sekunden. Für ioBroker kein Problem aber wir versuchen die Ursache zu finden.Schreibt doch bitte einmal, wie es bei Euch aussieht.
-
@tp1de Ich habe keine Probleme (bis auf die 123% MaxPower).
Ebenfalls auch keine Neustarts. Aber das liegt vermutlich daran das ich ein D32 Modul verwende das einen anderen Spannungsregler hat als die normalen ESP32 Mini Boards. Mit denen hatte ich früher auch öfter Probleme wenn das Teil im Gehäuse war (Abwärme) oder die Last am Ausgang recht hoch war.Mit der MaxPower mach dir da auch keine Gedanken. Das kommt schon vom ESP so rüber und scheint aus der Heizung so rauszukommen. Ich vermute mal das die 100 die im Ruhezustand dort steht eigentlich eine 0 sein sollte.
Uptime 002+16:53:44.405
-
@chaot Danke für das Feedback. Eine mögliche Überhitzung des ESP32 Mini ist ein guter Tipp.
Ich verwende den AZDelivery ESP32 D1 Mini NodeMCU.Wie bindest Du denn das D32 Modul ein. Verwendest Du noch die Pegelwandler-Platine von BBQKees oder etwas selber gebautes?
Was mir auffällt, dass Du nur ca. 25% der #telegrams received pro Zeiteinheit hast wie ich. Bei Dir ca. 53-54 pro Minute, bei mir ca. 200 pro Minute. Die müssen natürlich verarbeitet werden und erzeugen CPU-Last.
KB192i Kessel mit IP-inside (KM200) , RC310, MM100, und 2 Heizkreise (Radiator und FB)
-
@tp1de Ich habe noch das ganz alte Pegelwandler Modul das er vor ein paar Jahren (2017 oder 2018) mal entwickelt hat. Damals war es noch ein Abenteuer den auf einen ESP8266 zu installieren und per MQTT in den ioBroker zu bringen.
Für mich hat er ganz am Anfang die Sieger Heizung mit implementiert.
Der ursprüngliche Link:
https://github.com/bbqkees/Nefit-Buderus-EMS-bus-Arduino-DomoticzAn der Menge der Telegramme habe ich soweit ich mich erinnern kann nichts verändert. Kann man überhaupt das Polling einstellen? Wenn ja, würde ich an deiner Stelle etwas runtergehen. Die schiere Menge an Daten wird ja eh nicht gebraucht.
Einen NodeMCU habe ich noch bei meiner Beleuchtung im Einsatz. Der wird demnächst rausfliegen, weil der ab und zu kurz ausfällt. Allerdings läuft der dort seit 2 Jahren und ich habe das für Alterung gehalten. Früher ist mir das nie aufgefallen.
Für ES32 verwende ich normalerweise diese Platinen:
https://de.aliexpress.com/item/33052923558.html?
Da habe ich genug Platz und kann alles anklemmen, auch wenn die etwas größer sind. -
Neue Version EMS_ESP Firmware v3.1.2b1 hat Breaking Changes bei den Feldnamen.
Die aktuellste Firmware hat geänderte Namen bei den Syteminfos unter ems-esp.0.esp. Das # in den Namen ist entfallen. Damit werden nun neue States vom Adapter angelegt. Ich lösche aber aktuell nicht die alten States. Das muss dann manuell geschehen.
-
@tp1de bei mir läuft alles soweit stabil habe auch keine reeboots die werte stimmen auch überein.
ich benutze auch das modul von bbqkees hat noch den esp 8266 drauf denn ich dann gegen den esp32 getauscht habe.
Kann ich auch die eingestellt Raum Temperatur über den adapter ändern ? -
@iccube sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Kann ich auch die eingestellt Raum Temperatur über den adapter ändern ?
Ja sollte generell funktionieren ist aber je nach Thermostat / Heizung etwas anders.
Bei mir (RC310) gibt es ems-esp.0.heatingCircuits.hc1.comforttemp - das ist die Temperaturvorgabe tagsüber. Die kann verändert werden und bleibt dann als Parameter gesetzt. Mit ems-esp.0.heatingCircuits.hc1.seltemp sollte die Temperatur temporär, d.h. bis zum nächsten definierten Schaltzeitpunkt verändert werden. Probier mal aus,
Generell gilt aber damit wird nur die Vorlauftemperatur in Abhängigkeit des Außentemperatur und der eingestellten Heizukurve verändert. Darüber hinaus kannst Du ggfs. auch den Raumeinfluss mit berücksichtigen: ems-esp.0.heatingCircuits.hc1.roominfluence. Bedenke aber, dass dann ggfs. die Vorlauftemperatur für den ganzen Heizkreis angepasst wird.
-
@iccube sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
@tp1de bei mir läuft alles soweit stabil habe auch keine reeboots die werte stimmen auch überein.
ich benutze auch das modul von bbqkees hat noch den esp 8266 drauf denn ich dann gegen den esp32 getauscht habe.Scheinbar bin ich der Einzige, beim dem der ESP32 regelmäßig rebooted wird.
Hat zwar für den Adapter keine Auswirkung, ist aber unschön. Ich suche noch nach der Ursache. -
Ich habe gerade eine neue Version des Adapters hochgeladen: v0.9.3
Dabei sind die Polling Frequenzen für EMS-ESP und KM200 nun Parameter der Instanz.
Die Standardparameter sind nun aber erhöht: EMS-ESP auf 60 und KM200 auf 300 Sekunden.Diese können verändert werden auf Minimum 15 bzw. 90 Sekunden - d.h. die bisherigen Werte.
-
@tp1de Hi, die Ungereimtheitenhabe ich in der Verbrauchsstatistik. Diese passen irgendwie nicht zu denen aus der APP. Ich speichere die recordings in der influxdb und betreibe 2 Heizungen jeweils mit MBLAN. Beide Häuser liegen ca. 200m auseinander und sind praktisch identisch (Baujahr, Typ, etc.). Auch der Gasverbruach nach Rechnung ist ziemlich gleich. Nach der Statistik braucht aber die intanz.0 teilweise doppelt soviel wie die instanz.1.
- Stundenwerte habe ich gerade keine, hat schon mal funktioniert, liegt ev. an meinen Grafana-EInstellungen
km200.1.recordings.heatSources.actualCHPower._Hours [0,0,0,0,0,0,0.233,0.467,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1.3,0,0.45,0,0,0,0,0,0,0,0] km200.1.recordings.heatSources.actualDHWPower._Hours [0,0.233,0,0,0.133,0,0,0,0.817,0.3,0.1,0.217,0.05,0,0,0.05,0.05,0,0.05,0,0,0,0.05,0.15,0,0.133,0,0.233,0.15,0,0.117,0.183,0,0.3,0,0,0.233,0,0,0,0,0.1,0.567,0.233,0.233,1.8,0,0,0,0,0,0,0,0,0.283,0.15,0,0.267,0.05,0,0.15,0.317,0,0,0] km200.1.recordings.heatSources.actualPower._Hours [0,0,0,0,0,0,0.667,0.233,0.767,0.483,0.1,0.05,0,0,0,0.05,0,0,0,0.2,0,0,0.05,0.133,0,0,0,0.15,0,0,0.65,0.167,0,0.333,0,0,0,0.4,0,0.167,0,0.4,0.15,0,0.467,1.817,0,0,0,0.233,0,0,0.233,0,1.417,0.15,0.233,0.467,0.05,0,0.15,0.317,0,0,0]
- in den Montatswerten bei instanz1 (SF) fehlt der März, das liegt aber an den vorhandenen Daten, hier die aus dem km200.1. Kann nicht erklären wo das NaN herkommt.
km200.1.recordings.heatSources.actualCHPower._Months [773.083, 303.817, 303.683,230.133, 1047.2, 1132.383,2125.05, 2339.1, 2553.583,3087.45, 2143.567, 539.2,988.333, 388.283, 242.983,154.017, 617.667, 1279.3,1875.267, 2726.75, 749.917,NaN, 348.2, 244.883,518.783, 190.317, 6.883] km200.1.recordings.heatSources.actualDHWPower._Months [245.633, 289.9, 280.683, 230.017,358.583, 272.65, 352.5, 351.867,343.683, 360.917, 314.667, 149.333,276.65, 254.5, 222.067, 153.967,264.85, 291.083, 284.117, 358.567,83.417, NaN, 24.717, 15.133,85.05, 111.467, 5.017] km200.1.recordings.heatSources.actualPower._Months [773.083, 303.817, 303.683,230.133, 1047.2, 1132.383,2125.05, 2339.1, 2553.583,3087.45, 2143.567, 539.2,988.333, 388.283, 242.983,154.017, 617.667, 1279.3,1875.267, 2726.75, 749.917,NaN, 348.2, 244.883,518.783, 190.317, 6.883]
Das kann natürlich nicht an Deinem Adapter liegen, aber mein Vorschlag: Damit man das besser nachvollziehen und zum km200 vergleichen kann, wäre es gut, wenn du die Statistikwerte so wie der km200 Adapter als Array in die Datenpunkte ablegen würdest.Ich habe noch 0.9.0 am Laufen. Abstürze habe ich keine.
Danke für Deine tolle Arbeit!
-
@manrum1
Mit Influxdb hatte ich auch erhebliche Probleme. Z.T. auch mit mySQL. Bei MySQL bekam ich "packets out of order" Fehler.
Das liegt an der aktuellen Logik, dass ich jede Stunde die Daten lösche und dann neu schreibe. Wenn das Schreiben zu schnell geht, dann kommen bei MySQL Fehler. Versuch doch mal versuchsweise MySQL oder installiere mal 0.9.3 da ist ein bischen was geändert (250 msek wait nach jedem SQL insert)..Arraywerte wie im km200 Adapter geht nicht, da SQL-Fortschreibung eingeschaltet ist und dann die arrays fortgeschrieben werden.
Bei den km200 arrays hatte ich immer das Problem nicht genau zu wissen, für welches Datum die Werte stehen. Auch der km200 spinnt manchmal und Werte fehlen. -
@tp1de Danke für die Antwort, aber mysql hatte ich schon mal installiert und auch einige für mich unerklärlichen Effekte. Ich glaube, dass der NaN aus der Heizung selber kommt und nichts mit dem Adapter zu tun hat.
Noch eine Frage: Wie berechnest du die Durchschnittswerte?: ems-esp.0.recordings.actualDHWPower.avg12m, ems-esp.0.recordings.actualPower.avg12m -
@manrum1 sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Noch eine Frage: Wie berechnest du die Durchschnittswerte?: ems-esp.0.recordings.actualDHWPower.avg12m, ems-esp.0.recordings.actualPower.avg12m
ems-esp.0.recordings.actualDHWPower.avg12m ist der monatliche Durchschnittswert für Warmwasser-Erzeugung über 12 Monate
ems-esp.0.recordings.actualPower.avg12m ist der Gesamtverbrauch der letzten 12 Monate. (gleitender 12 Monatsdurchschnitt) .Ich glaube die Namen sind verbesserungsbedürftig. Ich habe eh vor in der nächsten Zeit die Recordings noch einmal zu überarbeiten. Ich habe aber Probleme mit dem asynchronen Verhalten des Befehls adapter.sendToAsync.
Mit "await" sollte er warten, bis der Befehl ausgeführt wurde, bei Datenbanken (mySQL / InfluxDB) scheint das aber nicht zu funktionieren. Früher hatte ich JS-Skripts mit SQL-Befehlen, die funktionieren aber nicht für InfluxDB. -
@tp1de sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
@chaot
Der Adapter verwendet Api V3 welche nur mit ESP32 funktioniert. Wenn Du noch den noch nicht hast, dann musst Du den kaufen. Alibaba 3 bis 4 Euro ... bei Amazon 8 Euro. Und dann die ESP32 dev Firmware einmal manuell flashen. In den Settings kannst Du dann einstellen ob der Token für writes verwendet wird. Probier erst einmal ohne.
Unter security settings siehst Du dann den Token per user .... SchlüsselsymbolIch blicke trotz dieses Threads und der Docu nicht durch.
Von BBQKees habe ich einen "EMS-ESP" 2020 erworben. Der tut auch brav bei meiner Junkers Daten liefern.
Ist mein EMS-ESP für deinen Adapter aureichend oder gänzlich falsch? Ich fürchte zu verstehen, es geht nur mit einem ESP32 und ich habe da einen ESP 8266 verbaut.LG und Dank, mxa