Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. OBI Funk-Steckdosenumbau ESP8266 (Generation1 Rund)

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    OBI Funk-Steckdosenumbau ESP8266 (Generation1 Rund)

    This topic has been deleted. Only users with topic management privileges can see it.
    • sissiwup
      sissiwup last edited by

      CCU-Integration für DHT-Sensor:

      Im CUxD ein Device anlegen:
      609_bildschirmfoto_2018-09-02_um_15.16.31.png

      Einstellen auf Thermostat:

      (SE-50-5 ist der Name den ihr auf der CCU zu sehen bekommt).
      609_bildschirmfoto_2018-09-02_um_15.16.58.png
      Name des Devices merken: CUX9002001

      In der CCU2 anlernen, dann auf Einstellungen des Devices.

      Ganz Oben auf Temp+Hum gehen, Häkchen weg bei USE_HMDATAPT (Kanal 1 und 2)
      609_bildschirmfoto_2018-09-02_um_15.17.59.png

      Device auf Dose Eintragen (gemerkter Name von oben CUX9002001 + Channel :1):
      609_bildschirmfoto_2018-09-02_um_15.21.12.png

      Und hier die Version dazu:
      609_firmware_1_1_8.zip
      609_code_1_1_8.zip

      PS: Wann ändere ich die Versionsnummer und wann kommt ein Buchstabe:

      • Bei Änderungen die ein neues Feld zum Speichern ins EEPROM notwendig machen, dann muss die Versionsnummer hochgezählt werden #
      • Bei Fixes oder kleinen Features wird nur ein Buchstabe angehängt.
      1 Reply Last reply Reply Quote 0
      • haselchen
        haselchen Most Active last edited by

        Scripte hatte ich schonmal gestoppt.

        Dann bekomme ich aber in der VIS nicht mehr den aktuellen Status der Dosen.

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

          @haselchen:

          Scripte hatte ich schonmal gestoppt.

          Dann bekomme ich aber in der VIS nicht mehr den aktuellen Status der Dosen. `

          Hallo,

          Dann bitte mal die Skripte Posten.

          1 Reply Last reply Reply Quote 0
          • haselchen
            haselchen Most Active last edited by

            on({id: "esp8266.1.Obi-Gaestezimmer.SetState"/*SetState*/, change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              if (getState("esp8266.1.Obi-Gaestezimmer.SetState").val === true) {
                try {
                  require("request")('http://192.XXX.X.XXX/ON').on("error", function (e) {console.error(e);});
                } catch (e) { console.error(e); }
                console.log("request: " + 'http://192.XXX.X.XXX/ON');
              } else {
                try {
                  require("request")('http://192.XXX.X.XXX/OFF').on("error", function (e) {console.error(e);});
                } catch (e) { console.error(e); }
                console.log("request: " + 'http://192.XXX.X.X/OFF');
              }
            });
            
            on({id: "esp8266.1.Obi-Gaestezimmer.State", change: "ne"}, function (obj) {
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
              if (getState("esp8266.1.Obi-Gaestezimmer.State").val === true) {
                setState("esp8266.1.Obi-Gaestezimmer.SetState", true, true);
              } else {
                setState("esp8266.1.Obi-Gaestezimmer.SetState", false, true);
              }
            });
            

            Script 1 ist zum Schalten und das 2. damit in VIS der aktuelle AN/AUS Wert angezeigt wird.

            Benutze ich die Scripte nicht, dann werde mir falsche Werte angezeigt, wenn ich die Dose mit der Hand anschalte.

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

              @haselchen:

              on({id: "esp8266.1.Obi-Gaestezimmer.SetState"/*SetState*/, change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                if (getState("esp8266.1.Obi-Gaestezimmer.SetState").val === true) {
                  try {
                    require("request")('http://192.XXX.X.XXX/ON').on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + 'http://192.XXX.X.XXX/ON');
                } else {
                  try {
                    require("request")('http://192.XXX.X.XXX/OFF').on("error", function (e) {console.error(e);});
                  } catch (e) { console.error(e); }
                  console.log("request: " + 'http://192.XXX.X.X/OFF');
                }
              });
              
              on({id: "esp8266.1.Obi-Gaestezimmer.State", change: "ne"}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                if (getState("esp8266.1.Obi-Gaestezimmer.State").val === true) {
                  setState("esp8266.1.Obi-Gaestezimmer.SetState", true, true);
                } else {
                  setState("esp8266.1.Obi-Gaestezimmer.SetState", false, true);
                }
              });
              

              Script 1 ist zum Schalten und das 2. damit in VIS der aktuelle AN/AUS Wert angezeigt wird.

              Benutze ich die Scripte nicht, dann werde mir falsche Werte angezeigt, wenn ich die Dose mit der Hand anschalte. `

              Hallo,

              Schaltet aber das 2. Skript nicht das erste. Dann ist auch klar, warum du eine "Echo" bekommst.

              Du darfst im zweiten Skript nicht das SetState setzen.

              Es gibt zwei Varianten: Nutze CUXD, dann gibt es einen Datenpunkt.
              609_bildschirmfoto_2018-09-03_um_00.36.08.png

              Oder nutze ohne Skript:
              609_bildschirmfoto_2018-09-03_um_00.35.53.png
              die Extrasteuerung

              609_bildschirmfoto_2018-09-03_um_00.36.15.png
              Obere Knopf CUXD,

              untere Knopf ioBroker mit Extrasteuerung

              Keine Preller:
              609_bildschirmfoto_2018-09-03_um_00.38.42.png

              Ansonsten musst du im Skript 1 abfragen, das Skript zwei den Wert gesetzt hat,

              z.B. über eine globale Variable/State …

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

                Hallo,

                großes Danke für den Ausbau von MQTT! Alles Top, Aber eine kosmetische Kleinigkeit ist mir beim Ändern meiner IOBroker scripte aufgefallen: Das Topic setRelay muss wohl als Zahl übergeben werden. Die anderen Datenpunkte sind String. Einheitlich alles string wäre besser oder der Typ dem Topic entsprechent. Bei meinen geliebten Dalay-Befehlen :lol: wäre z.B. der Typ Zahl natürlich passender als String.

                Grüße…

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

                  @HomeZecke:

                  Hallo,

                  großes Danke für den Ausbau von MQTT! Alles Top, Aber eine kosmetische Kleinigkeit ist mir beim Ändern meiner IOBroker scripte aufgefallen: Das Topic setRelay muss wohl als Zahl übergeben werden. Die anderen Datenpunkte sind String. Einheitlich alles string wäre besser oder der Typ dem Topic entsprechent. Bei meinen geliebten Dalay-Befehlen :lol: wäre z.B. der Typ Zahl natürlich passender als String.

                  Grüße… `

                  Hallo,

                  habe ich auch bemerkt. Du kannst den Typ einfach in ioBroker ändern.

                  Keine Ahnung warum er da int gewählt hat und nicht Zeichenkette.

                  Du kannst ja auch ON oder on oder off oder OFF übergeben.

                  609_bildschirmfoto_2018-09-03_um_15.27.03.png

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

                    Hallo,

                    habe noch einen Timer eingefügt, da alle 5 Sekunden die Temp. abzufragen mir doch ein wenig heftig war.

                    min. ist jetzt alle 5 Sekunden, ein guter Wert ist vermutlich 600 Sekunden = alle 10 Minuten.

                    609_firmware_1_1_9a.zip
                    609_code_1_1_9a.zip

                    1.1.9a -> starte erste Messung nach 5 Sekunden. Defaultwert DHT-Interval wurde nicht gelesen. Bei Update von 1.1.9 auf 1.1.9a wird der Wert zurückgesetzt! Löst Problem bei Anzeige Response … Avg ...

                    1 Reply Last reply Reply Quote 0
                    • S
                      schnakker last edited by

                      N'Abend,

                      erst einmal vielen Dank für die tolle Arbeit.

                      Ich möchte meine Obi Steckdose (IP: 192.168.178.30) mit MQTT nutzen. Hierfür lasse ich den MQTT Broker auf der IP: 192.168.178.100 laufen. Bei der Konfiguration der IP Adresse des Brokers über http://192.168.178.30/mqtt?ip=%3C192.168.178.100> werden durch die Firmware die letzte "0" sowie das ">" abgeschnitten:

                      8644_unbenannt.png

                      Wenn ich die ersten Blöcke in der IP-Adresse kürze, dann werden die IP-Blöcke am Ende korrekt übernommen. Ich vermute, dass der String mit der IP-Adresse einfach zu früh abgeschnitten wird.

                      Ich habe es mit der Version 1.1.7, 1.1.8. und 1.1.9 versucht, alle mit dem selben Ergebnis.

                      Viele Grüße.

                      Sandro

                      1 Reply Last reply Reply Quote 0
                      • S
                        schnakker last edited by

                        Sorry, habe den Fehler gefunden. Man muss den Wert ohne die "Klammern" setzen. :roll:

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

                          @haselchen:

                          @sissiwup

                          Hab dann auf 1.1.7 upgedatet. Gleiche Problem + keine Response Anzeige mehr.

                          Unbenannt3.PNG `

                          => 1.1.9a löst das Problem mit der Anzeige, war ein Java-Script Fehler.

                          1 Reply Last reply Reply Quote 0
                          • haselchen
                            haselchen Most Active last edited by

                            Leider nicht :oops:

                            3723_unbenannt6.png

                            Ach du meinst wahrscheinlich die Response Anzeige.

                            Nicht so schlimm, bin auf die 1.1.1 zurück.

                            Die läuft zufriedenstellend. Zwar noch mit den doppelten States aber ansonsten sehr stabil.

                            1 Reply Last reply Reply Quote 0
                            • S
                              Skaiwotscher last edited by

                              @haselchen:

                              Nicht so schlimm, bin auf die 1.1.1 zurück.

                              Die läuft zufriedenstellend. Zwar noch mit den doppelten States aber ansonsten sehr stabil. `

                              Führt das Skript nicht auch zweimal zum Schalten - und daher die doppelten States? Wenn dem so ist, solange du nur ON oder OFF benutzt, ist es vielleicht nur kosmetisch. Aber wenn du (oder wer immer das Skript nutzt) mal ein TOGGLE machen solltest, ginge das an die Funktionalität.

                              Gruß,

                              Alex

                              1 Reply Last reply Reply Quote 0
                              • haselchen
                                haselchen Most Active last edited by

                                Wird wohl kosmetischer Art sein das Problem, es sei denn die States werden gespeichert und der Puffer oder was auch immer läuft über 🙂

                                Ich benutze die Dosen in der VIS und eben auch mal manuell.

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

                                  @haselchen:

                                  Wird wohl kosmetischer Art sein das Problem, es sei denn die States werden gespeichert und der Puffer oder was auch immer läuft über 🙂

                                  Ich benutze die Dosen in der VIS und eben auch mal manuell. `

                                  Hast du eine der beiden Lösungsvarianten probiert?

                                  (cuxd oder Extra-Schaltung in vis?)

                                  Die States sind nicht doppelt, sondern zeigen genau was du schaltest an.

                                  Wenn du zweimal ON schaltest, dann wird auch zweimal protokolliert.

                                  1 Reply Last reply Reply Quote 0
                                  • haselchen
                                    haselchen Most Active last edited by

                                    Ich habe mir Deine Lösungen als Notfallplan zurückgelegt.

                                    Das System funktioniert so wie es ist im Zusammenspiel.

                                    Jetzt was ändern, wäre als Newbie für mich zu aufwendig.

                                    Verständnisfrage: Wie kann ich was anschalten , was schon an ist? :?:

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

                                      @haselchen:

                                      Verständnisfrage: Wie kann ich was anschalten , was schon an ist? :?: `

                                      Das Anschalten schaltet nicht nur das Relais, sondern beendet z.B. auch Delay-Aktionen,

                                      speichert den Zustand in den Powerup-Puffer etc.

                                      Sonst müsstest du um ein Delay zu beenden entweder einen neuen Befehl nutzen

                                      oder aber die Dose z.B. kurz aus und wieder an schalten. Wenn da z.B. ein Router dran hängt,

                                      wird er das lieben 🙂

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        schnakker last edited by

                                        Hallo Sissi,

                                        ich nutze die Firmware 1.1.9 und das Protokoll MQTT für die Kommunikation mit den OBI Steckdosen. Hierfür habe ich auf dem Raspberry Pi "mosquitto" laufen.

                                        Die Topic SetRelay funktioniert und ich kann darüber die Steckdose schalten und auch Hardwareinformationen abrufen.

                                        Die Topics zum Auslesen von Informationen (aktueller Status, Name, …) funktionieren nicht. Hier erhalte ich keine Antwort.

                                        Ich habe mal in der Firmware 1.1.9 nachgeschaut. Dort kann ich unter "void callbackMQTT" auch keine Implementierung für diese finden.

                                        Planst du diese noch zu Implementieren?

                                        Vielen Dank.

                                        Sandro

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          Skaiwotscher last edited by

                                          Hi zusammen,

                                          Mir ist ein kleiner Bug in der /toggle-Funktion aufgefallen: Wenn man diese im Zustand OFF aufruft, schaltet das Relais ein und sofort wieder aus.

                                          Fix: In der Funktion handle_toggle (Datei handle_commands.ino) das zweite "if" zu einem "else if" machen:

                                          void handle_toggle()
                                          {
                                            if (relStatus == "OFF")
                                            {
                                              switch_ON();
                                            }
                                            else if (relStatus == "ON")
                                            {
                                              switch_OFF();
                                            }
                                          }
                                          

                                          Wer /toggle nicht nutzt, muss das aber nicht korrigieren. Vermutlich nutzt es kaum einer, wenn es bisher nicht auffiel. 😉

                                          Grüße,

                                          Alex

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

                                            @schnakker:

                                            Hallo Sissi,

                                            ich nutze die Firmware 1.1.9 und das Protokoll MQTT für die Kommunikation mit den OBI Steckdosen. Hierfür habe ich auf dem Raspberry Pi "mosquitto" laufen.

                                            Die Topic SetRelay funktioniert und ich kann darüber die Steckdose schalten und auch Hardwareinformationen abrufen.

                                            Die Topics zum Auslesen von Informationen (aktueller Status, Name, …) funktionieren nicht. Hier erhalte ich keine Antwort.

                                            Ich habe mal in der Firmware 1.1.9 nachgeschaut. Dort kann ich unter "void callbackMQTT" auch keine Implementierung für diese finden.

                                            Planst du diese noch zu Implementieren?

                                            Vielen Dank.

                                            Sandro `

                                            Kann die leider nicht ganz folgen:

                                            Alle Punkte sind bei mir gefüllt:
                                            609_bildschirmfoto_2018-09-13_um_09.18.56.png

                                            Nur folgende Punkte sind aktiv:
                                            609_bildschirmfoto_2018-09-13_um_09.21.25.png
                                            Also nur hier kannst du Werte reinschreiben. Die anderen Ändern sich bei Änderungen in der Dose.

                                            Was fehlt dir da? Bin kein Experte für MQTT, habe nur so nach besten Wissen implementiert.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            585
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            esp8266 obi steckdose
                                            37
                                            464
                                            135255
                                            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