Sonoff basic als Tastbefehl

  • Hier nochmal meine Frage,

    hab einen Sonoff Basic, und möchte gerne meine Tasterschaltung erweitern. Dazu bräuchte ich nur einen kurzen Tastbefehl, der mir die 230V für ca 1sek. durchschaltet und dann gleich selbstständig wieder aus schaltet. Ich hab schon die ganzen EInstellungen durchforstet, aber leider in der APP EwLink nicht passendes gefunden. Vielleicht fällt euch etwas ein, oder ich hab etwas übersehen??

    Vielen Dank schon mal

    • Offizieller Beitrag

    Hallo GTE0,

    die Ewelink App kann auch deinen Tastbefehl ausführen. Dazu klickst du in der App auf den betreffenden Sonoff. Nicht einschalten, sondern leicht daneben tippen. Dann siehst du oben rechts drei kleine Punkte.

    Dort dann tippen. Direkt oben siehst du dann den Loop Timer. Dort kannst du diese Einstellungen vornehmen.

    Ok, es ist dort etwas unübersichtlich, aber wenn du da etwas rumprobierst, sollte es klappen.

    Gruß

  • Hallo Rainer,

    ja das hab ich schon gesehen, aber leider kann ich nur Minuten einstellen und keine Sekunden. Das ist fast zu Lang für einen Tastbefehl.

    Gruß

  • @GTEO

    Ich weiß nicht, ob dir mein Lösungsvorschlag hilft, aber die grobe Zeitsteuerung von EWELink hat mich dazu gebracht, die geflashten Sonoff Basics von den Creationx-Leuten zu bestellen, denn ich brauche nur an, aus und eine kurze Laufzeit, z. B. um eine Ansaugleitung einer Pumpe unter Wasser zu halten. Und das läuft nun super.

    Die Lösung geht bei mir so:

    Da die aufgespielte Tasmota-Firmware sich über http-Befehle ansteuern lässt, kann man zum Beispiel in der Adressenzeile eines Browsers folgendes eingeben:

    Code
    http://ip.deines.sonoff.schalters/cm?cmnd=Power%20On

    Das führt dazu, dass der Strom eingeschaltet wird. Die Eingabe von

    Code
    http://ip.deines.sonoff.schalters/cm?cmnd=Power%20Off

    führt dazu, dass der Strom wieder ausgeschaltet wird.

    Jetzt wäre es lästig, wenn man immer erst einen Browser starten muss, die Begehlszeilen eingibt, um ein Gerät für eine Sekunde einzuschalten. Deshalb greifen wir zur Automatisierung mit Hilfe einer Batch- bzw. Skript-Datei, die vom Betriebssystem Zeile für Zeile abgearbeitet wird.

    Das sieht dann ungefähr so aus, allerdings brauchen wir ein Programm, das den Browser "ersetzt" und das heißt curl (bzw. curl.exe unter Windows):

    Code
    curl http://ip.deines.sonoff.schalters/cm?cmnd=Power%20On
    sleep 1
    curl http://ip.deines.sonoff.schalters/cm?cmnd=Power%20Off

    Wenn du diese Batch-Datei startest, passiert dieses:

    Anschalten

    1 Sekunde Pause machen - der Strom bleibt angeschaltet!

    Ausschalten.

    Das Skript wäre im Prinzip die Lösung deines Problems, oder?

    Jetzt zum kleinen Aber (bitte bis zum Ende weiterlesen, auch wenn du vielleicht nur Windows kennst und kannst): So etwas lässt sich unter Linux (egal ob Ubuntu oder Raspian oder Suse) aus dem Stand mit Bordmittel erreichen. Linux bringt eine universelle Schaltuhr auch gleich mit - das Programm cron. Man kann mit cron ein Skript (einen Batch-Datei) starten, in der der Kurzzeit-Timer wie in meinem Beispiel eingebaut ist oder den sleep-Befehl direkt in cron einsetzen.

    Für Windows gibt es freie Software, die das Programm cron verfügbar machen und es gibt ebenfalls das Programm curl. Falls dich das interessiert, kann ich dir aufschreiben, wie man es unter Windows einrichtet - nicht sofort, aber im Laufe der nächsten Tage.

    Gruß

    Edit:

    Da ich seit vielen Jahren fast nur noch mit Linux arbeite, hatte ich vergessen, dass Batch-Dateien ein bisschen anders funktionieren. Es müsste ungefähr so aussehen:

    Code
    [Pfad zum Programm curl]curl http://IP.DEINES.SONOFF.SCHALTERS/cm?cmnd=Power%%On
    timeout /T 1
    [Pfad zum Programm curl]curl http://IP.DEINES.SONOFF.SCHALTERS/cm?cmnd=Power%%Off

    Das doppelte Prozentzeichen ist richtig. Sonst überliest Windows das notwendige (zweite) Prozentzeichen. Diese Datei könntest du über einen Windows Cron-Clone aufrufen. Die Zahl in der Zeile von timeout... gint die Anzahl der Sekunden für die Wartezeit an. Sorry für den Schnellschuss von gestern.