Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Modbus Adapter mit Ökofen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

Modbus Adapter mit Ökofen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
28 Beiträge 8 Kommentatoren 7.9k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    Mangid
    schrieb am zuletzt editiert von
    #15

    Hi,

    ja da ich sowiso mal eine Wartung machen muss bietet sich das an!

    Naja wie du im unteren Bereich siehst gibt es auch eine set Möglichkeit!

    Also sollte die Steuerung möglich sein! Aber kann es dir dann berichten

    wenns so weit ist!

    Ich habe den Modbus mittlerweile wieder deaktiviert da er nur Fehler wirft

    und teilweise keine Werte liefert!

    Ja anscheinend ist das ganze erstmals nur wieder im Testbetrieb war damals

    beim Modbus in Version HomeAutomation auch so un da ich dann einen Bug

    gefunden habe war das anschließende Update gratis! :D

    Wenn du willst halte ich dich am laufenden!

    Lg

    Mangid

    1 Antwort Letzte Antwort
    0
    • L Offline
      L Offline
      looxer01
      schrieb am zuletzt editiert von
      #16

      @Mangid:

      Wenn du willst halte ich dich am laufenden! `

      sehr gerne. Wenn das mit dem set funktioniert, dann würde ich mir ein upgrade ebenfalls überlegen.

      Dann hätte ich ein neues Projekt ;)

      vG Looxer

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        Mangid
        schrieb am zuletzt editiert von
        #17

        Hi,

        so gestern war es so weit! Der Servicetechniker war da und hat die neue Version draufgespielt!

        Im Anhang siehst du einmal die Startseite und die Werte die bei mir zurückkommen!

        Alle Variablen die nicht mit L_ starten kannst du setzen!

        Beispiel zum schreiben einer Variable:

        http://10.0.0.20:4321/xxxx/hk1_temp_setback=180

        Bin erstmal recht zufrieden! Funktioniert für mich besser als mit dem Modbus!

        lg

        Niki
        3790_oekofen_json_werte.txt
        3790_oekofen_json_allg.txt

        1 Antwort Letzte Antwort
        0
        • L Offline
          L Offline
          looxer01
          schrieb am zuletzt editiert von
          #18

          Hi Mangid,

          klingt ja super.

          Hast du das alles schon mit JS umgesetzt ?

          Lesen und Schreiben

          Dann würde ich mir das gerne mal -in Vorbereitung- ansehen.

          Geht das ?

          vG

          Looxer

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            Mangid
            schrieb am zuletzt editiert von
            #19

            Hi,

            habs nur mal schnell in javascript gemacht!

            Schreiben hab ich noch nicht über ioBroker gemacht nur über den Browser und

            da funktioniert es!

            var logging = true;
            var basePath = 'http://10.0.0.20:4321/xxxx/';
            var allPath = basePath + 'all';
            
            schedule("* * * * *",
                function () {
                    log('Start Ökofen Daten einlesen');
                    objekteAnlegen();
                    readAllAlues();
                });
            
            function readAllAlues() {
                if (logging) log('Start Ökofen Daten einlesen');
                var request = require('request');
            
                request(allPath, function (error, response, body) {
                    if (!error && response.statusCode == 200) {
                                    var result;
                        try{
                            result = JSON.parse(body);
                            var data = JSON.stringify(result, null, 2);
                            //if (logging) log(data);
                            //if (logging) log('Kein Fehler :-D');
                        } catch (e) {
                            if (logging) log('Parse Fehler:' + e);
                        }    
                        if (result) {
                            setState("Pellematic.Ambient.Aussentemperatur", parseFloat((result.system.L_ambient * 0.1).toFixed(1)));
            
                            setState("Pellematic.Heizkreis.Raumtemperatur_ist", parseFloat((result.hk1.L_roomtemp_act * 0.1).toFixed(1)));
                            setState("Pellematic.Heizkreis.Raumtemperatur_soll", parseFloat((result.hk1.L_roomtemp_set * 0.1).toFixed(1)));
                            setState("Pellematic.Heizkreis.Absenktemperatur_soll", parseFloat((result.hk1.temp_setback * 0.1).toFixed(1)));
                            setState("Pellematic.Heizkreis.Vorlauftemperatur_ist", parseFloat((result.hk1.L_flowtemp_act * 0.1).toFixed(1)));
                            setState("Pellematic.Heizkreis.Vorlauftemperatur_soll", parseFloat((result.hk1.L_flowtemp_set * 0.1).toFixed(1)));
                            setState("Pellematic.Heizkreis.Status", result.hk1.L_statetext);
            
                            setState("Pellematic.Puffer.Temperatur_oben_ist", parseFloat((result.pu1.L_tpo_act * 0.1).toFixed(1)));
                            setState("Pellematic.Puffer.Temperatur_oben_soll", parseFloat((result.pu1.L_tpo_set * 0.1).toFixed(1)));
                            setState("Pellematic.Puffer.Temperatur_unten_ist", parseFloat((result.pu1.L_tpm_act * 0.1).toFixed(1)));
                            setState("Pellematic.Puffer.Temperatur_unten_soll", parseFloat((result.pu1.L_tpm_set * 0.1).toFixed(1)));
                            setState("Pellematic.Puffer.Ladepumpe", parseFloat(result.pu1.L_pump));
                            setState("Pellematic.Puffer.Status", result.pu1.L_statetext);
            
                            setState("Pellematic.Warmwasser.Temperatur_ist", parseFloat((result.ww1.L_ontemp_act * 0.1).toFixed(1)));
                            setState("Pellematic.Warmwasser.Temperatur_soll", parseFloat((result.ww1.L_temp_set * 0.1).toFixed(1)));
                            setState("Pellematic.Warmwasser.Pumpe_an", JSON.parse(result.ww1.L_pump));
                            setState("Pellematic.Warmwasser.Status", result.ww1.L_statetext);
                            setState("Pellematic.Warmwasser.Modus", parseFloat(result.ww1.mode_auto));
            
                            setState("Pellematic.Ofen.Modulation", parseFloat(result.pe1.L_modulation));
                            setState("Pellematic.Ofen.Kesseltemperatur_ist", parseFloat((result.pe1.L_temp_act * 0.1).toFixed(1)));
                            setState("Pellematic.Ofen.Kesseltemperatur_soll", parseFloat((result.pe1.L_temp_set * 0.1).toFixed(1)));
                            setState("Pellematic.Ofen.Feuerraumtemperatur_ist", parseFloat((result.pe1.L_frt_temp_act * 0.1).toFixed(1)));
                            setState("Pellematic.Ofen.Feuerraumtemperatur_soll", parseFloat((result.pe1.L_frt_temp_set * 0.1).toFixed(1)));
                            setState("Pellematic.Ofen.Status", result.pe1.L_statetext);
                            setState("Pellematic.Ofen.Brennerstarts", parseFloat(result.pe1.L_starts));
                            setState("Pellematic.Ofen.Brennerlaufzeit", parseFloat(result.pe1.L_runtime));
                            setState("Pellematic.Ofen.Mittlere_Laufzeit", parseFloat(result.pe1.L_avg_runtime));
                        }
                    } else {
                        log('Fehler:' + error);
                    }
            
                });   // Ende request 
                log('Daten aus Ökofen eingelesen');
            }
            
            function objekteAnlegen () {
                createState('Pellematic.Ambient.Aussentemperatur', {name: 'Außentemperatur', type: 'number', unit:'°C'});
            
                createState('Pellematic.Heizkreis.Raumtemperatur_ist', {name: 'Raumtemperatur ist', type: 'number', unit:'°C'});
                createState('Pellematic.Heizkreis.Raumtemperatur_soll', {name: 'Raumtemperatur soll', type: 'number', unit:'°C'});
                createState('Pellematic.Heizkreis.Absenktemperatur_soll', {name: 'Absenktemperatur soll', type: 'number', unit:'°C'});
                createState('Pellematic.Heizkreis.Vorlauftemperatur_ist', {name: 'Vorlauftemperatur ist', type: 'number', unit:'°C'});
                createState('Pellematic.Heizkreis.Vorlauftemperatur_soll', {name: 'Vorlauftemperatur soll', type: 'number', unit:'°C'});
                createState('Pellematic.Heizkreis.Status', {name: 'Status', type: 'string'});
            
                createState('Pellematic.Puffer.Temperatur_oben_ist', {name: 'Temperatur oben ist', type: 'number', unit:'°C'});
                createState('Pellematic.Puffer.Temperatur_oben_soll', {name: 'Temperatur oben soll', type: 'number', unit:'°C'});
                createState('Pellematic.Puffer.Temperatur_unten_ist', {name: 'Temperatur unten ist', type: 'number', unit:'°C'});
                createState('Pellematic.Puffer.Temperatur_unten_soll', {name: 'Temperatur unten soll', type: 'number', unit:'°C'});
                createState('Pellematic.Puffer.Ladepumpe', {name: 'Ladepumpe', type: 'number', unit:'%'});
                createState('Pellematic.Puffer.Status', {name: 'Status', type: 'string'});
            
                createState('Pellematic.Warmwasser.Temperatur_ist', {name: 'Temperatur ist', type: 'number', unit:'°C'});
                createState('Pellematic.Warmwasser.Temperatur_soll', {name: 'Temperatur soll', type: 'number', unit:'°C'});
                createState('Pellematic.Warmwasser.Pumpe_an', {name: 'Pumpe an', type: 'boolean'});
                createState('Pellematic.Warmwasser.Status', {name: 'Status', type: 'string'});
                createState('Pellematic.Warmwasser.Modus', {name: 'Modus', type: 'number'});
            
                createState('Pellematic.Ofen.Modulation', {name: 'Modulation', type: 'number', unit:'%'});
                createState('Pellematic.Ofen.Kesseltemperatur_ist', {name: 'Kesseltemperatur ist', type: 'number', unit:'°C'});
                createState('Pellematic.Ofen.Kesseltemperatur_soll', {name: 'Kesseltemperatur soll', type: 'number', unit:'°C'});
                createState('Pellematic.Ofen.Feuerraumtemperatur_ist', {name: 'Feuerraumtemperatur ist', type: 'number', unit:'°C'});
                createState('Pellematic.Ofen.Feuerraumtemperatur_soll', {name: 'Feuerraumtemperatur soll', type: 'number', unit:'°C'});
                createState('Pellematic.Ofen.Status', {name: 'Status', type: 'string'});
                createState('Pellematic.Ofen.Brennerstarts', {name: 'Brennerstarts', type: 'number'});
                createState('Pellematic.Ofen.Brennerlaufzeit', {name: 'Brennerlaufzeit', type: 'number', unit:'h'});
                createState('Pellematic.Ofen.Mittlere_Laufzeit', {name: 'Mittlere Laufzeit', type: 'number', unit:'min'});
            }
            
            
            1 Antwort Letzte Antwort
            0
            • M Offline
              M Offline
              Mangid
              schrieb am zuletzt editiert von
              #20

              Hallo looxer01,

              und hast du dich schon für ein Update entschieden?

              Bei mir läuft es stabil! Ich vermisse nur die Info ob die HK-Pumpe läuft oder nicht!

              Du hast mal erwähnt, dass du:
              > 1\. Die Messung über eine HM-Schnittstelle. Die wird geschaltet, wenn Strom anliegt. Damit kann ich die Laufzeit der Schnecke gemessen werden.
              Welche HM-Schnittstelle hast du denn dafür verwendet?

              Danke!

              lg

              Niki

              1 Antwort Letzte Antwort
              0
              • L Offline
                L Offline
                looxer01
                schrieb am zuletzt editiert von
                #21

                Hi,

                hatte ich mal im HM Forum beschriebe. Damals gabs noch kein ioBroker. Da hatte ich das mit Homematik gemacht.

                Das mache ich immer noch zusätzlich so. Redundanz erhöht eben die Zuverlässigkeit. (eines meiner zwei noch laufenden Programme auf der CCU)

                Link ist hier:

                https://homematic-forum.de/forum/viewto … %C3%A4hler

                vG Looxer

                1 Antwort Letzte Antwort
                0
                • E Offline
                  E Offline
                  eifeladmin
                  schrieb am zuletzt editiert von
                  #22

                  Hallo zusammen,

                  ich wollte hier das Thema nochmals aufgreifen.

                  Ich habe seit einigen Tagen ebenfalls eine Ökofen Heizung und wollte diese in IoBroker integrieren.

                  Hatte bereits Kontakt mit looxer01 für die Konfiguration von ModBus. Bei meiner Anlage scheint das Register etwas anders zu sein, daher bekomme ich nicht alle Werte ausgelesen.

                  Daher habe ich ich es mal mit JSON versucht und das Skript integriert.

                  Leider erhalte ich folgenden Fehler im Log:

                  typeError: Cannot read property 'L_tpo_act' of undefined at Request._callback (script.js.common.Pelletheizung:37:89) at Request.self.callback (/opt/iobroker/node_modules/iobroker.javascript/no
                  uncaught exception: Cannot read property 'L_tpo_act' of undefined
                  
                  

                  Es werden nur die Werte oberhalb des Befehls eingelesen, danach aber nicht mehr.

                  Habt ihr vielleicht eine Idee woran es liegen könnte?

                  Vielen Dank und

                  Gruß

                  EA

                  1 Antwort Letzte Antwort
                  0
                  • E Offline
                    E Offline
                    eifeladmin
                    schrieb am zuletzt editiert von
                    #23

                    Hallo Leute,

                    also ich hab den Fehler in JavaScirpt selbst weg bekommen.

                    Kann ich den darüber auch die Laufzeit der Schnecke auslesen um den Verbrauch zu berechnen?

                    VG

                    EA

                    1 Antwort Letzte Antwort
                    0
                    • E Offline
                      E Offline
                      eifeladmin
                      schrieb am zuletzt editiert von eifeladmin
                      #24

                      Hallo Community,

                      für alle die es interessiert, in der aktuellen Firmware ist der Füllstand des Silos eingebaut.
                      Man kann ebenfalls den Stand des Zwischenlagers sowie die Befüllungen auslesen.

                      Lässt sich auch über JSON auslesen.

                      VG
                      EA

                      1 Antwort Letzte Antwort
                      0
                      • T Offline
                        T Offline
                        tibs
                        schrieb am zuletzt editiert von
                        #25

                        Hallo zusammen,

                        ich habe seit einigen Monaten einen Ökofen-Kessel mit eben dieser aktuellen Software mit Füllstandsanzeige, und muss leider sagen, dass diese sich zumindest bei meiner Heizung durch mehrere Effekte ziemlich verrechnet. :face_with_rolling_eyes: Der Fehler wurde mir von der Hotline bestätigt und es wurde eine neue Firmware für Anfang 2020 angekündigt.

                        Eine Anfänger-Frage: wo und wie habt ihr die Verbindung zur Heizung angeschlossen? Direkt über die Netzwerkbuchse in der Heizung oder über einen RS485-Ethernet-Adapter und 2 Drähte an die Schraubanschlüsse?

                        Danke und viele Grüße,
                        tibs

                        1 Antwort Letzte Antwort
                        0
                        • R Offline
                          R Offline
                          rakoe
                          schrieb am zuletzt editiert von rakoe
                          #26

                          Update:
                          Meine Anfrage hat sich inzwischen erledigt.
                          Danke an ALLE!


                          Hallo zusammen,

                          ich bekomme leider keine Verbindung zu meiner Ökofen.

                          267812d3-835d-4d34-aa2c-6a4fae22855d-image.png

                          4411f66a-a56a-476c-ad5f-94e0dc71ed30-image.png

                          bcba5a83-aceb-47a3-91bb-62dba7073f55-image.png

                          01422670-ddf5-41c0-88bc-56ad0a5738b3-image.png

                          Hat jemand eine Idee, woran es liegen mag? In Loxone frage ich die 62 ab und bekomme aktuelle Werte.

                          Danke für Eure Unterstützung!
                          Ralf Köster

                          1 Antwort Letzte Antwort
                          0
                          • O Offline
                            O Offline
                            OliWit82
                            schrieb am zuletzt editiert von
                            #27

                            Hallo in die Runde,

                            Habe seit gestern auch eine laufende Ökofen Pelematic. Software Version 4.00b

                            Wie binde ich die Anlage denn jetzt am besten in IoBroker an? Über ModBus oder über JSON?

                            Gruß
                            Oliver

                            A 1 Antwort Letzte Antwort
                            0
                            • O OliWit82

                              Hallo in die Runde,

                              Habe seit gestern auch eine laufende Ökofen Pelematic. Software Version 4.00b

                              Wie binde ich die Anlage denn jetzt am besten in IoBroker an? Über ModBus oder über JSON?

                              Gruß
                              Oliver

                              A Offline
                              A Offline
                              AndaleR
                              schrieb am zuletzt editiert von
                              #28

                              Hmm. Bei mir gab es eine neue Modbus-Version in ioBroker - 4.0.4.

                              Jetzt war ich heute Früh bei der ÖkoFEN-Heizung und habe gestaunt: Solarkreis Betrieb AUS.

                              Nach einigem hin und her habe ich gesehen: sobald der Modbus mit Heizung verbunden ist, geht Solar aus…

                              Was kann hier das Problem sein?

                              1 Antwort Letzte Antwort
                              0
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

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

                              461

                              Online

                              32.4k

                              Benutzer

                              81.5k

                              Themen

                              1.3m

                              Beiträge
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2025
                              logo
                              • Anmelden

                              • Du hast noch kein Konto? Registrieren

                              • Anmelden oder registrieren, um zu suchen
                              • Erster Beitrag
                                Letzter Beitrag
                              0
                              • Home
                              • Aktuell
                              • Tags
                              • Ungelesen 0
                              • Kategorien
                              • Unreplied
                              • Beliebt
                              • GitHub
                              • Docu
                              • Hilfe