WLAN Zwischenstecker, kurz Dose genannt, mit tasmota geflashed

Wie schön öfters erwähnt, will ich keine Dose, die seine Daten in irgendeine Cloud schickt. Daher habe ich mir die gosund SP112 besorgt und mit tasmota OTA (over the air) geflashed. Die Dose hat zwei USB (max. 2,1A) Anschlüsse, die gemeinsam geschalten werden können und einen 230 V (max. 16A) Anschluss. WiFi 2,4 GHz wird unterstützt.

Dafür heißt es einmal einen Raspberry Pi herrichten. Zuerst einmal den Raspy per LAN Kabel verbinden und nicht mit WLAN. Dann die üblichen updates laden und git installieren

  • sudo apt-get update
  • sudo apt-get upgrade
  • sudo apt-get install git

Dann das tuya-convert Projekt klonen und die Installationsprocedure starten

Jetzt einmal die WLAN Dose in den Initialisierungsmodus bringen. Bei erstmaligen Gebrauch einfach einstecken, sonst Einschalter länger drücken bis die blaue LED blink. Jetzt das flash Programm starten und tasmota aufspielen.

  • sudo ./start_flash.sh

Wenn alles geklappt hat, dann dein Handy mit vtrust-flash verbinden und schon ist man auf der tasmota Seite. Dort dann alle Einstellungen für das WLAN, MQTT, etc. vornehmen.

Für die aktuelle Firmware zuerst immer die minimal Version einspielen und dann die Vollversion, derzeit 9.2: http://ota.tasmota.com/tasmota/release/

Folgende Templates habe ich verwendet. Für die „alten“, gekauft im Sommer 2020:
{„NAME“:“SP112alt“,“GPIO“:[57,145,56,146,0,22,0,0,0,0,21,0,17],“FLAG“:0,“BASE“:18}
für die neueren, gekauft im Herbst 2020 hat sich das geändert auf:
{„NAME“:“SP112new“,“GPIO“:[57,0,56,0,132,134,0,0,131,30,21,0,0],“FLAG“:4,“BASE“:18}

Um die Dose zu kalibrieren, kannst du in der Console folgendes eingeben:

savedata 1 		# Kalibriermodus starten
PowerSet xx,yy		# Leistungsaufnahme einstellen
VoltageSet xxx,yy	# z.B.: Voltageset 236,4 Spann
savedata 0		# speichert Kalibrierung ab

Genaueres zu den MQTT Einstellungen findest du unter:
https://tasmota.github.io/docs/MQTT/

Eine brauchbare App fürs Handy ist die TasmotaControl App

Ein gutes Video ist:

Jetzt müssen wir die Dose noch per MQTT ins openHAB einbinden.

thing: 
Bridge mqtt:broker:mosquitto "MQTT Broker mosquitto"
[host="localhost",port=1883,secure=false,clientID="openHAB2"]
{
Thing topic tasmota1 "Steckdose 1"{
Channels:       
Type switch : t1Power "Power"
[stateTopic="stat/tasmota1/POWER1", 
 commandTopic="cmnd/tasmota1/POWER1",
 transformationPattern="JSONPATH:$.POWER",
 on="ON", off="OFF"] 
Type switch : t1USB "USB" 
[stateTopic="stat/tasmota1/POWER2",
 commandTopic="cmnd/tasmota1/POWER2"] 
Type string : t1Status "status"
[commandTopic="cmnd/tasmota1/Status"] 
Type string : t1StatusModul  "tasmota Modul"
[stateTopic="tele/tasmota1/INFO1", 
 transformationPattern="JSONPATH:$.Module"] 
Type datetime : t1StatusZeit "Zeit"
[stateTopic="tele/tasmota1/SENSOR", 
 transformationPattern="JSONPATH:$.Time"]
Type string : t1Hostname "Hostname"
[stateTopic="stat/tasmota1/STATUS5",
 transformationPattern="JSONPATH:$.StatusNET.Hostname"] 
Type string : t1IP "IP Adresse"
[stateTopic="stat/tasmota1/STATUS5",
 transformationPattern="JSONPATH:$.StatusNET.IPAddress"] 
Type string : t1WiFiSSID "SSID"
[stateTopic="tele/tasmota1/STATE",
 transformationPattern="JSONPATH:$.Wifi.SSId"] 
Type string : t1WiFiRSSI "RSSI"
[stateTopic="tele/tasmota1/STATE", 
 transformationPattern="JSONPATH:$.Wifi.RSSI"]
Type string : t1WiFiSignal "Signal"
[stateTopic="tele/tasmota1/STATE", 
 transformationPattern="JSONPATH:$.Wifi.Signal"]
            
Type number : t1Powerload  "Power load"
[stateTopic="tele/tasmota1/SENSOR", 
 transformationPattern="JSONPATH:$.ENERGY.Power"]
Type number : t1Voltage "Line voltage"
[stateTopic="tele/tasmota1/SENSOR", 
 transformationPattern="JSONPATH:$.ENERGY.Voltage"]
Type number : t1Current "Line current"
[stateTopic="tele/tasmota1/SENSOR", 
 transformationPattern="JSONPATH:$.ENERGY.Current"]
Type number : t1Total "Total energy today"
[stateTopic="tele/tasmota1/SENSOR", 
 transformationPattern="JSONPATH:$.ENERGY.Total"]
Type number : t1Today  "Energy today"
[stateTopic="tele/tasmota1/SENSOR", 
 transformationPattern="JSONPATH:$.ENERGY.Today"]
Type number : t1Yesterday  "Energy yesterday"
[stateTopic="tele/tasmota1/SENSOR", 
 transformationPattern="JSONPATH:$.ENERGY.Yesterday"]
}

items:
// Steckdose 1 tasmota1 gosund SP112
Switch t1Power        "power" <switch>   
{channel="mqtt:topic:mosquitto:tasmota1:t1Power"}
Switch t1USB          "usb"   <switch>   
{channel="mqtt:topic:mosquitto:tasmota1:t1USB"}
Switch t1Config                          
{channel="mqtt:topic:mosquitto:tasmota1:t1Config"}
String t1StatusX                         
{channel="mqtt:topic:mosquitto:tasmota1:t1StatusX"}
String t1Status                          
{channel="mqtt:topic:mosquitto:tasmota1:t1Status" }
String t1Modul        "tasmota Modul"    
{channel="mqtt:topic:mosquitto:tasmota1:t1StatusModul" }
DateTime t1StatusZeit "Zeit"             
{channel="mqtt:topic:mosquitto:tasmota1:t1StatusZeit" }
String t1Hostname     "Hostname"         
{channel="mqtt:topic:mosquitto:tasmota1:t1Hostname" }
String t1IP           "IP"               
{channel="mqtt:topic:mosquitto:tasmota1:t1IP" }
String t1WiFiSSID     "SSID"             
{channel="mqtt:topic:mosquitto:tasmota1:t1WiFiSSID" }
String t1WiFiRSSI     "RSII"             
{channel="mqtt:topic:mosquitto:tasmota1:t1WiFiRSSI" }
String t1WiFiSignal   "Signal"           
{channel="mqtt:topic:mosquitto:tasmota1:t1WiFiSignal" }

Number t1Powerload    "Power load"       
{channel="mqtt:topic:mosquitto:tasmota1:t1Powerload"}
Number t1Voltage      "Line voltage"     
{channel="mqtt:topic:mosquitto:tasmota1:t1Voltage"}
Number t1Current      "Line current"     
{channel="mqtt:topic:mosquitto:tasmota1:t1Current"}
Number t1Total        "Energy total"     
{channel="mqtt:topic:mosquitto:tasmota1:t1Total"}
Number t1Today        "Energy today"     
{channel="mqtt:topic:mosquitto:tasmota1:t1Today"}
Number t1Yesterday    "Energy yesterday" 
{channel="mqtt:topic:mosquitto:tasmota1:t1Yesterday"}

sitemap:
sitemap mqtt_devices label="MQTT devices Status"
Frame label="Settings" {
Text label="Steckdose 1" icon="settings" {
Frame label="tasmota 1"{ 
Switch item=t1Power     label="Steckdose 1 Power []" 
Switch item=t1USB       label="Steckdose 1 USB []" 
Switch item=t1Status    label="Status"   			mappings=["1"="Stat 1", "3"="Stat 3", "5"="Stat 5"]
}	
Frame label="settings"{ 
Text item=t1Modul icon="poweroutlet_eu"
Text item=t1StatusZeit 	
label="Zeit [%1$tA, %1$td.%1$tm.%1$tY %1$tH:%1$tM]" 
icon="time"
Text item=t1Hostname
Text item=t1IP 		icon="network-on"
Text item=t1WiFiSSID 	icon="network"
Text item=t1WiFiRSSI 	icon="network"
Text item=t1WiFiSignal 	label="Signal[%s dBm]" icon="network"
}		
Frame label="energy"{ 
Text item=t1Powerload 	label="Leistung [%s W]"
Text item=t1Voltage   	label="Spannung [%s V]"   
Text item=t1Current 	label="Strom [%.3f A]"
Text item=t1Total 	label="Energy total [%.3f kWh]"   
Text item=t1Today	label="Energy heute [%.3f kWh]"
Text item=t1Yesterday 	label="Energy gestern [%.3f kWh]"  
			}	
		}

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Begin typing your search above and press return to search. Press Esc to cancel.