Tasmota.sh v1.07 - Von Tasmota ohne Umwege in die CCU3

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Tasmota.sh v1.07 - Von Tasmota ohne Umwege in die CCU3

Beitrag von blackhole » 02.11.2020, 14:04

Tasmota.sh überträgt Messwerte von "tasmotisierten" Geräten ohne Umwege, ohne Addons und ohne externe Steuerungen in die CCU3.
Zurzeit werden mehr als 2000 Geräte unterschiedlicher Art, Marken und Hersteller von der Tasmota-Firmware unterstützt.
Tasmota.sh ist ein absolutes Nischenprodukt für Leute, die wissen was sie (in der Shell) tun.

Das beispielhafte Shell-Skript wertet den Tasmota-Status Nr. 8 recht elegant mittels jq aus und schreibt die Werte dann minütlich via RPC in SysVars einer CCU3 (Leistung, Energie aktuell, Energie gestern, Energie gesamt). Weitere Werte wie Spannung, Stromstärke, Scheinleistung und Blindleistung sind natürlich auf gleichem Wege auch übertragbar. Das Skript läuft direkt auf der CCU3, kann aber auch ausgelagert werden.


Die folgende Anleitung ist für das Tasmota.sh-Paket v1.07 gültig.


tasmota.sh und jq

Das Paket ist ein übliches .tar.gz-Archiv. Dieses muss auf die CCU3 kopiert werden (nach /usr/local/addons/) und dort entpackt werden. In dem Verzeichnis /usr/local/addons/tasmota/ ist im Ergebnis dann das Skript tasmota.sh und das Utility jq (für die Original-Firmware) zu finden.


Installation
  • Das Paket bitte nicht unter Windows entpacken, hierbei würden die (Linux-)Dateirechte verloren gehen.
  • Die Verwendung des Pfades /usr/local/addons/tasmota/ ist im Rahmen dieser Anleitung obligatorisch.
  • Die beinhalteten Dateien werden, wie nachfolgend beschrieben, direkt auf der CCU3 entpackt.

Für den nachfolgenden Punkt 1 kann z.B. WinSCP, für die Punkte 2 und 3 kann z.B. PuTTY verwendet werden.

  1. Das Paket nach /usr/local/addons/ kopieren.
  2. Code: Alles auswählen

    cd /usr/local/addons/
  3. Code: Alles auswählen

    tar xvfz /usr/local/addons/tasmota-1.07.tar.gz

Die im Paket beinhalteten Dateien werden auf diesem Weg automatisch nach /usr/local/addons/tasmota/ entpackt.


Konfiguration

Alle nötigen Einstellungen, Anpassungen und Erweiterungen werden in der Datei /usr/local/addons/tasmota/tasmota.sh vorgenommen.

  • Die IP-Adresse des Tasmota-Devices ist in nachfolgender Zeile zu finden und muss entsprechend angepasst werden:

    Code: Alles auswählen

    TasmotaIP="192.168.x.x"
  • Falls eingerichtet, muss das Tasmota-Passwort entsprechend angegeben werden:

    Code: Alles auswählen

    TasmotaUser="admin"
    TasmotaPassword=""
  • Die in der CCU3 anzulegenden Systemvariablen (Typ: Zahl) sind in nachfolgenden Zeilen definiert und können entsprechend angepasst werden:

    Code: Alles auswählen

    SysVarLeistung="Leistung"
    SysVarEnergieHeute="Energie_heute"
    SysVarEnergieGestern="Energie_gestern"
    SysVarEnergieInsgesamt="Energie_insgesamt"
  • Die Namen der Systemvariablen können im Rahmen der allgemeinen Empfehlungen für die CCU frei gewählt werden. Bei Verwendung von Leerzeichen im Namen ist darauf zu achten, dass diese im Skript durch %20 ersetzt werden (URL-Encoding).

Erster Test

Der erste Test erfolgt durch manuellen Start des Skriptes.

  • In der Shell wird das Skript wie folgt ausgeführt:

    Code: Alles auswählen

    /usr/local/addons/tasmota/tasmota.sh
  • Für's Debugging wird eine entsprechende Shell-Ausgabe generiert:

    Code: Alles auswählen

    -------------------------------------------
    Leistung: 42 W
    Energie heute: 0.424 kW/h
    Energie gestern: 0.242 kW/h
    Energie insgesamt: 4.242 kW/h
    -------------------------------------------

Crontab einrichten

Beispiel für einen einfachen Crontab-Eintrag (minütliches Übertragen der Werte):

  1. Die Datei /usr/local/crontabs/root editieren und um nachfolgende Zeile erweitern.

    Code: Alles auswählen

    * * * * * /usr/local/addons/tasmota/tasmota.sh > /dev/null
  2. Crond durchstarten:

    Code: Alles auswählen

    /etc/init.d/S98crond restart
  3. Abschließende Kontrolle mittels:

    Code: Alles auswählen

    crontab -l

Individuelle Anpassungen und Erweiterungen

Das Beispielskript ist weitgehend selbsterklärend und individuell erweiterbar und duplizierbar. Weitere Werte wie z.B. Spannung, Stromstärke, Scheinleistung und Blindleistung hinzuzufügen ist ohne großen Aufwand möglich.


Fehleranalyse

Klappt etwas nicht, bitte neben einer aussagekräftigen Fehlerbeschreibung, immer auch die Ausgaben nachfolgender Shell-Befehle mitteilen:

Code: Alles auswählen

ls -la /usr/local/addons/

Code: Alles auswählen

ls -la /usr/local/addons/tasmota/

Code: Alles auswählen

/usr/local/addons/tasmota/tasmota.sh

Code: Alles auswählen

cat /usr/local/addons/tasmota/tasmota.sh

Code: Alles auswählen

crontab -l

Backup

Alle zugehörigen Dateien unter /usr/local/addons/tasmota/ sowie die angepasste Crontab sind ohne weiteres Zutun Bestandteil des System-Backups der CCU3.


Verteiler

Falls das kostenlos erhältliche Paket für jemanden von Interesse sein sollte, einfach hier im Thread nachfragen oder eine PN an mich richten:
  • Bitte in jedem Fall angeben welche Zentrale (Hardware) verwendet wird und welche Firmware/-Version (Software) installiert ist.
  • Die Antwort-PN bitte innerhalb von 24 Stunden abholen.

OT #1: Ein Tasmota-Device via CCU3 per HM-Script einschalten

Code: Alles auswählen

system.Exec("curl -s --max-filesize 4096 --max-time 10 'http://192.168.x.x/cm?cmnd=Power%20On' &");
"192.168.x.x" ist in obigem HM-Skript die IP des Tasmota-Devices.


OT #2: Ein Tasmota-Device via CCU3 per HM-Script ausschalten

Code: Alles auswählen

system.Exec("curl -s --max-filesize 4096 --max-time 10 'http://192.168.x.x/cm?cmnd=Power%20Off' &");
"192.168.x.x" ist in obigem HM-Skript die IP des Tasmota-Devices.


OT #3: Ad-hoc-Rückmeldung zur CCU3 per Tasmota-Rule

Code: Alles auswählen

on Power1#State=1 do WebSend [192.168.x.x:8181] /hm.exe?value=dom.GetObject(ID_SYSTEM_VARIABLES).Get('SmartPlug-Lampe').State(1) endon on Power1#State=0 do WebSend [192.168.x.x:8181] /hm.exe?value=dom.GetObject(ID_SYSTEM_VARIABLES).Get('SmartPlug-Lampe').State(0) endon
"192.168.x.x" in der obigen Tasmota-Rule ist die IP der CCU3. Die beispielhafte CCU3-Systemvariable "SmartPlug-Lampe" ist vom Typ Logikwert.
Zuletzt geändert von blackhole am 17.10.2023, 07:27, insgesamt 88-mal geändert.

Matthias K.
Beiträge: 1165
Registriert: 14.02.2016, 12:32
System: Alternative CCU (auf Basis OCCU)
Wohnort: Heidenheim
Hat sich bedankt: 57 Mal
Danksagung erhalten: 225 Mal

Re: Tasmota.sh v1.04 - Von Tasmota ohne Umwege in die CCU3

Beitrag von Matthias K. » 02.11.2020, 15:51

Hm, ich muss irgendwie schmunzeln wenn du schreibst das sei eine Lösung ohne Addons und dann ein Shell-Script unter /usr/local/addons/ liegt. :D

Vielleicht solltest du deine Lösungen als "Light"-Addons bezeichnen die ohne unnötigen Ballast kommen, denn Addons sind es ja irgendwie doch (oder wie unter der WebUI genannt "Zusatzsoftware"), wenn zusätzliche Software (und wenn es nur ein Script ist) auf die Zentrale gebracht wird.

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Tasmota.sh v1.04 - Von Tasmota ohne Umwege in die CCU3

Beitrag von blackhole » 02.11.2020, 16:54

scorpionking hat geschrieben:
02.11.2020, 15:51
Hm, ich muss irgendwie schmunzeln wenn du schreibst das sei eine Lösung ohne Addons und dann ein Shell-Script unter /usr/local/addons/ liegt.

Es sei dir gegönnt, das hat aber rein pragmatische Gründe.

scorpionking hat geschrieben:
02.11.2020, 15:51
Vielleicht solltest du deine Lösungen als "Light"-Addons bezeichnen ...

Nein, definitiv nicht. ¯\_(ツ)_/¯

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Tasmota.sh v1.04 - Von Tasmota ohne Umwege in die CCU3

Beitrag von blackhole » 02.11.2020, 20:13

Die zwei noch fehlenden Abschnitte in der Anleitung reichte ich voraussichtlich morgen nach.
Für heute ist Schluss, die Familie ruft.

Um mit der Anleitung eventuellen Nachfragen zuvorzukommen, bitte ich bis dahin noch um Geduld.
Den drei aktuellen Anfragen komme ich dann auch entsprechend nach.

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Tasmota.sh v1.04 - Von Tasmota ohne Umwege in die CCU3

Beitrag von blackhole » 03.11.2020, 08:30

blackhole hat geschrieben:
02.11.2020, 20:13
Die zwei noch fehlenden Abschnitte in der Anleitung reichte ich voraussichtlich morgen nach.

Ich habe fertig. ¯\_(ツ)_/¯

blackhole hat geschrieben:
02.11.2020, 20:13
Den drei aktuellen Anfragen komme ich dann auch entsprechend nach.

Ist soeben passiert.

Robbe01
Beiträge: 6
Registriert: 30.08.2014, 19:37

Re: Tasmota.sh v1.04 - Von Tasmota ohne Umwege in die CCU3

Beitrag von Robbe01 » 11.11.2020, 20:51

Sorry, bitte helft mir kurz. Wo kann ich das genannte Tasmota Paket downloaden?
Danke

cityofsilence
Beiträge: 269
Registriert: 14.11.2018, 20:43
System: CCU
Wohnort: Bayern
Hat sich bedankt: 14 Mal
Danksagung erhalten: 17 Mal

Re: Tasmota.sh v1.04 - Von Tasmota ohne Umwege in die CCU3

Beitrag von cityofsilence » 12.11.2020, 07:00

Falls das kostenlos erhältliche Paket für jemanden von Interesse sein sollte, einfach eine PN an mich richten.
Bitte unbedingt angeben welche Zentrale verwendet wird (CCU3/piVCCU3/RM) und welche Firmware-Version installiert ist.
Steht so oben in der Anleitung :!:
Gruß André

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Tasmota.sh v1.04 - Von Tasmota ohne Umwege in die CCU3

Beitrag von blackhole » 20.11.2020, 07:25

Die ursprünglich hier beschriebene Lösung für das Ein- und Ausschalten von Tasmota-Devices (inkl. Ad-hoc-Rückmeldung zur CCU) ist jetzt in Form von "OT-Abschnitten" Bestandteil dieser Anleitung.

Diese Abschnitte sind mit "OT" gekennzeichnet, da sie unabhängig von Tasmota.sh funktionieren.

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Tasmota.sh v1.05 - Von Tasmota ohne Umwege in die CCU

Beitrag von blackhole » 10.06.2021, 08:45

Update: Tasmota.sh-Paket v1.05

Für interessierte Nutzer ist ab sofort das neue Paket Tasmota.sh v1.05 verfügbar.


Changelog
  • cURL-Aufruf in tasmota.sh angepasst (Abfrage Tasmota-Device)
  • cURL-Aufrufe in der Anleitung entsprechend angepasst (OT #1, OT #2)
  • Kleine Anpassungen in tasmota.sh (Kommentar, Variablenbezeichnung)

Das neue Paket ist, wie in der Anleitung beschrieben, auf dem bekannten Weg kostenlos zu bekommen.

DukeNukem4Ever
Beiträge: 5
Registriert: 22.09.2021, 11:46
System: CCU
Wohnort: Garbsen
Hat sich bedankt: 3 Mal

Re: Tasmota.sh v1.05 - Von Tasmota ohne Umwege in die CCU

Beitrag von DukeNukem4Ever » 23.09.2021, 12:51

Hallo.

Ich hätte gern das Paket: Tasmota.sh-Paket v1.05

Mein System läuft auf 2 RaspMatic 3B+, einer nur HM der andere nur ESPs.

Gruß
Jürgen

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“