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 goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    OBI Funk-Steckdosenumbau ESP8266 (Generation1 Rund)

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

      Hallo TomT,

      ok danke werde ich für mich anpassen. :mrgreen:

      Edit:

      Sollte das auch bei der letzten Version 1.2.0 funktionieren?

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

        Ja, passt auch exakt so bei der Version 1.2.0

        Grüße

        Tom

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

          @hike:

          Keine Verbindung zu Mosquitto

          Ich benutze als Test-Broker Mosquitto auf einem Raspberry zero mit Dietpi von Andreads Spiess (the man with the swiss accent)

          Die Version 1.20 stellt keine Verbindung zu Mosquitto her

          11:39:51 08.10.2018 MQTT server started
          11:39:51 08.10.2018 MQTT try reconnect
          11:39:52 08.10.2018 MQTT NOT subscribed
          11:40:42 08.10.2018 Wifi.Reconnect Time done
          11:40:50 08.10.2018 MQTT try reconnect
          11:40:51 08.10.2018 MQTT NOT subscribed
          11:41:20 08.10.2018 MQTT try reconnect
          11:41:21 08.10.2018 MQTT NOT subscribed
          
          

          Im Code von handleMQTT.ino wird auch klar warum, es findet keine Authentifizierung durch user/password statt

          void reconnect()
          {
            if (MQTT_active == 1)
            {
              blueLEDstartCountBlink(0.8, 4);
              int timeout = 2;
              build_wwwStatus2("MQTT try reconnect");
              while ((!pubClient.connected()) && (timeout > 0))
              {
                timeout--;
                Serial.println("Reconnecting MQTT...");
                char devname[80];
                iDevname.toCharArray(devname, 80);
                if (!pubClient.connect(devname))  // <-- Aufruf ohne Authentifizierung
                .......
                {
          

          es müsste dort stehen

           if (!pubClient.connect(devname,mqtt_user,mqtt_password))  // <-- Aufruf mit Authentifizierung
           
          

          wobei mqtt_user und mqtt_password vorher gesetzt sind.

          Das kann aber nur über die Web-Oberfläche geschehen.

          Da hängt allerdings noch eine Menge anderer Dinge dran, siehe handle_commands.ino –> handle_devName

          und espEEPROMSet.Ino-->writeEEPROM

          Bisher wurden 901 Nibbles von 1024 verbraucht, es scheint noch ein wenig Platz zu sein.

          Es wäre schön, wenn Funktionen zum Setzen von mqtt-user und mqtt-password eingebaut werden könnten oder eine Rückmeldung, welche EEPROM-Adressen für solche Einstellungen genutzt werden sollten.

          Ansonsten vielen Dank für die viele Arbeit und den gut lesbaren Code. `

          Ok, das ist nicht das Problem. Kann mir jemand sagen wie ich beim iobroker user und passwort setze?

          (zum Testen)

          Was ein bischen schwieriger wird, ist das Passwort nicht im Klartext zu übertragen… mal sehen.

          Kümmere mich am Wochenende darum.

          PS: Wie lang müssen User und Passwort sein?

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

            @hike:

            Fehler beim Compilieren von 1.20

            Ich bekomme einen Compilerfehler beim übersetzen:

            xxx/Firmware_1_2_0_2018_09_17\Main-Obi-wall-plug\Main-Obi-wall-plug.ino:121:21: fatal error: TimeLib.h: No such file or directory
            
             #include <timelib.h>
            
                                 ^
            
            compilation terminated.
            
            exit status 1
            Fehler beim Kompilieren für das Board Generic ESP8266 Modul</timelib.h>
            

            Ich verwende esp8266 2.4.2 .

            Der Wechsel auf 2.3 bringt nichts

            Irgend ein Hinweis? `

            Hi,

            ist im Post beschrieben:

            viewtopic.php?f=35&t=12125&start=280#p163799

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

              @TomT:

              @meierchen006:

              Hallo sissiwup,

              ist es möglich die Zeile "TIME to Event" farblich hervorzuheben ähnlich On/Off ? `

              Hallo meierchen006,

              ich bin zwar nicht sissywup, aber hier die Lösung :

              Öffne mit Arduino den Code der 1.19d und dort in der Datei webstatic.ino suche folgenden Code (im oberen Drittel zu finden)

              wwwInfos = wwwInfos + String(F("
              Actual Time : ")) + gerDate(NTP.getTimeDateString()) +
                             String(F("
              Time to Event : OFF
              "
              

              Ersetze diesen mit

              wwwInfos = wwwInfos + String(F("
              Actual Time : ")) + gerDate(NTP.getTimeDateString()) +
                             String(F("
              
              **Time to Event : OFF**
              
               **"** 
              ```` **Neu kompilieren und fertig ;)
              
              Sollte nun etwas kleiner als der Status darunter sein, aber größer als der Rest
              
              Grüße
              
              Tom** `   **Hi, hab das übernommen:
              

              609_bildschirmfoto_2018-10-10_um_23.48.34.png

              609_firmware_1_2_0b.zip
              609_code_1_2_0b.zip **

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

                Hallo,

                habe die 1.2.0.b installiert funktioniert wie gewollt.

                Nun ist Time to Event besser zu sehen/direkt zu erkennen. :mrgreen:

                Danke.

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

                  @hike:

                  Keine Verbindung zu Mosquitto

                  Ich benutze als Test-Broker Mosquitto auf einem Raspberry zero mit Dietpi von Andreads Spiess (the man with the swiss accent)

                  Die Version 1.20 stellt keine Verbindung zu Mosquitto her

                  11:39:51 08.10.2018 MQTT server started
                  11:39:51 08.10.2018 MQTT try reconnect
                  11:39:52 08.10.2018 MQTT NOT subscribed
                  11:40:42 08.10.2018 Wifi.Reconnect Time done
                  11:40:50 08.10.2018 MQTT try reconnect
                  11:40:51 08.10.2018 MQTT NOT subscribed
                  11:41:20 08.10.2018 MQTT try reconnect
                  11:41:21 08.10.2018 MQTT NOT subscribed
                  
                  

                  Im Code von handleMQTT.ino wird auch klar warum, es findet keine Authentifizierung durch user/password statt

                  void reconnect()
                  {
                    if (MQTT_active == 1)
                    {
                      blueLEDstartCountBlink(0.8, 4);
                      int timeout = 2;
                      build_wwwStatus2("MQTT try reconnect");
                      while ((!pubClient.connected()) && (timeout > 0))
                      {
                        timeout--;
                        Serial.println("Reconnecting MQTT...");
                        char devname[80];
                        iDevname.toCharArray(devname, 80);
                        if (!pubClient.connect(devname))  // <-- Aufruf ohne Authentifizierung
                        .......
                        {
                  

                  es müsste dort stehen

                   if (!pubClient.connect(devname,mqtt_user,mqtt_password))  // <-- Aufruf mit Authentifizierung
                   
                  

                  wobei mqtt_user und mqtt_password vorher gesetzt sind.

                  Das kann aber nur über die Web-Oberfläche geschehen.

                  Da hängt allerdings noch eine Menge anderer Dinge dran, siehe handle_commands.ino –> handle_devName

                  und espEEPROMSet.Ino-->writeEEPROM

                  Bisher wurden 901 Nibbles von 1024 verbraucht, es scheint noch ein wenig Platz zu sein.

                  Es wäre schön, wenn Funktionen zum Setzen von mqtt-user und mqtt-password eingebaut werden könnten oder eine Rückmeldung, welche EEPROM-Adressen für solche Einstellungen genutzt werden sollten.

                  Ansonsten vielen Dank für die viele Arbeit und den gut lesbaren Code. `

                  Hallo,

                  anbei die Version mit User und Passwort für MQTT (jetzt ist das EEPROM fast voll, aber es sind ja noch fast 63K File-system da:-)):
                  609_bildschirmfoto_2018-10-12_um_22.01.40.png

                  User = Max. 32 Zeichen, minimal 2 Zeichen!

                  Passwort = Max. 64 Zeichen

                  609_firmware_1_2_1.zip
                  609_code_1_2_1.zip

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

                    HI ,

                    bei mir gibt es so komische MQTT Fehlermeldung, also "try reconnect"

                    ist das okay, oder funktioniert da irgendwas nicht? User habe ich nicht.

                    Ich habe jetzt auch immer, dass das Licht der Schalter einfach so anging und ich habe mich gefragt, warum.

                    Gruß

                    Thomas

                    1555_screen.jpg

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

                      Als erstes würde ich dann MQTT auf OFF stellen, dann wird er mit Sicherheit nicht mehr reconnecten wollen 😉

                      Edit: Wenn du natürlich MQTT benutzt, können dir nur wahrscheinlich sissiwup oder TomT helfen.

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

                        Jetzt habe ich mqtt tatsächlich mal abgeschaltet.

                        Trotzdem schalten sich die Lampen immer wieder mal an.

                        gestern Abend um 21:13 und danach ging die Lampe wieder an, ohne das irgendetwas gemacht wurde.

                        und es kommt eine Meldung "Dateway not reach". Was soll das? mqtt ist doch aus. ?
                        1555_screen.jpg

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

                          Also bei MQTT kann ich dir leider nicht helfen.

                          Bist du dir sicher, daß du nirgendwo einen Weblink auf die Steckdose benutzt hast?

                          Mit einem einfachen <ip-adresse der/steckdose/on="">command kannst du die ja auch ganz ohne Einrichtungen von CCU/ioBroker/MQTT steuern.

                          Eventuell ein Script, was die IP Adresse auf diese Art anspricht?

                          Da ich ab Version 1.0.4 die FW nicht mehr selbst erweitere, kann dir im Zweifel nur noch sissiwup helfen.

                          Bei mir laufen alle (bis auf 1 zum testen ab und an) noch auf der "uralten" Version und werden ausschließlich durch ioBroker gesteuert.

                          Ich selbst benutze zur Zeit noch nicht mal mehr die Delay Funktionen.

                          Wenn da nämlich mal was nicht läuft, brauche ich nur an 1 Stelle zu suchen…

                          Macht die Fehleranalyse einfacher.

                          Grüße

                          Tom</ip-adresse>

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

                            Jetzt ist er schon lange nicht wieder angegangen. mqtt ist aus.

                            Ich warte mal ab, was nun passiert.

                            Ja, ich schalte die Lampen via direkte IP.

                            Gibt es eine Beschreibung zu den allgemeinen Settings oben rechts? Das verstehe ich nicht.

                            und ich habe auch iobroker, aber wenn ich die Schnittstelle einschalte, sehe ich trotzdem nichts in iobroker, oder muss ich die Datenpunkte selbst eintragen? wo ist das beschrieben?

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

                              Das Anlegen der Datenpunkte im ioBroker ist im 1. Beitrag auf Seite 1 beschrieben.

                              Oder du machst das im ioBroker per javascript.

                              Anleitung dazu und Script : viewtopic.php?f=35&t=12125&start=100#p139351

                              Damit du den Status im ioBroker sehen kannst musst du die Datenpunkte auch in der Steckdose eintragen.

                              Das geht mit den Commands

                              http://<ip der/steckdose="">/ioBroker?ip=192.XXX.XXX.XXX
                              http://<ip der/steckdose="">/ioBroker?port=8087
                              http://<ip der/steckdose="">/ioBroker?path=esp8266.0
                              http://<ip der/steckdose="">/ioBroker?sub=OBI-Steckdose
                              http://<ip der/steckdose="">/ioBroker?state=State
                              http://<ip der/steckdose="">/ioBroker?message=Info</ip></ip></ip></ip></ip></ip> 
                              

                              Die Namen und Daten müssen mit deinen angelegten Datenpunkten übereinstimmen.

                              Port ist der SimpleApi Port des Adapters. Simple Api Adapter muss installiert sein…

                              Steuern tust du dann über ein Script im ioBroker, ich mache das mit Blockly.

                              Hinweise dazu findest du auch auf Seite 1 im 1.Beitrag.

                              Die grundlegenden Settings oben rechts müssten sich doch eigentlich selbst erklären.

                              PowerOnState stellst du ein, ob die Steckdose beim Einstecken AN/AUS oder den letzten Schaltzustand schaltet.

                              Wifi-Reconnect und die Time dazu haben was mit einem Bug in der Firmware des ESP Controllercore zu tun.

                              Einige ESP verlieren nach unbekannter Zeit die Verbindung zum WLAN. Mit den 2 Werten stellst du ein, nach welcher Zeit er selbstständig eine Verbindung neu aufbaut. Ajax ON aktualisiert die WEbseite der Steckdose in regelmäßigen Abständen. Soweit ich weiß ist das Sekündlich...

                              Ich hoffe das hilft dir jetzt erst mal weiter, sonst frag halt nochmal nach 😉

                              Grüße

                              Tom

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

                                Danke schön ,

                                ich werde das probieren.

                                Gruß

                                Thomas

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

                                  Aber mein Problem , dass das Relay automatisch angeht, ohne das ich etwas getan habe. Das Problem besteht weiterhin.

                                  Als Hinweis. Wenn das Relay angeht, dass beim Service: "State saved: on".

                                  Also, als wenn ich den Stecker herausgesteckt und wieder hineingesteckt habe. Habe ich aber nicht!

                                  Außerdem war der letzte Status: off.

                                  Ich verstehe das nicht. Woran kann ich denn sehen, warum das Relay überhaupt geschaltet hatte?

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

                                    Ich hab mir deinen Screenshot oben noch mal etwas genauer angeguckt.

                                    Du hast sehr viele Gateway not reach.

                                    Ausserdem hast du den PowerONState auf 2, was bedeutet Last State.

                                    Schalte bitte testweise den PowerONState mal auf 0, also OFF.

                                    Ich befürchte, deine Steckdose stürzt ab und bootet in unregelmäßigen Abstanden neu.

                                    Warum, kann ich dir nicht sagen.

                                    Da müsste Sissiwup mal versuchen den Fehler zu finden.

                                    Hast du mal die FW neu aufgespielt? Manchmal kann da ein Fehler beim Updaten passieren und dann kommt es zu solchen mysteriösen Arbeitsweisen….

                                    Versuche im Zweifel auch mal eine ältere Version. Wenn das auch da dann passiert, könnte es sich ja auch um einen Hardwaredefekt handeln.

                                    > Ich verstehe das nicht. Woran kann ich denn sehen, warum das Relay überhaupt geschaltet hatte?
                                    Das kannst du meines Wissens nach nicht, weil die Quelle des Commands nicht gespeichert wird.

                                    Ich denke aber eher, dein Problem ist ein Absturz der FW und dem Reboot der Dose.

                                    Grüße

                                    Tom

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

                                      Ich habe 2 von den Obi Steckdosen. und bei haben genau das gleiche Verhalten.

                                      Ich werde mal das mit der Firmware und dem Powerstate versuchen.

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

                                        @thobastian:

                                        Jetzt habe ich mqtt tatsächlich mal abgeschaltet.

                                        Trotzdem schalten sich die Lampen immer wieder mal an.

                                        gestern Abend um 21:13 und danach ging die Lampe wieder an, ohne das irgendetwas gemacht wurde.

                                        und es kommt eine Meldung "Dateway not reach". Was soll das? mqtt ist doch aus. ? `

                                        Hallo,

                                        zu deiner Konfiguration:

                                        Rechts:

                                        PowerONState 2: Sichere den Status und benutze ihn wenn Strom weg war.

                                        -> Sate saved - Meldungen sagen das die Dose geschaltet wurde und der Status gesichert wurde.

                                        sonst hast du alles aus geschaltet.

                                        Links:

                                        IP + Gateway werden automatisch gezogen, keine festen Werte (Gateway ist deine Fritzbox!)

                                        Ping ist aktiviert

                                        -> er probiert den Gateway anzupingen. Einzelne not reach sind normal, dann geht mal ein Ping verloren.

                                        -> wenn davon 30 in Folge sind (mit gewissen Abstand) dann startet er WIFI (bei dir nicht der Fall).

                                        NTP-Server ist default

                                        RSSI: -67

                                        -> Empfang ist nicht super, aber noch ok.

                                        FlashSize: …DOUT?

                                        -> normal würd hier QIO stehen -> Programmiermodus

                                        Time since start:

                                        -> Deine Dose ist um 20:17 am 17.10. gestartet, also keine Reboots dazwischen!

                                        Response:

                                        -> Avg 91: gut wären hier 40 -> Empfang schlecht / Dose ist beschäftigt.

                                        Log States:

                                        Die Dose wurde entweder über die Weboberfläche oder per IP/on IP/off oder IP/toggle geschaltet!

                                        21:13 ON

                                        22:09 ON (nochmal)

                                        23:18 OFF

                                        Log rechts:

                                        States saved: werden nur geschrieben wenn der Wert sich ändert (also um 22:09 nicht)

                                        -> sind ok

                                        Gateway reached:

                                        -> Empfang war schlecht. Hier mache ich nur einen PING, wenn der nicht ankommt schreibt er das sofort.

                                        -> Reagiert wird aber erst wenn 30 PINGs in folge nicht ankommen.

                                        => Fazit:

                                        Kein Reboot - da du mit State2 arbeitest könnte hier auch nur beim booten kurz der Status gewechselt werden, und es würde auch protokolliert werden.

                                        => Kannst du uns Details zu deiner Ansteuerung geben? Da könnte der Has im Pfeffer liegen.

                                        Falls du eine CCU nutz, dann ist die einfachste Variante der Einbindung über CuxD, da die Dose dann wie ein normales Gerät verwendet werden kann

                                        (sehr gut beschrieben von TomT im ersten Beitrag, du kannst über ein Gerät 16 Dosen ansprechen (Kanäle))

                                        MQTT:

                                        Der erste reconnect ist normal! Es wird zuerst die Verbindung hergestellt, subscribes etc gemacht. Dann wird im Ablauf geprüft ob schon

                                        connected, am Anfang ist das nicht der Fall, dann schreibt er reconnect. Also alles ok.

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

                                          Kleine Erweiterung:
                                          609_bildschirmfoto_2018-10-21_um_11.11.21.png

                                          Auf der rechten Seite zeigt er an ob

                                          a) Per Button (sieht man nicht im Screenshoot)

                                          b) Per Webinterface (siehe oben rechts ganz unten)

                                          c) Per /ON /OFF /TOGGLE

                                          ausgelöst wurde.

                                          Die anderen Methoden zeigt er nicht an.

                                          609_firmware_1_2_1b.zip
                                          609_code_1_2_1b.zip

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

                                            und was bedeutet:

                                            CMD: /ON

                                            ??

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            759
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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