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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    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

      @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
                                        • sissiwup
                                          sissiwup last edited by

                                          @thobastian:

                                          und was bedeutet:

                                          CMD: /ON

                                          ?? `
                                          siehe 😄

                                          per Webaufruf der URL IP/ON

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

                                            Alexa ist da 🙂

                                            Hallo,

                                            ich habe Alexa mal integriert. Achtung BETA!

                                            Verwendet wird die ESPALEXA-Bibliothek: https://github.com/Aircoookie/Espalexa

                                            Alexa erkennt die Steckdose als LED-Stripe:

                                            Was geht:

                                            Alexa "Steckdose" an

                                            Alexa "Steckdose" aus

                                            Alexa "Steckdose" 1-99 (Steckdose an für 1 bis 99 Minuten)

                                            Es wird keine Cloud-Anbindung für die Dose, noch Anbindung an ioBroker oder MQTT benötigt.

                                            Was geht nicht:

                                            Die Steckdose gibt keine Rückmeldung an Alexa wie Status oder Timer grade stehen.

                                            Konfiguration:

                                            alexa?name=Mein Name der Dose <- Umlaute und Sonderzeichen noch nicht getestet!

                                            alxea?active=1

                                            Bitte in der Reihenfolge. Wenn ihr komplett alexa ausschalten wollt, dann

                                            alexa?active=0, dann reboot.

                                            Nach jeder Änderung müßt ihr natürlich in Alexa nach neuen Geräten suchen lassen!

                                            609_bildschirmfoto_2018-10-27_um_10.17.03.png

                                            Für diejenigen die Selbst übersetzen:

                                            Es ist in der 2.4.x ein Bug: (<2.3.x sollte so funktionieren)
                                            609_bildschirmfoto_2018-10-23_um_01.02.12.png
                                            609_bildschirmfoto_2018-10-23_um_01.01.53.png
                                            609_bildschirmfoto_2018-10-23_um_01.01.46.png
                                            Die eine Zeile muss in der Datei angepasst werden.

                                            Wenn ihr das nicht macht: Dann wird immer nur auf AN geschaltet. Nichts anderes geht.

                                            609_firmware_1_2_2.zip
                                            609_code_1_2_2.zip

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            618
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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