Commands - 01 Anwendung der Befehle

  • Status: Zur Korrektur freigegeben (Supermicha)

    I - Kommandos

    Dies ist eine Übersetzung von Github in der Originalversion von Theo Arends


    Die Sonoff-Tasmota-Firmware bietet drei leistungsstarke Mensch-Maschine-Schnittstellen: MQTT, Web und Seriell.

    I.I - MQTT

    MQTT ist die empfohlene Interaktionsschnittstelle. Alle relevanten Details zu MQTT finden Sie in der MQTT Essentials Artikelserie. Sie benötigen einen MQTT-Broker und sollten einen unabhängigen MQTT-Client zur Fehlerbehebung verwenden. Das Einrichten der grundlegenden MQTT-Umgebung ist nicht Gegenstand dieses Artikels.

    Bitte lesen Sie die spezifischen MQTT Features Wiki-Seite, um mehr zu erfahren.

    Beispiel:

    Ein Sonoff-Tasmota-Modul wurde mit dem FullTopic- Tasmota /% topic% /%-Präfix% / und der Themeneinstellung "sonoff-mylight" konfiguriert. Wir möchten das Licht ein- und ausschalten.

    Wenn Sie die nachstehende Befehlstabelle betrachten, können Sie mehr über die Power und die Umschalt Option erfahren. "Power1" steht für das erste Relais.

    • Statusabfrage:
      Code
      1. tasmota/sonoff-mylight/cmnd/Power1 ← //empty message
      2. ↳ tasmota/sonoff-mylight/stat/RESULT → {"POWER1":"OFF"}
      3. ↳ tasmota/sonoff-mylight/stat/POWER1 → OFF

      Wir sehen, dass das erste Relais des Moduls derzeit ausgeschaltet ist.


    • Senden eines Befehls:
      Code
      1. tasmota/sonoff-mylight/cmnd/Power1 ← "TOGGLE"
      2. ↳ // Power for relay 1 is toggled
      3. ↳ tasmota/sonoff-mylight/stat/RESULT → {"POWER1":"ON"}
      4. ↳ tasmota/sonoff-mylight/stat/POWER1 → ON

      Wir haben den Umschaltbefehl gesendet und die Bestätigung des neuen Status erhalten.


    Randbemerkung: Bei vielen Befehlen ist ein leerer Wert eine Abfrage. Wenn Sie mosquitto_pub verwenden, können Sie mit der Befehlszeilenoption -n einen leeren Wert ausgeben. Wenn Ihr MQTT-Client keinen leeren Wert ausgeben kann, könne Sie stattdessen das einzelne Zeichen "?" verwenden.

    I.II - Web

    Befehle können über HTTP-Anforderungen ausgeführt werden, zum Beispiel:

    Code
    1. http://sonoff/cm?cmnd=Power%20TOGGLE
    2. http://sonoff/cm?cmnd=Power%20On
    3. http://sonoff/cm?cmnd=Power%20off
    4. http://sonoff/cm?user=admin&password=joker&cmnd=Power%20Toggle


    Wenn Sie ein Kennwort für den Zugriff auf die Web-Benutzeroberfläche festgelegt haben, muss dieses (im Klartext) in der URL der HTTP-Anforderung enthalten sein, z. B.

    Code
    1. http://sonoff/cm?&user=put_username_here&password=put_password_here&cmnd=Power%20On

    I.III - Serial

    Die serielle Schnittstelle ist auf 115200 Bit / s eingestellt, mit Ausnahme von Sonoff Dual und der Sonoff RF Bridge, da ist sie auf 19200 Bit / s eingestellt.

    II - Backlog verwenden

    Ab Version 5.3.0 ist eine Backlog-Funktion verfügbar, mit der mehrere Befehle hintereinander ausgeführt werden können (Verkettung). Maximale Befehle pro Anforderung:

    • Versionen <5.12.0i = 16 / Befehle
    • Versionen> = 5.12.0i = 30 / Befehle

    Beispiele für diesen Befehl sind:

    Code
    1. Backlog status 1; power 2; delay 20; power 2; status 4
    2. Backlog ssid1 myssid; password1 mypassword
    3. http://sonoff/cm?user=admin&password=joker&cmnd=Backlog%20Power%20Toggle;Power1%20off

    Befehlsübersicht

    Die folgende Befehlstabellen stehen zur Verfügung:

Teilen

Kommentare 7

  • NoitaercX und ich haben entdeckt, dass die im Original-Wiki angegebene und von uns übernommene MQTT-Struktur gar nicht mehr stimmt. Seit Version 5.0.5 muss es heißen %prefix%/%topic%/command.... und nicht mehr %topic%/%prefix%/command. Wir sollten es in unserem Wiki mindestens ergänzen. Dennoch scheint es eine unklare Fallback-Situation zu geben, in der ein Tasmota-Gerät sich doch plötzlich mit der "alten" Struktur beim MQTTBroker meldet. Sehr merkwürdig....

  • Ich hab hier erstmal die englische Original-Einleitung übersetzt und die Links fürs Wiki angepasst...

    Ich denke mal das bietet sich an...

    • Auf die Schnelle habe ich jetzt keine Fehler gefunden.

      Zwei alt Kommentare die zu Testzwecken erstellt wurden habe ich gelöscht.

  • Ist da z.B. auch mit gemeint dass dann auf der Weboberfläche z.B. an und aus steht statt on und off? Oder gibt es dafür schon eine Lösung?

    • Das wäre z. B. dann über ein Beispiel für den entsprechenden Befehl und die Payload darzustellen. Übrigens steht das schon irgendwo hier im Forum, weiß aber gerade nicht wo.

    • Dann such ich mal danach...

    • Das ist statext1...4, den AUS-Text setzt du mit statetext1 OFF den AN-Text setzt du mit statetext2 ON.