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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. (ERLEDIGT) einfaches Blockly Skript zum neustarten über Sonoff POW und Basic

NEWS

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

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

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

(ERLEDIGT) einfaches Blockly Skript zum neustarten über Sonoff POW und Basic

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
25 Beiträge 4 Kommentatoren 3.7k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • rantanplanR Offline
    rantanplanR Offline
    rantanplan
    schrieb am zuletzt editiert von
    #21

    @Gringo:

    [Das wusste ich nicht! Warum findet man dann im Forum Blockly's die darauf aufgebaut sind? `
    "Normales" lesen/schreiben geht ja auch.

    Und man lernt auch dazu. Früher habe ich es genau wie Du gemacht.

    @Gringo:

    Mal davon abgesehen, wie realisiert man sonst einen Timer der mittels Vis gesteuert werden soll? `
    Den Wert des Datenpunktes in eine lokale Variable übergeben und dann mit der Lokalen arbeiten.

    Falls benötigt, den Wert der Lokalen am Ende der Operationen in den Datenpunkt zurückschreiben.

    Grüße `

    Rantanplan

    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

    1 Antwort Letzte Antwort
    0
    • G Offline
      G Offline
      Gringo
      schrieb am zuletzt editiert von
      #22

      @rantanplan:

      "Normales" lesen/schreiben geht ja auch.

      Und man lernt auch dazu. Früher habe ich es genau wie Du gemacht. `
      Ist einleuchtend, aber als Anfänger sucht man sich funktionierende Beispiele und geht davon aus das alles richtig ist. Im speziellen meine ich das Beispiel <url url="http://forum.iobroker.net/viewtopic.php?f=23&amp;t=737&amp;p=77920&amp;hilit=countdown#p63514">[http://forum.iobroker.net/viewtopic.php?f=23&t=737&p=77920&hilit=countdown#p63514 " target="_blank">](</s><LINK_TEXT text=)[<link_text text="http://forum.iobroker.net/viewtopic.php … wn#p63514
      ">http://forum.iobroker.net/viewtopic.php?f=23&t=737&p=77920&hilit=countdown#p63514</link_text>](</s><LINK_TEXT text=)</url> .@rantanplan:

      Den Wert des Datenpunktes in eine lokale Variable übergeben und dann mit der Lokalen arbeiten.

      Falls benötigt, den Wert der Lokalen am Ende der Operationen in den Datenpunkt zurückschreiben. ` Also doch die umständliche Variante, habe es so ähnlich nur das ich jede Änderung (Sekunde) der lokalen in die globale Varibale schreibe (Anzeige verbleibende Zeit). Bislang fand ich keine bessere Lösung und die funktioniert ganz gut.

      HP G8 ProLiant MicroServer, Ubuntu 16.04, Docker, Dockercontainer (ioBroker, fhem, smartVisu, Asterisk, Unifi Controller)

      DoorPi, nanoCUL 868 (Eigenbau), JeeLink/LaCrosse (Eigenbau), HM Homebrew, Ultraschall Anemometer (Eigenbau)

      1 Antwort Letzte Antwort
      0
      • rantanplanR Offline
        rantanplanR Offline
        rantanplan
        schrieb am zuletzt editiert von
        #23

        Bei dem Beispiel ist die Abarbeitung der "Steuere-Bausteine", glaub ich, auch egal.

        Aber es ist NICHT gewährleistet, dass die Bausteine in der Reihenfolge abgearbeitet werden.

        Das vierte "steuere" kann theoretisch abgearbeitet werden BEVOR die vorherigen abgeschlossen sind.

        Und wenn es da Abhängigkeiten gibt, geht das in die Hose.

        Rantanplan

        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

        1 Antwort Letzte Antwort
        0
        • G Offline
          G Offline
          Gringo
          schrieb am zuletzt editiert von
          #24

          Ich hatte damit ziemlich große Probleme sobald ich diesen Timer mehrfach in verschiedenen Blocklys einsetzte und mit anderen Abhängigkeiten verwendete. Durch die Fehlersuche hatte ich aber ziemlich viel über Blockly gelernt ist ja auch nicht schlecht, muss ja nicht immer ein funktionierendes Blockly sein.

          HP G8 ProLiant MicroServer, Ubuntu 16.04, Docker, Dockercontainer (ioBroker, fhem, smartVisu, Asterisk, Unifi Controller)

          DoorPi, nanoCUL 868 (Eigenbau), JeeLink/LaCrosse (Eigenbau), HM Homebrew, Ultraschall Anemometer (Eigenbau)

          1 Antwort Letzte Antwort
          0
          • G Offline
            G Offline
            Gringo
            schrieb am zuletzt editiert von
            #25

            Da ich das Blockly gestern schon fertig und getestet hatte und es vielleicht doch noch jemanden nützlich sein kann stell ich es noch hier rein bevor ich es lösche.

            Üblicherweise werden Sonoff mit Tasmota geflasht die dann bestimmte Grundeinstellungen haben wie ein Sendeintervall der Daten alle 300 Sek. Ohne den Sendeintervall zu ändern würde ein Blockly das mit einem 3 min. timeout arbeitet nur "alten Daten" erhalten bzw. bis neue Daten kommen ist das Blockly längst abgearbeitet. Dann könnte man gleich beim unterschreiten des Grenzwertes ausschalten und auf den timeout verzichten.

            Ich habe das Blockly anhand er Daten von meinem Server getestet wodurch eine Überbrückungszeit einzubauen notwendig war. Die Überbrückungszeit wird im timeout2 eingetragen die sich aus der verzögerten Einschaltung (40 sek.) und der Zeit die nach dem wieder einschalten gewartet werden soll bis der Grenzwert sicher überschritten ist. In den "request" Blöcken ist die IP-Adresse noch einzutragen. Der Sendeintervall der Sonoff Daten wird beim unterschreiten des Grenzwertes auf 10 sek. gesetzt und beim beenden der Überbrückungszeit wieder auf 300 sek. zurückgesetzt.

            4173_1.png
            Export

            ! ````
            <xml xmlns="http://www.w3.org/1999/xhtml"><block type="variables_set" id="LXo4C`;b@)UU^c]v/EAI" x="-87" y="-488"><field name="VAR">Timer_OFF_Läuft</field>
            <value name="VALUE"><block type="logic_boolean" id="sY_DFgl2Yc0F/U,n@G,"><field name="BOOL">FALSE</field></block></value>
            <next><block type="variables_set" id="gE{jkO_
            .!X!oD)gwvZt"><field name="VAR">Timer_Pause</field>
            <value name="VALUE"><block type="logic_boolean" id="D9l%P;J;O=V#Oo5-17mu"><field name="BOOL">FALSE</field></block></value>
            <next><block type="on_ext" id="d0[YYdZDI{r2(i+^H~6k"><mutation items="1"></mutation>
            <field name="CONDITION">any</field>

                    <value name="OID0"><shadow type="field_oid" id="11:L)kD)[Xz/sF5_V-8y"><field name="oid">javascript.0.Power</field></shadow></value> 
                    <statement name="STATEMENT"><block type="controls_if" id="TIxyAkFg}uIhrY9iA-3q"><value name="IF0"><block type="logic_operation" id="SS`D8[tFc~.5lJ}pXrb+" inline="false"><field name="OP">AND</field>
                            <value name="A"><block type="logic_compare" id="8kZq*60w-M-fT@%B{Y2N"><field name="OP">LT</field>
                                <value name="A"><block type="get_value" id="`kczcX0[4W#a2}O:/F7g"><field name="ATTR">val</field>
                                    <field name="OID">javascript.0.Power</field></block></value> 
                                <value name="B"><block type="math_number" id="^Q=X6j3{eQChA2KG2@t5"><field name="NUM">1200</field></block></value></block></value> 
                            <value name="B"><block type="logic_operation" id="y^K5/WO892=Z.!v=LOAf" inline="false"><field name="OP">AND</field>
                                <value name="A"><block type="logic_compare" id="5i/u:oMcC+*`+:0kz9j*"><field name="OP">EQ</field>
                                    <value name="A"><block type="variables_get" id="u8PqlwOo=HTT7]S?-Kod"><field name="VAR">Timer_OFF_Läuft</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="{@4Q,[1+f]MHo:wy6DWw"><field name="BOOL">FALSE</field></block></value></block></value> 
                                <value name="B"><block type="logic_compare" id="S%fxdkj01LyX.)8?03Q#"><field name="OP">EQ</field>
                                    <value name="A"><block type="variables_get" id="VX{!I]BR*0wN~Fo4c+#i"><field name="VAR">Timer_Pause</field></block></value> 
                                    <value name="B"><block type="logic_boolean" id="Qv5=n9FbQC8Z*m??]I3^"><field name="BOOL">FALSE</field></block></value></block></value></block></value></block></value> 
                        <statement name="DO0"><block type="comment" id=".(IcX/gt5#SuJxj5~mIE"><field name="COMMENT">Sendeintervall des Sonoff auf 10 sek. setzen</field>
                            <next><block type="request" id="Iy+P(eO[~+-R{05^m]SO"><mutation with_statement="false"></mutation>
                                <field name="WITH_STATEMENT">FALSE</field>
                                <field name="LOG">log</field>
                                <value name="URL"><shadow type="text" id=",;KnXC=[%HvM,8{C8JjZ"><field name="TEXT">http://Sonoff-IP/cm?cmnd=TelePeriod%2010</field></shadow></value> 
                                <next><block type="comment" id="uR#}+d;`CiEf@`zri@j/"><field name="COMMENT">Start des Ausschalttimers</field>
                                    <next><block type="timeouts_settimeout" id="3TdDK@x#TxN5}+?Ar-z]"><field name="NAME">timeout</field>
                                        <field name="DELAY">3</field>
                                        <field name="UNIT">min</field>
                                        <statement name="STATEMENT"><block type="controls_if" id="i;U(LK,:3*AG]7Cs[B3y"><value name="IF0"><block type="logic_compare" id="0rBeEYYqKav|-`dqI[Ti"><field name="OP">LT</field>
                                                <value name="A"><block type="get_value" id="*@N~e9|AT.=U^]~f@#i_"><field name="ATTR">val</field>
                                                    <field name="OID">javascript.0.Power</field></block></value> 
                                                <value name="B"><block type="math_number" id="c+cbZPZyjO8bb7xLzhf^"><field name="NUM">1200</field></block></value></block></value> 
                                            <statement name="DO0"><block type="control" id="Sk[S,4ag_O%9P-Gy(A*)"><mutation delay_input="false"></mutation>
                                                <field name="OID">javascript.0.POWER</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE"><block type="text" id="rLa35BO{Uw9.V)A::#5K"><field name="TEXT">OFF</field></block></value> 
                                                <next><block type="comment" id="JYQf@e0OmDn[%N(@)|-@"><field name="COMMENT">Einschaltverzögerung</field>
                                                    <next><block type="control" id="B`l9`[%OVU=7HyR}spOv"><mutation delay_input="true"></mutation>
                                                        <field name="OID">javascript.0.POWER</field>
                                                        <field name="WITH_DELAY">TRUE</field>
                                                        <field name="DELAY_MS">40</field>
                                                        <field name="UNIT">sec</field>
                                                        <field name="CLEAR_RUNNING">FALSE</field>
                                                        <value name="VALUE"><block type="text" id="C+zv`PhHS)~:0;?]!z[X"><field name="TEXT">ON</field></block></value> 
                                                        <next><block type="variables_set" id="?Hv(m@,+f^[=T,3q6Zpa"><field name="VAR">Timer_OFF_Läuft</field>
                                                            <value name="VALUE"><block type="logic_boolean" id="Jrw+:tz{2=V2KZ)g)H8z"><field name="BOOL">FALSE</field></block></value> 
                                                            <next><block type="comment" id="+lS-5[0ZqcI[rdSN1*9}"><field name="COMMENT">Start der Überbrückungszeit</field>
                                                                <next><block type="variables_set" id="@{5P:)vkgl0N6c(1X]jY"><field name="VAR">Timer_Pause</field>
                                                                    <value name="VALUE"><block type="logic_boolean" id="I.%87EjD.|`jl@#0Wp_M"><field name="BOOL">TRUE</field></block></value> 
                                                                    <next><block type="timeouts_settimeout" id="0YA6M}B(8nvuPlvj00Yj"><field name="NAME">timeout2</field>
                                                                        <field name="DELAY">60</field>
                                                                        <field name="UNIT">sec</field>
                                                                        <statement name="STATEMENT"><block type="variables_set" id="n|%^RZ,;?VN*p-B5UA?{"><field name="VAR">Timer_Pause</field>
                                                                            <value name="VALUE"><block type="logic_boolean" id="qT,mAT@j]vk(*n#nqC=E"><field name="BOOL">FALSE</field></block></value> 
                                                                            <next><block type="comment" id="2T}HLbLs#Q~Tde7#db7L"><field name="COMMENT">Sendeintervall des Sonoff auf 300 sek. setzten</field>
                                                                                <next><block type="request" id="k4pC}qfw1IN2J2q:a}i_"><mutation with_statement="false"></mutation>
                                                                                    <field name="WITH_STATEMENT">FALSE</field>
                                                                                    <field name="LOG">log</field>
                                                                                    <value name="URL"><shadow type="text" id="1Kqkdwdfr_m11)hGXr~w"><field name="TEXT">http://Sonoff-IP/cm?cmnd=TelePeriod%20300</field></shadow></value></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></statement></block></next></block></next></block></next></block></statement></block></statement></block></next></block></next></block></xml> 
            

            HP G8 ProLiant MicroServer, Ubuntu 16.04, Docker, Dockercontainer (ioBroker, fhem, smartVisu, Asterisk, Unifi Controller)

            DoorPi, nanoCUL 868 (Eigenbau), JeeLink/LaCrosse (Eigenbau), HM Homebrew, Ultraschall Anemometer (Eigenbau)

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


            Support us

            ioBroker
            Community Adapters
            Donate

            504

            Online

            32.4k

            Benutzer

            81.5k

            Themen

            1.3m

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

            • Du hast noch kein Konto? Registrieren

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