Der-Smarte-Wlansteckdose-Tasmota-Und-Co.-Thread

Begonnen von schwatter, 13 August 2018, 18:23:50

Vorheriges Thema - Nächstes Thema

Doublefant

Danke für eure Hilfe und Hinweise, super Community  :D
Habe es jetzt noch mal Tasmota probiert, nachdem ich die Hürde mit dem Wlan genommen habe lief alles automatisch mit dem neuen internen MQTT2-Fhem-Server.
Tolle Sache.

Der Vollständigkeit halber noch meine Lösung, 4x die Flashbrücke "drücken" erzeute den AP.
Wobei das sich mit der neuen Firmwareversion 6.2 erledigt haben sollte. Ich war mit meinen Experimenten einfach paar Tage zu früh dran.^^

sash.sc

#136
So.

Habe jetzt 2 Gosund SP-1 ohne probleme mit nem FTDI Serial Adapter auf Tasmota umgeflasht.
Habe dann den MQTT2_Server angelegt und in den Atributen autocreate auf 1 gesetzt.
Wunderbar. Alle beide geflashten Gosund werden auch komplett angelegt.

Jetzt die Frage, wie kann ich die Steckdosen von dem FHEM WebIf An/aus schalten.

Muss dabei sagen, mit MQTT habe bis jetzt noch keine Erfahrung. Muss da noch was in den Attributen angelegt werden ?!?!?!

Danke für die Hilfe.

Wenn das hier OT ist bitte eben Bescheid geben !


Gruß und Danke
Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

Paul.baumann

Das Attribut setList ist dein Freund:

on cmnd/name/POWER On
off cmnd/name/POWER Off


sollte funktionieren.


Paul
FHEM auf Raspberry 3
MaxCube (V1.20.04 a-culfw) für HM, MaxCube (V1.20.04 a-culfw) für diverse Max!, NanoCul 433/868, TinyTX-Nachbauten
Multiroom: mehrere Squeezelite-Clients auf Raspberry B+ und LMS auf QNap
Huger WM918 Wetterstation integriert
Tiao-Sprinkler (Open-Sprinkler) integriert

sash.sc

#138
Zitat von: Paul.baumann am 01 September 2018, 13:12:46
Das Attribut setList ist dein Freund:

on cmnd/name/POWER On
off cmnd/name/POWER Off


sollte funktionieren.


Paul

Perfekt !

Jetzt Fehlt nur noch die Anzeige von state/Spannung/Strom/Leistung mit den Einheiten  :) ;)

Danke

Hier meine Def:



stateFormat {sprintf("U:%.1f V - I:%.1f A - P:%.1f W - phi: %.1f - KWh heute: %.1f",
ReadingsVal("$name","ENERGY_Voltage",0),
ReadingsVal("$name","ENERGY_Current",0),
ReadingsVal("$name","ENERGY_Power",0),
ReadingsVal("$name","ENRGY_Factor",0),
ReadingsVal("$name","ENERGY_Today",0))}
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

netbus

Ich hätte einen AM2301 herumliegen.
Gibt es einen GPIO den man nützen könnte bei den SP1 Steckdosen?

schwatter

Zitat von: sash.sc am 01 September 2018, 13:22:52
Perfekt !

Jetzt Fehlt nur noch die Anzeige von state/Spannung/Strom/Leistung mit den Einheiten  :) ;)

Danke

Hier meine Def:



stateFormat {sprintf("U:%.1f V - I:%.1f A - P:%.1f W - phi: %.1f - KWh heute: %.1f",
ReadingsVal("$name","ENERGY_Voltage",0),
ReadingsVal("$name","ENERGY_Current",0),
ReadingsVal("$name","ENERGY_Power",0),
ReadingsVal("$name","ENRGY_Factor",0),
ReadingsVal("$name","ENERGY_Today",0))}


Wenn das stateFormat so gesetzt ist, erhält man in diesem Fall keine Rückmeldung, wenn der Button an der Steckdose gedrückt wird.
Dazu folgendes ergänzen,

attr Gosund userReadings state {ReadingsVal($name,"POWER","")}

sash.sc

#141
[emoji106]

Edit:

habe mal den Vorschlag eingesetzt.


attr Gosund userReadings state {ReadingsVal($name,"POWER","")}


Es ändert sich aber nix, wenn ich die Taste an der Dose drücke. Das "state" ändert sich. aber in der Übersicht wird nix angezeigt ob ON oder OFF.

hier mal das device


Internals:
   CID        DVES_4B7761
   DEF        DVES_4B7761
   DEVICETOPIC MQTT2_DVES_4B7761
   IODev      mqtt
   LASTInputDev mqtt
   MSGCNT     693
   NAME       MQTT2_DVES_4B7761
   NR         476
   STATE      U:232.0 V - I:0.2 A - P:22.0 W - phi: 0.0
   TYPE       MQTT2_DEVICE
   mqtt_MSGCNT 693
   mqtt_TIME  2018-09-06 16:44:02
   READINGS:
     2018-09-06 16:44:02   ENERGY_Current  0.218
     2018-09-06 16:44:02   ENERGY_Factor   0.44
     2018-09-06 16:43:14   ENERGY_Period   1
     2018-09-06 16:44:02   ENERGY_Power    22
     2018-09-06 16:44:02   ENERGY_Today    0.150
     2018-09-06 16:44:02   ENERGY_Total    0.762
     2018-09-06 16:44:02   ENERGY_Voltage  232
     2018-09-06 16:44:02   ENERGY_Yesterday 0.185
     2018-09-01 13:07:41   FallbackTopic   DVES_4B7761
     2018-09-01 13:07:41   GroupTopic      sonoffs
     2018-09-01 13:07:41   Hostname        gosund1-5985
     2018-09-01 13:07:41   IPAddress       
     2018-09-06 15:31:49   LWT             online
     2018-09-01 13:07:41   Module          BlitzWolf SHP2
     2018-09-01 12:52:21   OtaUrl          http://sonoff.maddox.co.uk/tasmota/sonoff-DE.bin
     2018-09-06 16:43:29   POWER           ON
     2018-09-01 13:07:41   RestartReason   Power on
     2018-09-01 12:50:06   SetOption20     OFF
     2018-09-01 12:50:36   SetOption21     ON
     2018-09-06 16:44:02   Time            2018-09-06T15:44:02
     2018-09-01 12:52:47   UPGRADE         Successful. Restarting
     2018-09-01 12:52:21   Upgrade         Version 6.2.0 from http://sonoff.maddox.co.uk/tasmota/sonoff-DE.bin
     2018-09-06 16:43:14   Uptime          5T03:35:44
     2018-09-06 16:43:14   Vcc             3.138
     2018-09-01 13:07:41   Version         6.2.0
     2018-09-01 13:07:41   WebServerMode   Admin
     2018-09-06 16:43:14   Wifi_AP         1
     2018-09-06 16:43:14   Wifi_APMac     
     2018-09-06 16:43:14   Wifi_RSSI       78
     2018-09-06 16:43:14   Wifi_SSId       
     2018-09-06 16:44:02   state           ON
Attributes:
   IODev      mqtt
   alias      Gosund_1
   event-on-change-reading .*
   group      Energie
   icon       message_socket
   readingList DVES_4B7761:tele/gosund/LWT:.* LWT
DVES_4B7761:cmnd/gosund/POWER:.* POWER
DVES_4B7761:stat/gosund/RESULT:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund/POWER:.* POWER
DVES_4B7761:tele/gosund1/LWT:.* LWT
DVES_4B7761:cmnd/gosund1/POWER:.* POWER
DVES_4B7761:tele/gosund1/INFO1:.* { json2nameValue($EVENT) }
DVES_4B7761:tele/gosund1/INFO2:.* { json2nameValue($EVENT) }
DVES_4B7761:tele/gosund1/INFO3:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund1/RESULT:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund1/POWER:.* POWER
DVES_4B7761:tele/gosund1/STATE:.* { json2nameValue($EVENT) }
DVES_4B7761:tele/gosund1/SENSOR:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund1/UPGRADE:.* UPGRADE
DVES_4B7761:tele/gosund1/UPTIME:.* { json2nameValue($EVENT) }
   room       MQTT
   setList    on cmnd/gosund1/POWER On
off cmnd/gosund1/POWER Off
   stateFormat {sprintf("U:%.1f V - I:%.1f A - P:%.1f W - phi: %.1f",
ReadingsVal("$name","ENERGY_Voltage",0),
ReadingsVal("$name","ENERGY_Current",0),
ReadingsVal("$name","ENERGY_Power",0),
ReadingsVal("$name","ENRGY_Factor",0))}
   userReadings state {ReadingsVal($name,"POWER","")}

Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

schwatter

Wie meinst du das, Übersicht? Sind die Readings gemeint? Empfehlen würde ich, alle "on" 's und "off" 's kleinzuschreiben.
Hier mal ein list von mir,



Internals:
   CID        DVES_22ED11
   DEF        DVES_22ED11
   DEVICETOPIC Gosund_Kaffeemaschine
   IODev      myFhembroker
   LASTInputDev myFhembroker
   MSGCNT     14
   NAME       Gosund_Kaffeemaschine
   NR         169
   STATE      Spannung: 231 V - Stromstärke: 0.000 A - Leistung: 0 W - Wifi_RSSI: 68 %
   TYPE       MQTT2_DEVICE
   myFhembroker_MSGCNT 14
   myFhembroker_TIME 2018-09-06 18:45:00
   READINGS:
     2018-09-06 18:44:40   ENERGY_Current  0.000
     2018-09-06 18:44:40   ENERGY_Factor   0.00
     2018-09-06 18:44:40   ENERGY_Period   0
     2018-09-06 18:44:40   ENERGY_Power    0
     2018-09-06 18:44:40   ENERGY_Today    0.000
     2018-09-06 18:44:40   ENERGY_Total    1.384
     2018-09-06 18:44:40   ENERGY_Voltage  231
     2018-09-06 18:44:40   ENERGY_Yesterday 0.113
     2018-09-03 22:36:36   FallbackTopic   DVES_22ED11
     2018-09-03 22:36:36   GroupTopic      sonoffs
     2018-09-03 22:36:36   Hostname        Gosund_Kaffeemaschine-3345
     2018-09-03 22:36:36   IPAddress       192.168.178.43
     2018-09-06 18:26:56   LWT             online
     2018-09-03 22:36:36   Module          BlitzWolf SHP2
     2018-09-06 18:45:00   POWER           off
     2018-09-03 22:36:19   Restart         Restarting
     2018-09-03 22:36:36   RestartReason   Software/System restart
     2018-09-05 21:47:27   STATE           
     2018-09-06 18:44:40   Time            2018-09-06T18:44:35
     2018-09-06 18:44:40   Uptime          2T20:08:12
     2018-09-06 18:44:40   Vcc             3.126
     2018-09-03 22:36:36   Version         6.2.0
     2018-09-03 22:36:36   WebServerMode   Admin
     2018-09-06 18:44:40   Wifi_AP         1
     2018-09-06 18:44:40   Wifi_APMac      CC:CE:1E:50:CA:A6
     2018-09-06 18:44:40   Wifi_RSSI       68
     2018-09-06 18:44:40   Wifi_SSId       FRITZ!Box1313
     2018-09-06 18:45:00   state           off
Attributes:
   IODev      myFhembroker
   devStateIcon on:rc_GREEN:off off:rc_RED:on offline:rc_BLUE:off on:rc_GREEN:off off:rc_RED:on offline:rc_BLUE:off
   icon       message_socket
   readingList DVES_22ED11:tele/Gosund_Kaffeemaschine/LWT:.* LWT
DVES_22ED11:cmnd/Gosund_Kaffeemaschine/POWER:.* POWER
DVES_22ED11:tele/Gosund_Kaffeemaschine/INFO1:.* { json2nameValue($EVENT) }
DVES_22ED11:tele/Gosund_Kaffeemaschine/INFO2:.* { json2nameValue($EVENT) }
DVES_22ED11:tele/Gosund_Kaffeemaschine/INFO3:.* { json2nameValue($EVENT) }
DVES_22ED11:stat/Gosund_Kaffeemaschine/RESULT:.* { json2nameValue($EVENT) }
DVES_22ED11:stat/Gosund_Kaffeemaschine/POWER:.* POWER
DVES_22ED11:tele/Gosund_Kaffeemaschine/STATE:.* { json2nameValue($EVENT) }
DVES_22ED11:tele/Gosund_Kaffeemaschine/SENSOR:.* { json2nameValue($EVENT) }
DVES_22ED11:tele/Gosund_Kaffeemaschine/UPTIME:.* { json2nameValue($EVENT) }
   room       2. Küche,MQTT2_DEVICE
   setList    on cmnd/Gosund_Kaffeemaschine/POWER on
off cmnd/Gosund_Kaffeemaschine/POWER off
reboot cmnd/Gosund_Kaffeemaschine/Restart 1
   stateFormat {sprintf("Spannung: %.0f V - Stromstärke: %.3f A - Leistung: %.0f W - Wifi_RSSI: %.0f %%",
ReadingsVal($name,"ENERGY_Voltage",0),
ReadingsVal($name,"ENERGY_Current",0),
ReadingsVal($name,"ENERGY_Power",0),
ReadingsVal($name,"Wifi_RSSI",0))}
   userReadings state {ReadingsVal($name,"POWER","")}
   webCmd     on:off:reboot

Shojo

#143
Das ist aktuell meine Lösung....
Geht bestimmt auch schöner aber erst mal reicht es...

# EDIT: Habe das mal auf kWh geändert ;) 

{
my $state = lc ReadingsVal($name, "POWER", "off");
my $devStateIcon = 'rc_GREEN.svg';

if ($state eq "off")
{
$devStateIcon = 'rc_RED.svg';
}

if ($state eq "offline")
{
$devStateIcon = 'rc_BLUE.svg';
}

"<img width='32px' height='32px' src='/fhem/images/fhemSVG/" . $devStateIcon . "'>" . sprintf(
"&nbsp;&nbsp;[Aktuell: %.1f W (%.3f A) Tag: %.2f kWh]",
ReadingsVal($name,"ENERGY_Power",-1),
ReadingsVal($name,"ENERGY_Current",-1),
ReadingsVal($name,"ENERGY_Today",-1)
)
}
FHEM auf: Shuttle PC (x64) (Docker)
Bridge: SignalESP 433mHz, ConBee (deCONZ in Docker)
Rest: ESP8266, SONOFF, Sonos, Echo Dot, Xiaomi Vacuum (root), ESP RGBWW Wifi Led Controller, Node-RED, LEDMatrix, Pixel It

lin_win

Bitte nicht Kw/h...
Bitte so: kWh

Ansonsten Danke ! Super Teil !

sash.sc

habe die Gosund etwas angepasst.

jedoch wird bei mir nicht das devStateIcon dargestellt !!!

jemand eine Ahung warum ??

Hier das aktuelle device.


CID        DVES_4B7761
   DEF        DVES_4B7761
   DEVICETOPIC MQTT2_DVES_4B7761
   IODev      mqtt
   LASTInputDev mqtt
   MSGCNT     22
   NAME       MQTT2_DVES_4B7761
   NR         477
   STATE      P:25.0 W - U:232.0 V - I:0.1 A
   TYPE       MQTT2_DEVICE
   mqtt_MSGCNT 22
   mqtt_TIME  2018-09-06 21:18:55
   READINGS:
     2018-09-06 21:18:55   ENERGY_Current  0.136
     2018-09-06 21:18:55   ENERGY_Factor   0.79
     2018-09-06 21:14:55   ENERGY_Period   1
     2018-09-06 21:18:55   ENERGY_Power    25
     2018-09-06 21:18:55   ENERGY_Today    0.208
     2018-09-06 21:18:55   ENERGY_Total    0.820
     2018-09-06 21:18:55   ENERGY_Voltage  232
     2018-09-06 21:18:55   ENERGY_Yesterday 0.185
     2018-09-06 21:14:16   LWT             online
     2018-09-06 21:14:55   POWER           ON
     2018-09-06 21:18:55   Time            2018-09-06T20:18:54
     2018-09-06 21:14:55   Uptime          0T03:25:26
     2018-09-06 21:14:55   Vcc             3.136
     2018-09-06 21:14:55   Wifi_AP         1
     2018-09-06 21:14:55   Wifi_APMac    xxxxxxxxxxx
     2018-09-06 21:14:55   Wifi_RSSI       84
     2018-09-06 21:14:55   Wifi_SSId       WLAN-DFB306
     2018-09-06 21:18:55   state           ON
Attributes:
   IODev      mqtt
   alias      Gosund_1
   devStateIcon on:rc_GREEN:off off:rc_RED:on offline:rc_BLUE:off
   event-on-change-reading .*
   group      Energie
   icon       message_socket
   readingList DVES_4B7761:tele/gosund/LWT:.* LWT
DVES_4B7761:cmnd/gosund/POWER:.* POWER
DVES_4B7761:stat/gosund/RESULT:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund/POWER:.* POWER
DVES_4B7761:tele/gosund1/LWT:.* LWT
DVES_4B7761:cmnd/gosund1/POWER:.* POWER
DVES_4B7761:tele/gosund1/INFO1:.* { json2nameValue($EVENT) }
DVES_4B7761:tele/gosund1/INFO2:.* { json2nameValue($EVENT) }
DVES_4B7761:tele/gosund1/INFO3:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund1/RESULT:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund1/POWER:.* POWER
DVES_4B7761:tele/gosund1/STATE:.* { json2nameValue($EVENT) }
DVES_4B7761:tele/gosund1/SENSOR:.* { json2nameValue($EVENT) }
DVES_4B7761:stat/gosund1/UPGRADE:.* UPGRADE
DVES_4B7761:tele/gosund1/UPTIME:.* { json2nameValue($EVENT) }
DVES_4B7761:tele/gosund1/LWT:.* LWT
   room       MQTT
   setList    on cmnd/gosund1/POWER on
off cmnd/gosund1/POWER off
reboot cmnd/gosund1/Restart 1
   stateFormat {sprintf("P:%.1f W - U:%.1f V - I:%.1f A",
ReadingsVal("$name","ENERGY_Power",0),
ReadingsVal("$name","ENERGY_Voltage",0),
ReadingsVal("$name","ENERGY_Current",0))}
   userReadings state {ReadingsVal($name,"POWER","")}
   webCmd     on:off:reboot


das ganze sieht dann so aus wie auf dem Bild

Gruß und Danke
Sascha

Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

schwatter

#146
@Shojo
Von mir auch ein Danke! Löst außerdem noch ein anderes Problem, was ich extern hatte.
Habe es leicht verändert, incl. kWh im ersten Thread hinzugefügt.

@ sash.sc
Das stateFormat überschreibt die devStateIcon's. Beides geht nur im angepassten stateFormat.
Nimm das angepasste stateFormat von Shojo.

sash.sc

Schaut schonmal ganz gut aus.

Der Versatz hinter dem DevStateIcon ist gewollt ?!?!?  ;)

Gruß
Sascha

Danke @shojo
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

Shojo

Zitat von: sash.sc am 06 September 2018, 21:42:21
Der Versatz hinter dem DevStateIcon ist gewollt ?!?!?  ;)

Leider nein, weiß aber aktuell nicht wie ich das verhindere....
FHEM auf: Shuttle PC (x64) (Docker)
Bridge: SignalESP 433mHz, ConBee (deCONZ in Docker)
Rest: ESP8266, SONOFF, Sonos, Echo Dot, Xiaomi Vacuum (root), ESP RGBWW Wifi Led Controller, Node-RED, LEDMatrix, Pixel It

sash.sc

Was hat das mit den Steuerbefehlen auf sich ?


<div><img width='24px' height='24px' src='/fhem/images/fhemSVG/rc_GREEN.svg'>&nbsp;&nbsp;


Hinten das &nbsp
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb