Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter für Buderus KM200 (und eventuell auch anderen KMxxx)

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter für Buderus KM200 (und eventuell auch anderen KMxxx)

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      fisch @jmeister79 last edited by fisch

      @jmeister79

      sorry ich , dass ich es nicht kapiere 🙂 ist es in Zeile 12/13/14 so schonmal richtig?

      createState("javascript.0.Heizung.Verbrauch.actualCHPower.Daily", 0.0, {name: "Verbrauch Heizkreise heute", type: 'number', unit: 'kWh'});
      createState("javascript.0.Heizung.Verbrauch.actualDHWPower.Daily", 0.0, {name: "Verbrauch Warmwasser heute", type: 'number', unit: 'kWh'});
      createState("javascript.0.Heizung.Verbrauch.actualPower.Daily", 0.0, {name: "Verbrauch Gesamtsystem heute", type: 'number', unit: 'kWh'});
       
      schedule("* * * * *", function () {
       
          //verbrauch heizung
          var powertype =['actualCHPower','actualDHWPower','actualPower']
       
          for(var n=0; n<3; n++){
              var temp = getState('km200.0.recordings.heatSources.'+powertype[n]+'._Days').val;
             temp = temp.toString().replace(//[/g, /"");
            temp = temp.toString().replace(//]/g, /"");
            temp = temp.toString().replace(//\ /g, /"");
              var tempArray = temp.split(","); 
              var value1 = Math.round(100*tempArray.slice(-1))/100; //letztes element: heute
              setState('javascript.0.Heizung.Verbrauch.'+powertype[n]+'.Daily', value1, true);
          }
       
      });
      

      Jetzt meckert er bei Zeile 15

      javascript.0 (10765) script.js.Skript_1 compile failed:
      at script.js.Skript_1:15

      1 Reply Last reply Reply Quote 0
      • jmeister79
        jmeister79 last edited by

        andersrum 😉

        F 1 Reply Last reply Reply Quote 0
        • F
          fisch @jmeister79 last edited by fisch

          @jmeister79

          ich glaube es geht...moment

          jmeister79 1 Reply Last reply Reply Quote 0
          • jmeister79
            jmeister79 @fisch last edited by

            @fisch Unbenannt.png

            ichs agte doch man kann es nicht posten. Darum als Bild.

            Ich fidne du solltest erstmal blockly machen und dann die mal in JS switchen und guckenw as da steht und dichs tück für stück vortasten.

            Es gibt gute Online Editoren dafür:

            https://playcode.io/online-javascript-editor

            1 Reply Last reply Reply Quote 0
            • F
              fisch last edited by

              wow es geht @jmeister79
              Bildschirmfoto 2019-11-17 um 20.04.06.png

              vielen vielen dank für deine Geduld!!!

              was würdest du als
              schedule "* * * * *" nehmen?

              jmeister79 M 2 Replies Last reply Reply Quote 0
              • jmeister79
                jmeister79 @fisch last edited by

                @fisch

                ich hatte zum debuggen minütlich. Du willst es ja einmal am Tag machen also würde ich 5 0 * * * (00:05)

                Hier, nutze ich auch jedesmal aufs neue;-)
                https://crontab.guru/

                Hab gern geholfen, die anderen haben hier ja auch ejde Menge Geduld mit mir. 😉

                1 Reply Last reply Reply Quote 1
                • R
                  RichieXX last edited by

                  Hab auf die schnelle leider keine Möglichkeit gefunden, hier im Thread zu suchen, deshalb frage ich hier mal:
                  Kann ich mit diesem Adapter eine Bosch Anlage mit CW400/MB LAN2 steuern? Wenn ja, geht das über die Cloud oder eine API im lokalen LAN?

                  1 Reply Last reply Reply Quote 0
                  • M
                    mrMuppet last edited by

                    Vielen Dank für den Adapter. Habe ihn auch seit heute morgen im Einsatz.
                    Benutze ihn bisher ganz passiv und beobachte mal alle Werte.
                    Frage: Kann ich mir den Aussensensor sparen wenn ich irgendwelche Werte über iobroker in den Adapter schreibe? Hab da noch nichts gefunden.

                    Ich habe dafür einige wiederkehrende Fehlermeldungen im Adapter, deshalb habe ich mal mein Log angehängt:

                    km200.0	2019-11-28 13:23:01.024	info	(50449) Update State 7 err: TypeError: Cannot read property 'switchPoints' of undefinedat km200.get.then (/opt/iobroker/node_modules/iobroker.km200/km200.js:556:35)at process._tickCallback (internal/
                    km200.0	2019-11-28 13:23:01.024	warn	(50449) Skip service data of /dhwCircuits/dhw1/switchPrograms/A
                    km200.0	2019-11-28 12:53:01.042	info	(50449) Update State 7 err: TypeError: Cannot read property 'switchPoints' of undefinedat km200.get.then (/opt/iobroker/node_modules/iobroker.km200/km200.js:556:35)at process._tickCallback (internal/
                    km200.0	2019-11-28 12:53:01.041	warn	(50449) Skip service data of /dhwCircuits/dhw1/switchPrograms/A
                    km200.0	2019-11-28 12:23:00.990	info	(50449) Update State 7 err: TypeError: Cannot read property 'switchPoints' of undefinedat km200.get.then (/opt/iobroker/node_modules/iobroker.km200/km200.js:556:35)at process._tickCallback (internal/
                    km200.0	2019-11-28 12:23:00.989	warn	(50449) Skip service data of /dhwCircuits/dhw1/switchPrograms/A
                    km200.0	2019-11-28 11:53:01.047	info	(50449) Update State 7 err: TypeError: Cannot read property 'switchPoints' of undefinedat km200.get.then (/opt/iobroker/node_modules/iobroker.km200/km200.js:556:35)at process._tickCallback (internal/
                    km200.0	2019-11-28 11:53:01.046	warn	(50449) Skip service data of /dhwCircuits/dhw1/switchPrograms/A
                    km200.0	2019-11-28 11:23:01.025	info	(50449) Update State 7 err: TypeError: Cannot read property 'switchPoints' of undefinedat km200.get.then (/opt/iobroker/node_modules/iobroker.km200/km200.js:556:35)at process._tickCallback (internal/
                    km200.0	2019-11-28 11:23:01.024	warn	(50449) Skip service data of /dhwCircuits/dhw1/switchPrograms/A
                    km200.0	2019-11-28 10:53:01.022	info	(50449) Update State 7 err: TypeError: Cannot read property 'switchPoints' of undefinedat km200.get.then (/opt/iobroker/node_modules/iobroker.km200/km200.js:556:35)at process._tickCallback (internal/
                    km200.0	2019-11-28 10:53:01.022	warn	(50449) Skip service data of /dhwCircuits/dhw1/switchPrograms/A
                    km200.0	2019-11-28 09:22:59.452	info	(50449) Adapter km200 initialization finished with 116 states.
                    km200.0	2019-11-28 09:22:29.949	info	(50449) Slow Interval=6 hours, Slow-List: recordings.dhwCircuits.dhw1.actualTemp._Days,recordings.dhwCircuits.dhw1.actualTemp._Months,recordings.heatSources.actualCHPower._Days,recordings.heatSources
                    km200.0	2019-11-28 09:22:29.949	info	(50449) Fast Interval=2 min, Fast-List: dhwCircuits.dhw1.actualTemp,heatSources.actualModulation,heatSources.actualPower,heatSources.hs1.actualModulation,heatSources.hs1.actualPower,heatingCircuits.h
                    km200.0	2019-11-28 09:22:29.949	info	(50449) Interval=30 min, Norm-list: dhwCircuits.dhw1.charge,dhwCircuits.dhw1.chargeDuration,dhwCircuits.dhw1.currentSetpoint,dhwCircuits.dhw1.holidayMode.activated,dhwCircuits.dhw1.operationMode,dhwC
                    km200.0	2019-11-28 09:22:29.944	info	(50449) KM200 found 116 states, get their values now.
                    km200.0	2019-11-28 09:22:28.374	info	(50449) Services found: 123
                    km200.0	2019-11-28 09:21:36.805	info	(50449) km200.0 address: http://192.168.178.155
                    km200.0	2019-11-28 09:21:36.804	info	(50449) km200 initialization started...
                    km200.0	2019-11-28 09:21:36.669	info	(50449) starting. Version 2.0.3 in /opt/iobroker/node_modules/iobroker.km200, node: v10.16.3
                    
                    1 Reply Last reply Reply Quote 0
                    • M
                      mrMuppet last edited by

                      Ich habe mit meinem Heizungsinstallateur gesprochen. Ich habe ihn gefragt wie ich meine Therme Buderus GB172 24 kW Logamax ohne Wasserspeicher einstellen soll. Da ich über Homematic Heizkörperthermostate die Raumtemperatur einstelle brauche ich die Raumtemp ja eigentlich nicht zu berücksichtigen. Er meinte ich solle die Temperatur an der Therme immer etwas höher einstellen als bei den Heizkörpern und dann so lassen.

                      Genauso war seine Aussage, dass es nicht nötig sei in meinem Fall eine Nachabsenkung in der Therme zu Programmieren, weil die Nachabsenkung der Homematic Thermostate schon dazu führe, dass die Therme aus ginge (weil keine Wärmeabnahme).
                      Ist das richtig? Oder sollte ich die doppelte Absenkung (Therme und Heizkörperthermostate) einrichten?

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mrMuppet @mrMuppet last edited by

                        Die Therme auf geschlossene Ventile laufen zu lassen scheint nicht gut zu sein. Trotz moderner Technik! Vorlauf ganz schnell auf 100 Grad. Brauche ich doch ein Wärmeanforderungsskript, dass die Ventilstellungen überwacht und dann die Therme startet.
                        Wie macht ihr das denn?
                        Und welchen Datenpunkt verwendet ihr zum steuern im km200 Adapter. Ich habe bisher nur km200.0.heatingCircuits.hc1.temporaryRoomSetpoint gefunden, über den ich das machen kann. Gibt's da was eleganteres?

                        T 1 Reply Last reply Reply Quote 0
                        • T
                          tp1de @mrMuppet last edited by tp1de

                          @mrMuppet

                          Ich habe das zweite Zeitprogramm so eingestellt, dass es im permanenten Absenkmodus läuft.

                          So kann ich über den Datenpunkt km200.0.heatingCircuits.hc1.activeSwitchProgram bzw. bei mir auch hc2 (FB Hzg) die Heizkreise in den Absenkbetrieb schicken. Das "Durchlaufen" der Heizkreise unter der eingestellten Absenk-Grenztemperatur (bei mir 0° Aussentemperatur) ist gewollt.

                          Das Zeitprogramme A (aktiv) laufen aber bei mir auch zeitgesteuert. (Fussbodenheizung von 5 -20 Uhr da träge und Heizkörper von 6 bis 21 Uhr). Je nach Isolierung / Trägheit des Hauses ist das anzupassen.

                          Die Heizung durchlaufen zu lassen ist nicht anzuraten, da häufiges Takten des Brenners + unnötiger Energieverbrauch der Pumpen.

                          1 Reply Last reply Reply Quote 0
                          • M
                            mahescho last edited by

                            Damit es nicht so langweilig wird habe ich mal etwas neues: eine KM300. Hier gilt mal wieder mein Lieblingsspruch: Es geht zwar aber es funktioniert nicht 🙂

                            Die KM300 unterscheidet sich grundlegend von der KM200. Die KM300 bringt eine ganze Menge eigene Ein-/Ausgänge mit, die ich aber alle nicht brauche. Ich muss die (teuere) KM300 verwenden, da nur diese mit meiner Steuerung (4311) zusammenarbeitet. Dazu gibt es dann diese (ebenfalls teuere) "Logamatic Eco Soft" mit der man die Steuerung auslesen und parametrisieren kann.

                            Da ich nicht weiss was überhaupt geliefert wird habe ich das Filter-Feld im Adapter erst mal leer gelassen. Der Adapter kann auch eine Verbindung herstellen und etwas auslesen:

                            Auswahl_289.png

                            Alles was unter "gateway" zu finden ist sind die KM300 internen Ein-/Ausgänge und Einstellungen (Netz, TZ, etc.). Was mich interessiert, die Heizungssteuerung, wird dann aber nicht ausgelesen. Das müsste ja dann unter einem der "subsys" Einträge auftauchen. Mit der "Logamatic Eco Soft" kann ich den Status auslesen und es wird auch alles was interessant ist angezeigt:

                            Auswahl_290.png

                            Wie kann ich jetzt vorgehen um das zu bekommen was ich möchte, die Werte der Heizung im iBroker?

                            1 Reply Last reply Reply Quote 0
                            • L
                              loverz last edited by

                              Kann mir jemand sagen, ob ich über dem km200 Adapter auch meine an die Buderus Heizung angeschlossene Zirkulationspumpe beeinflussen kann?

                              Ich würde diese gerne bei Abwesenheit abschalten und bei Anwesenheit bzw. zu bestimmten Zeitpunkten einschalten.

                              1 Reply Last reply Reply Quote 0
                              • T
                                tp1de last edited by

                                Hatte ich doch schon geschrieben, dass die Zirkulationspumpe nicht steuerbar ist ....

                                L 1 Reply Last reply Reply Quote 0
                                • M
                                  mahescho last edited by mahescho

                                  Jetzt habe ich mal Debuging angeschaltet und das einzige was interessant aussieht ist das:

                                  2019-12-07 11:14:10.478  - info: km200.0 <span style="color:darkblue;">debug: try to get services for [ '/system/subsys2/bus/monMapTable' ]</span>
                                  2019-12-07 11:14:10.588  - info: km200.0 <span style="color:darkblue;">debug: Service[system.subsys2.bus.monMapTable]={ id: '/system/subsys2/bus/monMapTable',   type: 'busLogTable',   writeable: 0,   recordable: 0,   value: '80003A020081003B020084003E02008700410200880042020089004302009A005402009E0058020000005B0200' }</span>
                                  2019-12-07 11:14:10.609  - info: km200.0 <span style="color:darkblue;">debug: try to get services for [ '/system/subsys2/bus/paramMapTable' ]</span>
                                  2019-12-07 11:14:10.718  - info: km200.0 <span style="color:darkblue;">debug: Service[system.subsys2.bus.paramMapTable]={ id: '/system/subsys2/bus/paramMapTable',   type: 'busLogTable',   writeable: 0,   recordable: 0,   value: '01000000000700060000080007000009000800000A000900000B000A00000C000B00000D000C00000E000D000010000F00001100100000120011000013001200001400130000150014000016001500001700160000180017000019001800001A001900001B001A00001C001B00001D001C00001E001D00001F001E000020001F00002300220000240023000025002400002600250000' }</span>
                                  2019-12-07 11:14:10.739  - info: km200.0 <span style="color:darkblue;">debug: try to get services for [ '/system/subsys2/bus/contentOf' ]</span>
                                  2019-12-07 11:14:10.848  - info: km200.0 <span style="color:darkblue;">debug: Service[system.subsys2.bus.contentOf]={ id: '/system/subsys2/bus/contentOf',   type: 'busLogContent',   writeable: 1,   recordable: 0,   PacketStartIdx: 0,   value: '0E00000003000100000E0E0B075C7701' }</span>
                                  2019-12-07 11:14:10.868  - info: km200.0 <span style="color:darkblue;">debug: try to get services for [ '/system/subsys2/bus/liveUpdates' ]</span>
                                  2019-12-07 11:14:10.988  - info: km200.0 <span style="color:darkblue;">debug: Service[system.subsys2.bus.liveUpdates]={ id: '/system/subsys2/bus/liveUpdates',   type: 'streamData',   writeable: 0,   recordable: 0,   value: '02050110065DEB7B723F220080010102030301390305016E030701000309010C030B0100030D013A030F010B031101000200810101020303012A0305016E0307010003090100030B0100030D012A030F01FB031101000200840101600303014C030501000307010003090100030B010002008801013A0303014603050100030701A2030901FF030B0164030D014C030F01000311010003130103031501000317010003190121031B0100031D016E031F013F0321011403230100032501000327016E0329010002009E01010003030100030501000307010103090100030B016E030D01FF030F01000311010003130100031501000317010003190109031B0100031D010B031F01000321012403230100' }</span>
                                  2019-12-07 11:14:11.008  - info: km200.0 <span style="color:darkblue;">debug: try to get services for [ '/system/subsys2/bus/mirrorStatus' ]</span>
                                  2019-12-07 11:14:11.138  - info: km200.0 <span style="color:darkblue;">debug: Service[system.subsys2.bus.mirrorStatus]={ id: '/system/subsys2/bus/mirrorStatus',   type: 'stringValue',   writeable: 0,   recordable: 0,   value: 'COLLECTING_DONE',   allowedValues: [ 'COLLECTING_DATA', 'COLLECTING_DONE', 'NOT_CONNECTED' ] }</span>
                                  
                                  

                                  Die Nodes "monMapTable", "paramMapTable" und "liveUpdates" tauchen aber, wie man in meinem vorhergehden Post sieht, nicht im Objekt-Tree auf.

                                  1 Reply Last reply Reply Quote 0
                                  • L
                                    loverz @tp1de last edited by loverz

                                    @tom57 sagte in Adapter für Buderus KM200 (und eventuell auch anderen KMxxx):

                                    Hatte ich doch schon geschrieben, dass die Zirkulationspumpe nicht steuerbar ist ....

                                    Hab ich nicht gesehen, sorry!
                                    Hab sogar die Suche benutzt!

                                    Dann bleibt mir wohl nur übrig eine separate Leitung zu ziehen und über einen KNX Schaltaktor anzusteuern.

                                    jmeister79 1 Reply Last reply Reply Quote 0
                                    • jmeister79
                                      jmeister79 @loverz last edited by

                                      @loverz mit sowas wäre ich vorsichtig.

                                      Du greifst da arg in die Regelung ein.

                                      zB hat das einen Grund, dass die Pumpe bei niedrigen Temperaturen läuft,damit dir der Kram nicht einfriert.

                                      Mach dir unbedingt sehr viel Gedanken unter welchen Umständen du sie abschaltest und was die übrige Heizung dann tun kann.
                                      Zb wenn der Brenner aufheizt und die Heizung die Pumpe ansteuern will, du sie aber abgeschaltet hast usw. Er erwartet dann ja bei eienr gewissen Vorlauftemperatur irgendwann gewissen Raumtemperaturen und einen Rücklauf und all das passiert ja nicht mehr wie geplant. Das kann unter Umständen problematisch werden denke ich. (Bin kein Heizungsfachmann aber vielleicht sprichst du sowas man in einem Forum dafür an(?) )

                                      Nils

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        mrMuppet last edited by

                                        Hat von euch jemand ein schönes Script um die Werte km200.0.recordings.heatSources.hs1.actualPower._Days u.ä. schön darzustellen? Ich würde ja gerne so schöne Grafiken bauen wie Buderus sie auf Ihrer Website anbietet.
                                        37272b67-3c3c-467e-82fa-bb567b8a4cb2-image.png
                                        Also natürlich ergänzt um die Außentemperatur.
                                        Leider werden die Werte im km-Adapter etwas kompliziert angeliefert, sie kommen ja alle nur in einem Datenpunkt, mit Komma hintereinandergesetzt an. Ich hatte schon überlegt, sie am Komma zu trennen und dann wenigstens den aktuellen und den vom Vortag in einer Variable zu speichern. Dann kann ich wenigstens die vergangenen Daten schön in flot darstellen. Aber wie bekomme ich dann noch den aktuellen Wert da rein?
                                        Oder habt ihr ne andere Lösung?

                                        jmeister79 1 Reply Last reply Reply Quote 0
                                        • jmeister79
                                          jmeister79 @mrMuppet last edited by

                                          @mrMuppet siehe meine posts aus November. Zb am 217. Da hast du einen Ansatz die "arrays" auszulesen. Der rest ist iobroker Standard

                                          M 1 Reply Last reply Reply Quote 1
                                          • M
                                            mrMuppet @jmeister79 last edited by

                                            @jmeister79 Vielen Dank für die Hilfe. Leider läuft bei mir influx und ich kann den JS-code leider auch nicht auf die Schnelle anpassen.

                                            Deshalb hab ich es bei mir anders gelöst: abf2be94-7196-45c0-8141-bb84758175d3-image.png Es wird quasi die Verbrauch der gerade vergangenen Stunde (Tag, Monat) abgelegt und kann dann in flot dargestellt werden. Nur der aktuelle Verbrauch fehlt mir dann noch.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            99
                                            686
                                            172357
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo