Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Microcontroller
    5. [gelöst] Sonoff Basic blinken lassen über internen Zeitplan

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Sonoff Basic blinken lassen über internen Zeitplan

    This topic has been deleted. Only users with topic management privileges can see it.
    • OpenSourceNomad
      OpenSourceNomad Most Active @Cinimod last edited by OpenSourceNomad

      @cinimod bin gerade mobil deswegen nicht schön formatiert,

      'server: fritz.box' müsste das heißen (nicht 'id')

      Die 'id's sind immer für die Referenzierung innerhalb der yaml und die wählst du komplett frei aus. Wie schon in deinem code mit Betätigung des Tasters das relay geschälten wird.

               - while:
                   condition:
                     binary_sensor.is_off: taster
                   then:
                   - switch.toggle: relay
                   - delay: 5s
      
      

      Und noch deinem binary_sensor die 'id: taster' verpassen.

      Dein relay sollte mit dem code alle 5 Sekunden schalten das relay schalten, kannst du natürlich anpassen.

      Nur daran denken das mechanische Relais begrenzte Lebenszeiten haben und du das Intervall nicht zu kurz gestalten solltest

      Cinimod 1 Reply Last reply Reply Quote 0
      • Cinimod
        Cinimod Most Active @OpenSourceNomad last edited by Cinimod

        @opensourcenomad

        Irgendwas scheint ihm aber noch nicht zu gefallen:

        2021-11-18 10_00_59-Window.png

        esphome:
         name: tabletten-wecker-sonoff-basic
         platform: ESP8266
         board: esp01_1m
        
        <<: !include secrets.yaml
        
        
        binary_sensor:
         - platform: gpio
           pin:
           id: taster
             number: GPIO14
             mode:
               input: true
               pullup: true
             inverted: true
           name: "Sonoff Basic Button"
           on_press:
             - switch.toggle: relay
        
        switch:
         - platform: gpio
           name: "Sonoff Basic Relay"
           pin: GPIO12
           id: relay
        
        status_led:
         pin:
           number: GPIO13
           inverted: yes
        
        time:
        - platform: sntp
           server: fritz.box
           on_time:
             - seconds: 0
               minutes: 50
               hours: 9
               days_of_week: 1-7
               then:
                 - while:
                     condition:
                       binary_sensor.is_off: taster
                    then:
                    - switch.toggle: relay
                     - delay: 4s
        
        

        Man kann doch bestimmt auch mehrere Sensoren definieren, das sowohl der Taster am Basic, als auch mein Taster an gpio14 funktionieren ?!

        OpenSourceNomad 2 Replies Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky last edited by

          hatte mich schon gefragt, für was du das brauchst - tabletten-wecker - klasse idee

          hatte noch eine idee

          ich würde evtl noch eine sicherheit einbauen - @OpenSourceNomad :man kann doch sicher einen http get senden (evtl stündlich) und diesen z.b an einen iot service senden (iot-adapter). dann bekommst du stündlich eine nachricht als datenpunkt in deinem iobroker - wenn mal keine nachricht vom basic kommt, weißt du, dass mit dem basic etwas nicht stimmt (oder mit der fritzbox) - also eine art device control.

          Cinimod 1 Reply Last reply Reply Quote 0
          • Cinimod
            Cinimod Most Active @liv-in-sky last edited by

            @liv-in-sky sagte in Sonoff Basic blinken lassen über internen Zeitplan:

            hatte mich schon gefragt, für was du das brauchst - tabletten-wecker - klasse idee

            Ja der alte Herr ist inzwischen etwas vergesslich, dachte vielleicht hilft´s

            hatte noch eine idee

            ich würde evtl noch eine sicherheit einbauen - @OpenSourceNomad :man kann doch sicher einen http get senden (evtl stündlich) und diesen z.b an einen iot service senden (iot-adapter). dann bekommst du stündlich eine nachricht als datenpunkt in deinem iobroker - wenn mal keine nachricht vom basic kommt, weißt du, dass mit dem basic etwas nicht stimmt (oder mit der fritzbox) - also eine art device control.

            Auch eine gute Idee, dann bekommt man mit wenn was schief läuft. Müsste dann aber den IOT port öffnen ? 🤔

            liv-in-sky 1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @Cinimod last edited by liv-in-sky

              @cinimod nein - du mußt nix öffnen - das macht der iot für dich

              du kannst im iot setting einen service einrichten (der service ist letztlich ein datenpunkt) - an den kannst du von außerhalb deine daten senden

              ich muss die beschreibung mal suchen - im forum gibt es das irgendwo

              Image 1.png

              Image 2.png

              mit diesem befehl sendet man dann einen x-beliebigen wert in den "service" (datenpunkt)

              https://service.iobroker.in/v1/iotService?service=custom_<SERVICE_NAME>&key=fxxxxxxxxxxxxxxxxxxxxx63d2&user=yyyy.xxxxxxky%40gmail.com&data=ist-online
              

              @OpenSourceNomad weiß sicher, ob das geht

              Cinimod 1 Reply Last reply Reply Quote 0
              • Cinimod
                Cinimod Most Active @liv-in-sky last edited by

                @liv-in-sky

                Sehr cool, danke.
                Das kannte ich gar nicht, der SERVICE_NAME muss in der Whitelist stehen dann klappt es 🙂

                1 Reply Last reply Reply Quote 0
                • OpenSourceNomad
                  OpenSourceNomad Most Active @Cinimod last edited by

                  @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                  Man kann doch bestimmt auch mehrere Sensoren definieren, das sowohl der Taster am Basic, als auch mein Taster an gpio14 funktionieren ?!

                  Selbstverständlich. Wegen deinem code muss ich heute abend mal am pc gucken, bin gerade unterwegs.

                  @liv-in-sky said in Sonoff Basic blinken lassen über internen Zeitplan:

                  einen http get

                  Klingt nach https://esphome.io/components/http_request.html

                  1 Reply Last reply Reply Quote 0
                  • OpenSourceNomad
                    OpenSourceNomad Most Active @Cinimod last edited by

                    @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                    @opensourcenomad

                    Irgendwas scheint ihm aber noch nicht zu gefallen:

                    2021-11-18 10_00_59-Window.png

                    esphome:
                     name: tabletten-wecker-sonoff-basic
                     platform: ESP8266
                     board: esp01_1m
                    
                    <<: !include secrets.yaml
                    
                    
                    binary_sensor:
                     - platform: gpio
                       pin:
                       id: taster
                         number: GPIO14
                         mode:
                           input: true
                           pullup: true
                         inverted: true
                       name: "Sonoff Basic Button"
                       on_press:
                         - switch.toggle: relay
                    

                    Zeile 13: du musst die id: taster eine Zeile hoch (alternativ 5 Zeilen oder mehr nach unten) schieben damit der "Inhalt" von pin: wieder stimmt/vorhanden ist. Die Reihenfolge ist an und für sich egal aber die eingerückten Zeilen müssen passen.

                    Cinimod 1 Reply Last reply Reply Quote 0
                    • Cinimod
                      Cinimod Most Active @OpenSourceNomad last edited by

                      @opensourcenomad

                      Ah, ich Schussel.

                      hab leider direkt den nächsten syntax fehler 😌

                      Bildschirmfoto 2021-11-18 um 11.59.55.png

                      verstehe auch hier nicht was sein problem ist.

                      OpenSourceNomad 1 Reply Last reply Reply Quote 0
                      • OpenSourceNomad
                        OpenSourceNomad Most Active @Cinimod last edited by OpenSourceNomad

                        @cinimod da stimmt die Einrückung nicht (das wichtigste bei yaml's 😛 )

                        time:
                        - platform: sntp
                          server: fritz.box
                          on_time:
                            ...
                        

                        Bei Unsicherheiten hilft immer ein Blick in die doku, da sind für wirklich (fast) jede Möglichkeiten Code Beispiele vorhanden:

                        https://esphome.io/components/time.html#on-time-trigger

                        Cinimod 1 Reply Last reply Reply Quote 0
                        • Cinimod
                          Cinimod Most Active @OpenSourceNomad last edited by

                          @opensourcenomad

                          Alle Syntax Fehler beseitigt, .bin hochgeladen, Basic nicht mehr im Wlan 🤔
                          Das ist vermutlich nicht so üblich ?

                          OpenSourceNomad 1 Reply Last reply Reply Quote 0
                          • OpenSourceNomad
                            OpenSourceNomad Most Active @Cinimod last edited by OpenSourceNomad

                            @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                            Alle Syntax Fehler beseitigt, .bin hochgeladen,

                            👍

                            Basic nicht mehr im Wlan
                            Das ist vermutlich nicht so üblich ?

                            Kommt ganz darauf an was du bezüglich wifi in deiner yaml konfiguriert hast 😉

                            👉 https://esphome.io/components/wifi.html

                            Das captive portal ist wahrscheinlich das "mindeste" was du willst:

                            👉 https://esphome.io/components/captive_portal.html

                            Cinimod 1 Reply Last reply Reply Quote 0
                            • Cinimod
                              Cinimod Most Active @OpenSourceNomad last edited by

                              @opensourcenomad

                              Hab da so einiges drin, keine ahnung ob das da alles rein gehört 😬

                              2021-11-18 13_12_30-Window.png

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

                                @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                                keine ahnung ob das da alles rein gehört

                                Sieht vernünftig aus.

                                Wenn sich das gute Stück sich nicht mit deinem Wlan verbinden kann welches mit 'F' startet und ganz oben definiert ist, sollte der ESP ein Access Point aufspannen mit dem du dich verbinden kannst.

                                Vielleicht einfach mal mit einem mobilteil (Smartphone/Tablet) nach WLAN AP's suchen, wenn du den "Tabletten Wecker..." findest hängt der sonoff basic nicht in deinem WLAN. Du kannst dich dann damit verbinden und auf 192.168.4.1 ein neues WLAN zum verbinden konfigurieren.

                                Cinimod 2 Replies Last reply Reply Quote 0
                                • Cinimod
                                  Cinimod Most Active @OpenSourceNomad last edited by Cinimod

                                  @opensourcenomad

                                  ich hab den ganzen kram jetzt mal aus der secret in die eingentliche datei kopiert, glaube bald der basic ist hinüber.

                                  Will nicht ins Wlan und macht auch keinen HotSpot auf, keine Ahnung was ich sonst noch testen soll

                                  Beim ersten versuch ging es noch.

                                  EDIT:

                                  Habe jetzt DAS wieder drauf geballert, und es geht auf anhieb, natürlich nicht mit der gewünschten Funktion. 🙁

                                  EDIT2:

                                  Hier scheint der Fehler zu liegen:

                                  INFO Successfully compiled program.
                                  INFO Resolving IP address of tabletten-wecker-sonoff-bas.local
                                  INFO  -> 192.168.178.100
                                  INFO Uploading /opt/iobroker/iobroker-data/esphome.0/.esphome/build/tabletten-wecker-sonoff-bas/.pioenvs/tabletten-wecker-sonoff-bas/firmware.bin (423424 bytes)
                                  INFO Compressed to 292944 bytes
                                  ERROR Error auth result: Error: Authentication invalid. Is the password correct?
                                  

                                  2021-11-18 14_44_08-tabletten-wecker-sonoff-bas Web Server.png

                                  EDIT3:

                                  Irgendwas in der Secret Datei scheint nicht da hin zu gehören, wenn ich alles was dort drin steht einfüge, dann läuft der Basic ERSTMAL, Versuche jetzt noch mal die Funktionen einzubinden, dann bleibt der kram hat im Klartext da drin stehen.

                                  OpenSourceNomad 1 Reply Last reply Reply Quote 0
                                  • Cinimod
                                    Cinimod Most Active @OpenSourceNomad last edited by

                                    @opensourcenomad

                                    nur noch mal zur Verständniss, wenn ich irgendwas editiere, muss ich es neu compilieren und hochladen ja ? Also OTA flashen ...

                                    oder übernimmt er einfach meine editierung indem ich sie speichere ?

                                    OpenSourceNomad 1 Reply Last reply Reply Quote 0
                                    • OpenSourceNomad
                                      OpenSourceNomad Most Active @Cinimod last edited by OpenSourceNomad

                                      @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                                      glaube bald der basic ist hinüber.

                                      Glaube ich nicht. Es fast ausgeschlossen einen esp mittels firmware zu bricken.

                                      Will nicht ins Wlan und macht auch keinen HotSpot auf

                                      Wenn er kein Hotpsot aufmacht kannst du 99,99% sicher sein das er in deinem WLAN hängt. Es ist aber wahrscheinlich das er einen neuen Hostnamen und deswegen vielleicht sogar eine andere IP von deinem DHCP Server bekommen hat. Du kannst ja ganz einfach auf der Fritze gucken welche Geräte er kennt (und welche aktiv/online sind).

                                      Habe jetzt DAS wieder drauf geballert, und es geht auf anhieb

                                      Hast du per serial-usb Adapater geflasht? Wenn nicht dann war das der ultimative Beweis das der Sonoff in deinem WLAN hängt 😉

                                      @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                                      Hier scheint der Fehler zu liegen:

                                      ERROR Error auth result: Error: Authentication invalid. Is the password correct?
                                      

                                      Das ist leicht, das ota password ist schlicht falsch (nicht das gleiche was bereits auf dem Gerät ist). In der yaml aus deinem link ist keines definiert, wenn also in der secrets.yaml (oder direkt in der "geräte" yaml) ein (=anderes) ota password definiert schlägt die Aktualisierung der Firmware fehl.

                                      Irgendwas in der Secret Datei scheint nicht da hin zu gehören, wenn ich alles was dort drin steht einfüge, dann läuft der Basic ERSTMAL, Versuche jetzt noch mal die Funktionen einzubinden, dann bleibt der Kram hat im Klartext da drin stehen.

                                      technisch macht es keine Unterschied ob du die Information aus der secrets.yaml direkt in deiner Geräte yaml hast oder nur die secrets.yaml verlinkst. Bei nur einem Gerät macht es keinen großen Unterschied, allerdings ist die Funktion goldwert wenn man mal mehr Gerätschaften mit esphome betreibt weil man die basis Konfiguration einfach teilen kann

                                      Noch ein paar Hilfreiche Links für dich:
                                      https://esphome.io/components/ota.html#updating-the-password
                                      https://esphome.io/guides/configuration-types.html#packages
                                      https://esphome.io/guides/automations.html

                                      1 Reply Last reply Reply Quote 0
                                      • OpenSourceNomad
                                        OpenSourceNomad Most Active @Cinimod last edited by OpenSourceNomad

                                        @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                                        nur noch mal zur Verständniss, wenn ich irgendwas editiere, muss ich es neu compilieren und hochladen ja ? Also OTA flashen ...

                                        Genau, esphome backt immer eine frische firmware und lädt die dann (wenn einmal esphome auf dem Gerät ist) über ota hoch.

                                        Wenn du im Editor was änderst musst du danach glaube ich auch nur noch auf upload drücken, der speichert und kompiliert das und schiebt es direkt über WLAN auf das Gerät. Dauert im Normalfall nicht länger als 30 Sekunden (außer du kompilierst auf einem pi oder anderem low power Gerät).

                                        oder übernimmt er einfach meine editierung indem ich sie speichere ?

                                        Wenn du "nur" speicherst hast du "nur" lokal die yaml geändert aber das Gerät läuft weiterhin mit der firmware welche aus der "alten" yaml (die du zuletzt per ota oder kabel auf das Gerät gespielt hast) gebacken wurde

                                        Cinimod 1 Reply Last reply Reply Quote 0
                                        • Cinimod
                                          Cinimod Most Active @OpenSourceNomad last edited by

                                          @opensourcenomad

                                          Danke erstmal bis hier hin, ich habe es nun soweit das zu angegebener Zeit das blinken beginnt, jedoch lässt es sich nicht mehr anhalten.

                                          Sowohl der Taster vom Basic als auch der an GPIO14 hängende Taster funktionieren nun, und toggle´n das Relais zwar, das blinken endet aber nicht mit tastendruck, leider hilft da gerade nur ihm den Strom zu klauen.

                                          So sieht es aktuell aus:

                                          binary_sensor:
                                           - platform: gpio
                                             pin:
                                               number: GPIO0
                                               mode:
                                                 input: true
                                                 pullup: true
                                               inverted: true
                                             name: "Sonoff Basic Button"
                                             on_press:
                                               - switch.toggle: relay
                                           - platform: gpio
                                             id: taster2
                                             pin:
                                               number: GPIO14
                                               mode:
                                                 input: true
                                                 pullup: true
                                               inverted: true
                                             name: "GPIO14 Button"
                                             on_press:
                                               - switch.toggle: relay      
                                          
                                          switch:
                                           - platform: gpio
                                             name: "Sonoff Basic Relay"
                                             pin: GPIO12
                                             id: relay
                                          
                                          status_led:
                                           pin:
                                             number: GPIO13
                                             inverted: yes
                                             
                                          time:
                                          - platform: sntp
                                            servers: fritz.box
                                            on_time:
                                               - seconds: 0
                                                 minutes: 23
                                                 hours: 8,17,19
                                                 days_of_week: '*'
                                                 then:
                                                   - while:
                                                       condition:
                                                         binary_sensor.is_off: taster2
                                                       then:
                                                       - switch.toggle: relay
                                                       - delay: 5s    
                                          

                                          OpenSourceNomad 1 Reply Last reply Reply Quote 0
                                          • OpenSourceNomad
                                            OpenSourceNomad Most Active @Cinimod last edited by OpenSourceNomad

                                            @cinimod said in Sonoff Basic blinken lassen über internen Zeitplan:

                                            Danke erstmal bis hier hin, ich habe es nun soweit das zu angegebener Zeit das blinken beginnt, jedoch lässt es sich nicht mehr anhalten.

                                                 - while:
                                                     condition:
                                                       binary_sensor.is_off: taster2
                                                     then:
                                                     - switch.toggle: relay
                                                     - delay: 5s    
                                            

                                            Stimmt, wenn du den Taster aber etwa 5,1 Sekunden gedrückt hältst sollte zumindest das blinken aufhören (allerdings kann es sein das der switch dann auch gerade an ist). 😬

                                            Wir müssen uns da noch was schöneres überlegen, der code passt noch nicht ganz zu deinem Anwendungszweck 😛

                                            Soll/muss das blinken durch beide Taster gestoppt werden oder wäre es vertretbar das nur einer (der externe?) das blinken stoppt?

                                            EDIT: Gibt wahrscheinlich viele Möglichkeiten dein Szenario umzusetzen, aber am besten wird es wohl sein ein wait-until einzubauen und die condition mit den binary_sensor rauszuschmeisen: https://esphome.io/guides/automations.html#wait-until-action

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            923
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            57
                                            2520
                                            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