NEWS
Neuer Adapter EMS-ESP für Bosch Heizungen
-
@td1werd
Mich würde interessieren wie die JSON-Struktur aus ems-esp/api/system aussieht. Kannst Du die mal hier posten?Der ems-esp ioBroker-Adapter kann ja sowohl EMS-ESP per API auslesen, wie auch das IP-Gateway des KB192i.
Poste doch auch mal die Datenstrukturen des IP-Gateways (km200). Warmwasser Daten befinden sich dann unter DHW bzw. unter Solar. Was kommt aus der Buderus API an Daten zurück?Das EMS-ESP Gateway hat seinen Ursprung darin alte Heizungsanlagen ohne km200 Gateway steuern zu können.
Die Datenstruktur unterscheidet sich nicht unerheblich von der des Buderus API. Bei Buderus ist die Struktur an Funktionen angelegt und kann in der Regel auch unter DHW mehrere Warmwasser Kreise, mehrere Heizungskreise und mehrere Solarkreise unterscheiden. In der EMS-ESP ist die Struktur an den Systemkomponenten (Boiler, Thermostat etc) angegliedert - d.h. an die Komponenten die Daten senden / empfangen können. So gibt es MM100 als Mischerkreis, während bei KM200 diese Info entweder bei DHW oder beim Heizkreis (HC1 ... HC3) zu finden ist.ALs Konsequenz sind bei EMS-ESP mehrere identische "Geräte" wie 2 mal Mischer, 2 Boiler, 2 SM100/200 aktuell in der API bzw. im Dashboard nicht vorgesehen bzw. ansprechbar. Das wäre eine Erweiterung der Funktionalität und müsste im Github adressiert werden.
Aber poste mal die km200 Daten aus dem Adapter (am Besten als separate Instanz) und die EMS-ESP JSON Struktur.
-
Dankeschön für Deine Ausführungen. Ich komme soweit glaube auch mit...
hier mal die Rohdaten der JSON-Struktur{
"System": {
"version": "3.2.2b2", "uptime": "000+00:21:21.700", "uptime_sec": 1281, "freemem": 124
},
"Status": {
"bus": "connected", "bus protocol": "Buderus", "telegrams received": 5044, "read requests sent": 507, "write requests sent": 0, "incomplete telegrams": 5, "tx fails": 32, "rx line quality": 100, "tx line quality": 94, "dallas sensors": 0, "dallas reads": 0, "dallas fails": 0
},
"Devices": [
{ "type": "Boiler", "name": "Buderus Logano GB125/KB195i/Logamatic MC110 (DeviceID:0x08 ProductID:133, Version:02.09)", "handlers": "0x10 0x11 0x14 0x15 0x1C 0x18 0x19 0x1A 0x35 0x16 0x33 0x34 0x26 0x2A 0xD1 0xE3 0xE4 0xE5 0xE6 0xE9 0xEA" }, { "type": "Thermostat", "name": "RC300/RC310/Moduline 3000/1010H/CW400/Sense II (DeviceID:0x10, ProductID:158, Version:74.03)", "handlers": "0xA3 0x06 0xA2 0x12 0x2A5 0x2B9 0x2AF 0x29B 0x2A6 0x2BA 0x2B0 0x29C 0x2A7 0x2BB 0x2B1 0x29D 0x2A8 0x2BC 0x2B2 0x29E 0x2F5 0x31B 0x31D 0x31E 0x23A 0x267 0x240" }, { "type": "Mixer", "name": "MM100 (DeviceID:0x20, ProductID:160, Version:24.05)", "handlers": "0x2D7" }, { "type": "Solar", "name": "SM100/MS100 (DeviceID:0x2A, ProductID:163, Version:27.07)", "handlers": "0x7D6 0x7AA 0x7AB" }, { "type": "Solar", "name": "SM100/MS100 (DeviceID:0x31, ProductID:163, Version:27.05)", "handlers": "0xF9 0x358 0x35A 0x362 0x363 0x366 0x364 0x36A 0x380 0x38E 0x391" }, { "type": "Solar", "name": "SM200/MS200 (DeviceID:0x30, ProductID:164, Version:25.06)", "handlers": "0xF9 0x358 0x35A 0x362 0x363 0x366 0x364 0x36A 0x380 0x38E 0x391" }, { "type": "Gateway", "name": "KM200/MB LAN 2 (DeviceID:0x48, ProductID:189, Version:04.07)", "handlers": "" }
]
}
-
Sorry,
das nimmt hier viel Platz ein..
-
@td1werd
Ohh 3 Solarmodule mit unterschiedlichen id's und handlers. (noch nie gesehen ....)- Was ergibt ems-esp/api/solar ?
- Was erkennt der ems-esp iobroker Adapter für das km200 Gateway an Solar-Daten ?
Mir ist aktuell nicht bekannt, wie ich die unterschiedlichen id's per API V3 auslesen kann.
Ich sehe gerade Dein Github issue #164. MichaelDvP hat ja bestätigt, das aktuell nur ein Solarmodul unterstützt wird.
So kann der ems-esp ioBroker-Adapter die Daten nicht lesen, da API V3 das nicht unterstützt. -
Hallo tp1de,
zuerst einmal Danke für deine Arbeit einen eigenen Adapter für die EMS ESP Schnittstelle zu erstellen!
Ich habe mir gerade den Adapter in der V.0.9.6 heruntergeladen und installiert. Leider klappt die Kommunikation mit dem BBQ Gateway (Premium II (P2) mit 8266) nicht. Es wird zwar die Firmwareversion V2 (installiert ist V2.2.3b0) erkannt, aber die weiteren Objekte werden nicht geschrieben.
Im Log habe ich die Fehler: (von unten nach oben lesen)
Die IP Adresse habe ich fest eingegeben.
In der EMS ESP WebUI das Boolean Format auf 0/1 eingestellt.Leider verstehe ich den Punkt des EMS Access Token nicht.
-
Ist damit das User Passwort zum WebUI gemeint? Trage ich dieses im Adapter als Token ein klappt der Zugriff nicht.
-
In V2 des EMS ESP gibt es unter Security auch noch ein Superuser Passwort, auch damit gelingt der Zugriff nicht.
Ich würde mich sehr freuen wenn du mir eine Hilfestellung geben könntest.
Mit besten Grüßen
Johannes -
-
@johannes81
Stimmt die IP-Adresse ? Diese sollte mit http:// beginnen !
Gib malhttp://192.168.1.60/api?device=system&cmd=info
im Browser ein.
Dieser http request ohne vorangestelltes http:// erzeugt im Adapter den Fehler. Alles andere sind Folgefehler.Leider verstehe ich den Punkt des EMS Access Token nicht.
EMS Access Token gibt es nur im V3. Im V2 muss API enabled sein. Dann kann man Lesen und Schreiben.
Ab V3 gibt es dann den Token um unautorisiertes Schreiben zu verhindern. -
@tp1de said in Neuer Adapter EMS-ESP für Bosch Heizungen:
Hallo tp1de,
das Präfix http:// hat geholfen!
Danke für den Hinweis!
-
Um diese Art von Eingabefehlern zu vermeiden, habe ich eine neue Version 0.9.7 hochgeladen.
Diese ergänzt dann "http://" wenn dieser Präfix fehlt. -
@tp1de said in Neuer Adapter EMS-ESP für Bosch Heizungen:
@td1werd
Ohh 3 Solarmodule mit unterschiedlichen id's und handlers. (noch nie gesehen ....)- Was ergibt ems-esp/api/solar ?
- Was erkennt der ems-esp iobroker Adapter für das km200 Gateway an Solar-Daten ?
Mir ist aktuell nicht bekannt, wie ich die unterschiedlichen id's per API V3 auslesen kann.
Ich sehe gerade Dein Github issue #164. MichaelDvP hat ja bestätigt, das aktuell nur ein Solarmodul unterstützt wird.
So kann der ems-esp ioBroker-Adapter die Daten nicht lesen, da API V3 das nicht unterstützt.Es handelt sich ja eigentlich nicht um drei Solarmodule.
Es sind nur zwei: ein SM200 mit einem SM100 als Erweiterung wegen der Differenzregelung. Als Folge muss auch der zweite Solarkreis am Erweiterungsmodul angeschlossen werden. Beide haben ja den selben handlers.
Nun wird aber noch das Warmwassermodul MS100 (für eine Frischwasserstation) als Solarmodul erkannt/gedeutet.ems-esp/api/solar zeigt die Werte des SM200 - verwunderlich dabei, dass am Ende Werte des Warmwasser stehen. Habe ich glaube schon erwähnt.. aber nur mit 1°C bzw 0°C. das kann ja auch stimmen, da das kein Warmwassermodul sondern ein Solarmodul ist was am SM200 mit dran hängt.
Die Werte für die km200 Gateway habe ich noch nicht auslesen lassen. Habe statt dessen den km200 Adapter genommen. Dieser findet nur einen Solarkreis. Aber dafür die richtigen Warmwasserdaten an der entsprechenden Stelle.
Ich danke an dieser Stelle noch einmal ausdrücklich für Eure Bemühungen!!
Thomas
-
Die aktuelle Version 0.9.8 unterstützt nun auch das Auslesen von Dallas Sensoren.
-
@tp1de : Hi, ich mal wieder
Habe heute meinen kompletten Baum exportiert, dabei ist mir aufgefallen, dass die Außentemperatur im Objekt-Browser zwar richtig angezeigt wird (8,1),
im Export und unter Details aber den falschen Wert (21,1) liefert:
OB2_outddor_t1.jpg
Passiert bei meinen beiden Instanzen (jeweils gleiche Junkers-Thermen), sonst habe ich (noch) keine Aufälligkeiten bemerkt. Bug im Adapter oder im iobroker selbst?VG M
-
@manrum1 Worauf Du nicht alles achtest ....
In ioBroker wird zwischen Objekt-Daten (werden einmal angelegt) und den aktuellen States unterschieden.
Du hast die Objektdaten exportiert. Bei den km200 Objektdaten wird vom Adapter unter "native" die Rückantwort des km200 bei der Erst- bzw. Neuanlage angelegt. Dort ist auch der Wert enthalten (hat aber keine Bedeutung) ---- und hat nichts mit den States zu tun (d.h. den aktuellen Werten).Unter "native" habe ich bei km200-Datenpunkten einfach alle Info's vom Buderus / Bosch API-Call eingetragen (Erst-Anlage). Wenn Du die Objektstruktur löscht, dann werden alle Daten neu initialisiert. Value sollte ich vielleicht nicht eintragen .... vielleicht in einer neuen Version.
-
@tp1de Aha, danke für die Info. Wie kann ich dann den Objektbaum mit den aktuellen Daten exportieren?
-
@manrum1
Ich wüsste nicht wie ohne Javascript.
Aber wozu denn? -
@tp1de Ganz einfach, um die Daten einfach miteiender vergleichen zu können. Ich habe immer noch komische und total unrealistsche Verbrauchswerte, in der Realität ist alles vergleichbar und normal.
Die Statistiken weichen komplett voneinander ab, z. B. über ems-esp.x.heatSources.energyMonitoring.consumption:
Hier gibt es noch einen heatSources.energyMonitoring.correctionFactor, der steht einmal auf 0,8 und bei der anderen Heizung auf 1.
Aber wenn das nur mit Script geht mach ich mich mal auf die Suche
Danke noch mal
-
@manrum1 Geht es um die Gasverbräuche?
Ich habe festgestellt, das mein km200 Gateway am 8.12. um 18:30 Uhr ein Update bekommen hat (04.07.07).
Seitdem habe ich auch Unstimmigkeiten mit den Verbräuchen. Schon beim letzten Update gab es dort Fehler !
Habe mich beim Bosch-Team damals beschwert und 2 Wochen später war die alte Version wieder aktiv.Aktuell stimmen die Werte bei mir nur für die letzten 12 Monate mit dem Bosch / Junkers Homecon Portal überein.
Die MyBuderus APP zeigt zu hohe Werte an (30% Abweichung).Ich kann über diese "Qualität" bei der Softwareentwicklung nur irritiert den Kopf schütteln.
Der correctionFactor hat bisher nicht funktioniert.Ich habe mir auch vorgenommen, dies mal genauer zu untersuchen.
-
@tp1de Richtig, habe die gleiche Version auf beiden Heizungen.
Welches Homecom Portal meinst Du, ich dachte das wäre für Privatanwender nicht mehr verfügbar?
-
@manrum1 sagte in Neuer Adapter EMS-ESP für Bosch Heizungen:
Welches Homecom Portal meinst Du, ich dachte das wäre für Privatanwender nicht mehr verfügbar?
https://www.junkers-homecom.de/portal/#/
Dort wird auf die HomeCom Easy App verwiesen. Diese zeigt die gleichen falschen Daten wie die MyBuderus App.
Wegclicken dann funktioniert das Portal noch ...
Daneben gibt es noch die MyDevice App, mit der der Zugangscode für das km200 Gateway generiert wird.
Da blicke noch einer durch .... -
Nachdem ich mir die Detaildaten im km200 Interface angesehen habe, bleibt festzuhalten, dass mit der neuen Firmware einige Daten fehlen (4.Quartal 2020) und andere Daten-Sätze definitiv falsch sind.
D.h. seit einer Woche mit der neuen Firmwareversion funktionieren die Recordings nicht mehr !
Ein ähnliches Problem gab es bereits ca. vor einem Jahr ! Hat dann ein paar Wochen gedauert, bis es repariert war. -
Hallo zusammen,
ich nutze schon seit geraumer Zeit den km200-Adapter. Die Grundfunktionen zum Auslesen funktionieren soweit, jedoch bin ich bei der Verbrauchs-Auswertung nicht weitergekommen.
Du hast, wie es scheint, die Berechnung aus den Recording-Werten ganz gut verstanden Ich leider nicht.
Im Thread Adapter für Buderus KM200... habe ich versucht, Deine Erklärungen zu verfolgen. Ich habe es nicht hinbekommen, einen plausiblen kWh Verbrauch für die Heizung und für das Warm-Wasser zu loggen.
Da ich aufgrund eines Flüssiggastanks keinen Gaszähler als Vergleich habe, hatte ich irgendwie versucht, die Recording-Werte mit der Anzeige vom Buderus RC300 in Einklang zu bringen:
... aber egal. Im Thread oben hast Du es mir so schön schmackhaft gemacht, dass Dein Adapter die Verbrauchswerte direkt berechnet und in die Datenbank schreibt.
Deshalb wollte ich mir Deinen Adapter anschauen. Die Installation der Version 0.9.8 verlief gut. Es werden viele Werte ausgelesen (noch habe ich den "*" als Filter. Beschränken wollte ich es später, wenn ich sehe, was Du zum Loggen und Berechnen alles benötigst).
Leider sind aber die Recording-Werte rot und "(null)".
Deshalb gibt es natürlich auch die Zeilen im Log, mit dem Fehler beim Schreiben in die Datenbank, oder?2021-12-21 17:10:37.295 - info: smartmeter.0 (683) Received 7 values, 3 updated 2021-12-21 17:15:38.632 - info: smartmeter.0 (683) Received 7 values, 3 updated 2021-12-21 17:18:52.195 - info: host.iobroker "system.adapter.ems-esp.0" enabled 2021-12-21 17:18:52.320 - info: host.iobroker instance system.adapter.ems-esp.0 started with pid 31189 2021-12-21 17:18:54.598 - info: ems-esp.0 (31189) starting. Version 0.9.8 in /opt/iobroker/node_modules/iobroker.ems-esp, node: v12.22.6, js-controller: 3.3.21 2021-12-21 17:18:54.754 - info: ems-esp.0 (31189) starting. Version 0.9.8 in /opt/iobroker/node_modules/iobroker.ems-esp, node: v12.22.6, js-controller: 3.3.21 2021-12-21 17:18:55.760 - info: ems-esp.0 (31189) Start reading km200 data-structure 2021-12-21 17:19:38.092 - info: ems-esp.0 (31189) End reading km200 data-structure: 117 fields found 2021-12-21 17:19:38.094 - info: ems-esp.0 (31189) write km200 file:/opt/iobroker/iobroker-data//ems-esp/km200.csv 2021-12-21 17:19:38.121 - info: ems-esp.0 (31189) start initializing km200 states 2021-12-21 17:20:04.030 - info: ems-esp.0 (31189) end of initializing km200 states 2021-12-21 17:20:09.169 - info: ems-esp.0 (31189) km200:true 300 secs 2021-12-21 17:20:09.169 - info: ems-esp.0 (31189) recordings:true hour 2021-12-21 17:20:09.783 - warn: influxdb.0 (610) Error in received multiQuery: Exception: Array element #2: Query messing 2021-12-21 17:20:16.357 - warn: influxdb.0 (610) Error in received multiQuery: Exception: Array element #2: Query messing 2021-12-21 17:20:23.409 - warn: influxdb.0 (610) Error in received multiQuery: Exception: Array element #2: Query messing 2021-12-21 17:20:31.519 - warn: influxdb.0 (610) Error in received multiQuery: Exception: Array element #2: Query messing 2021-12-21 17:20:39.244 - warn: influxdb.0 (610) Error in received multiQuery: Exception: Array element #2: Query messing 2021-12-21 17:20:39.549 - info: smartmeter.0 (683) Received 7 values, 3 updated 2021-12-21 17:20:43.887 - warn: influxdb.0 (610) Error in received multiQuery: Exception: Array element #2: Query messing 2021-12-21 17:25:40.783 - info: smartmeter.0 (683) Received 7 values, 3 updated 2021-12-21 17:30:41.553 - info: smartmeter.0 (683) Received 7 values, 3 updated
Hast Du eine Idee, woran es liegen könnte?