Shelly1 langer, kurzer Tastendruck. Treppenhaussteuerung

  • Hallo zusammen,


    erstmal hoffe ich, ich werde nicht gleich gesteinigt, wenn ich dieses alte Thema nochmal hervor hole.=O

    Zum Zweiten, wollte ich mal "Hallo" sagen und mich vorstellen. Ich bin vollkommen neu im Bereich MQTT, Shelly, IO-Broker unterwegs. Über einen Kollegen bin ich zu Shelly gekommen und habe einen Shelly1v3 dazu verwendet mein Garagentor per App zu steuern (Wenn ich mit dem Fahrrad unterwegs bin, will ich nicht erst um die Garage rum und durch die Tür). Zu mehr brauchte ich es erstmal nicht.

    Dann kam vor einiger Zeit ein zweiter Shelly1 dazu, der mein Gartenbeleuchtung abhängig vom Sonnenuntergang anschaltet und nach 2Std. wieder aus.


    Und nun wollte ich einen dritten für die Beleuchtung meiner Garage benutzen. Dazu hat mich Google hierher geführt und ich hab das untenstehende Skript gefunden.


    Das passt perfekt auf das, was ich gerne hätte, nur leider kommt mir hier das unter Zweitens aufgeführte in die Quere... Ich habe keine Ahnung, wo ich was einstellen kann, eingeben muss, etc.


    Ich habe bereits den IO-Broker auf meiner Synology-Diskstation installiert und den Leuchten-Shelly eingebunden. Ich kann jetzt unter den Objekten den Status sehen und am COmputer setzen.

    Leider bin ich damit schon am Ende.:(

    Wo finde ich denn die Konsole, oder was auch immer, damit ich das untenstehende eingeben kann.

    Bzw. wie muss ich das denn eingeben?


    Für kompetente Hilfe wäre ich sehr dankbar.


    Viele Grüße


    Zitat von NoitaercX

    Mal wieder was zum Thema und auf Anfrage von Ossisp1 mit Anpassung:


    3 Minuten "Treppenlichtautomat" mit Möglichkeit Dauerlicht einzuschalten


    # 1. kurzer Tastendruck -> Licht AN für 3 Minuten (RuleTimer1 180)

    # 2. langer Tastendruck >2sec (SetOption32 20) -> kurzes Blinken als Quittierung und -> Dauer-Licht AN

    # 3. langer Tastendruck während AN (1. oder 2. läuft) -> kurzes Blinken und -> Dauer-Licht AN

    # 4. kurzer Tastendruck immer wenn Licht AN -> dann Licht AUS


    # Einstellungen:


    # auf "Switch1" einstellen (nicht Button)

    # bei Sonoff etc.

    SwitchMode1 5

    # bei Shelly

    SwitchMode1 6


    BackLog SetOption32 20; PulseTime1 0; SetOption1 1; SwitchTopic1 0

    BackLog Rule1 1;Rule2 1;Rule3 1; BlinkCount 1; BlinkTime 3


    LG

  • Hi.


    ich geh mal davon aus das Du Deine Shelly's mit der originalen Firmware betreibst?


    Denn das "untenstehende" sind Tasmota-Befehle. Dazu muss auch die Tasmota Firmware auf dem Shelly sein (mit einem FTDI flashen).

    Tasmota bietet Dir dann ein Webinterface an, unter anderem auch eine Eingabekonsole und da würde das dann eingeben werden.

    Wäre dir sicher schon aufgefallen, deshalb vermute ich auch das du mit originaler FW arbeitest. Bei originaler FW nutzt dir der Code nichts den du zitiert hast.

    Online Compiler


    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / HomeMagic / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712

    mosquitto/bash/html/cgi auf RPI 2B+/Sprachsteuerung via IFTTT/4xGoogle-Home-Mini

  • Alles klar.


    Habe jetzt Tasmota drauf und es funktioniert auch alles, wie es soll.

    Mal sehen, ob ich das jetzt verstanden habe:

    BackLog SetOption32 20 (2sekunden halten Für Longpush);

    PulseTime1 0 (Kein Impulsrelais, sondern halten für Stromfluss);

    SetOption1 1 (Short und Longpush zulassen);

    SwitchTopic1 0 (*keine Ahnung*)


    BackLog Rule1 1;Rule2 1;Rule3 1; (Aktiviere Regel 1-3)

    BlinkCount 1; (1mal Blinken)

    BlinkTime 3 (Auszeit in 1/10sek. beim Blinken)


    Nur bei den Regel weiß ich nicht, wie man die lesen muss:

    Was macht das backlog da drin und wie kann ich die Switch#States sehen?


    ICh würde das Programm gerne so anpassen, dass die Leuchten 4min an sind und nach 3min30 kurz blinken, um mir zu zeigen, gleich ist dunkel.

    die 4min krieg ich hin. Aber wie würde der REst aussehen?

  • Moin.


    Das ging ja flott mit tasmotazieren.


    Zum einarbeiten sind Deine besten Freunde diese links:

    https://tasmota.github.io/docs/Commands/

    https://tasmota.github.io/docs/Rules/


    Ich kenne den orginal FRED nicht aus dem du die Rule hast aber wenn die dort funktioniert hat tut sie es jetzt auch.

    Du musst das nur copy und paste in die Konsole eingeben.


    Allerdings jede Rule einzeln,


    Also:

    rule1 <blablabla ....>

    rule2 <xyz...>


    Den Switch1#state sieht du dann in der Konsole wenn er in einer Rule als trigger verwendet wird.

    Online Compiler


    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / HomeMagic / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712

    mosquitto/bash/html/cgi auf RPI 2B+/Sprachsteuerung via IFTTT/4xGoogle-Home-Mini

  • Servus. Jupp. Per OTA geht das echt schnell und gut.

    Braucht man keinen FTDI-Adapter, o.ä.


    Der Ursprüngliche Code ist von hier .

    Wie gesagt, funktioniert das auch soweit erstmal.

    Ich glaub jetzt hab ich auch den Befehl backlog verstanden... Werden die Befehle nacheinander abgerarbeitet?


    Dann muss ich mich jetzt noch in die Befehlskette einfuchsen, damit ich den Zusatz mit dem Blinken nach 3min30sec irgendwie realisieren kann...

    ........ Und während des Schreibens formt sich eine Idee :-)

    Danke für die Rules-Seite, hilft mir auch schonmal weiter.

  • Werden die Befehle nacheinander abgerarbeitet?

    jepp.


    damit ich den Zusatz mit dem Blinken nach 3min30sec irgendwie realisieren kann

    Wann genau soll es denn blinken? nach 3 Minuten 30 (210 Sekunden) soll es blinken und dann abschalten?

    Online Compiler


    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / HomeMagic / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712

    mosquitto/bash/html/cgi auf RPI 2B+/Sprachsteuerung via IFTTT/4xGoogle-Home-Mini

  • jepp.


    Wann genau soll es denn blinken? nach 3 Minuten 30 (210 Sekunden) soll es blinken und dann abschalten?

    Ne, es soll quasi 4min laufen und 30sek bevor ich im Dunkeln stehe mich mit nem Blinken darauf hinweisen, dass es gleich duster wird... Dann kann ich noch zum Schalter laufen und nochmal länger drücken...


    Wenn alles sequentiel abläuft hätte ich jetzt sowas gemacht wie :

    Rule1

    on Switch1#State = 2 do backlog Power1 1;RuleTimer1 210;Power1 3; RuleTimer1 30 endon

  • Wie Du schon richtig gesehen hast wird in der Rule1 mit Ruletimer1 die Laufzeit gesetzt.

    Kannst du natürlich auf 210 setzen, 3,5 Minuten.


    Mit einem zweiten Ruletimer1 <zeit> würdest du nur den Ruletimer1 neu mit der entsprechenden laufzeit schalten.


    In der Rule2 wird dann nach Ablauf des Ruletimer1 der Power1 ausgeschaltet.

    Ich würde da jetzt in der Rule2 ändern.


    Code
    Rule2
    on Switch1#State=2 do Power1 0 endon
    on Rules#Timer=1 do backlog Power1 0; delay 3; Power1 1; delay 3; Power1 0; delay 3; Power1 1; delay 30; Power1 0 endon

    Wie oft das jetzt blinkt ist eben die Anzahl der Power1 1 und Power1 0. Wie schnell es blinkt setzt der delay (*0,1s).

    Blinkcount wäre zwar auch hier der elegantere Weg aber nachdem der schon mit Werten belegt ist und beim Dauer ein verwendet wird, dann eben auf Quick & Dirty Art.

    Online Compiler


    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / HomeMagic / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712

    mosquitto/bash/html/cgi auf RPI 2B+/Sprachsteuerung via IFTTT/4xGoogle-Home-Mini

    Einmal editiert, zuletzt von HoerMirAuf ()

  • Kann man mehrere Timer gleichzeitig starten?


    Weil wenn ich das jetzt richtig verstehe, blinkt es 3mal nach 210 sek und dann nochmal, wenn die 30sek. abgelaufen sind.

    Denke dann würde es reichen, wenn es so läuft:

    Shortpress-> 210sek Licht -> kurz aus wieder an -> 30sek Licht -> Aus

  • Deine zusätzliches Ruletimer1 30 bringt nichts. Da wird nur der Timer1 mit dem Wert 30 belegt und wenn der abläuft erfolg die gleiche reaktion wie bei Ruletimer1 180


    Du kannst schon mehere Ruletimer starten. das wäre dann eben ruletimer2 <xx> und wird mit on rules#timer=2 do <befhel> endon ausgewertet

    Aber der muss ja dann in abhängigkeit vom Ruletimer 1 laufen und blinken hast dann immer noch nicht

    Online Compiler


    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / HomeMagic / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712

    mosquitto/bash/html/cgi auf RPI 2B+/Sprachsteuerung via IFTTT/4xGoogle-Home-Mini

  • Okay, langsam ergibt sich das Bild.


    Wäre es denn möglich das so zu machen:

  • Gibt nur 3 Rules ins Tasmota aber der Ansatz mit dem 2 Ruletimer ist ziemlich gut :thumbup:

    Wenn dann so:

    Online Compiler


    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / HomeMagic / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712

    mosquitto/bash/html/cgi auf RPI 2B+/Sprachsteuerung via IFTTT/4xGoogle-Home-Mini

  • :thumbup::thumbup:Mega geil. Hat geklappt.


    Für alle die das nachmachen wollen, hau ich hier nochmal den ganzen Code rein, den ich jetzt eingegeben habe:


    Programm läuft damit wie folgt:

    Shortpress -> Licht an -> nach 3min erfolgt ein kurzes Blinken, als Zeichen gleich ist Dunkel -> nach ingesamt 4min geht Licht aus

    Longpress (1sek Taster halten) -> Licht für 500ms an -> kurzes Blinken -> anschließend Dauerlicht

    Erneutes Drücken während einer Hellphase führt zum Ausschalten.


    Hinweis: die 500ms Licht an bei Longpress habe ich eingebaut, weil ich LED-Panele in der Garage verbaut habe und die zu träge für ein kurzes Aufflackern sind. Daher der Delay mit 500ms (0,5sek)


    Danke an HoerMirAuf für die Hilfe.