[Gelöst] MQTT Steckdose Gosund SP112 mit USB / 2x devStateIcon und on-for-timer

Begonnen von thgorjup, 21 Dezember 2020, 22:11:15

Vorheriges Thema - Nächstes Thema

thgorjup

Hallo zusammen,
ich habe eine Gosund SP112 mit TASMOTA per MQTT angebunden. Nun möchte ich den USB mittels "on-for-timer" schalten. Der ist mit POWER2 in den Readings.
Das klappt aber nur für die Hauptsteckdose. Weiterhin möchte ich die Zustände von Steckdose und USB als devStateIcon einstellen.
Momentan zeige ich per StateFormat die Zustände als OFF-OFF bzw. ON-OFF usw. an, wobei links die Hauptsteckdose und rechts USB ist.

Kann mir jemand helfen. Primär wichtig ist die on-for-timer Funktion.
Danke schonmal!

Gruß
Thomas


defmod MQTT2_Gosund_6 MQTT2_DEVICE Gosund_6_USB
attr MQTT2_Gosund_6 IODev myBroker
attr MQTT2_Gosund_6 alias AirWick
attr MQTT2_Gosund_6 genericDeviceType outlet
attr MQTT2_Gosund_6 icon ge_wht_steckdose
attr MQTT2_Gosund_6 readingList Gosund_6:tele/gosund6/LWT:.* LWT\
Gosund_6:cmnd/gosund6/POWER:.* POWER\
Gosund_6:tele/gosund6/INFO1:.* { json2nameValue($EVENT) }\
Gosund_6:tele/gosund6/INFO2:.* { json2nameValue($EVENT) }\
Gosund_6:tele/gosund6/INFO3:.* { json2nameValue($EVENT) }\
Gosund_6:stat/gosund6/RESULT:.* { json2nameValue($EVENT) }\
Gosund_6:stat/gosund6/POWER1:.* POWER1\
Gosund_6:stat/gosund6/POWER2:.* POWER2\
Gosund_6:tele/gosund6/STATE:.* { json2nameValue($EVENT) }\
Gosund_6:tele/gosund6/SENSOR:.* { json2nameValue($EVENT) }
attr MQTT2_Gosund_6 room MQTT2_DEVICE
attr MQTT2_Gosund_6 setList on-usb cmnd/gosund6/POWER2 on\
off-usb cmnd/gosund6/POWER2 off\
on cmnd/gosund6/POWER1 on\
off cmnd/gosund6/POWER1 off\
reboot cmnd/gosund6/Restart 1
attr MQTT2_Gosund_6 stateFormat {ReadingsVal($name,"LWT","") eq "Offline" ? "absent" : ReadingsVal($name,"POWER1","")."-".ReadingsVal($name,"POWER2","")}
attr MQTT2_Gosund_6 webCmd on:off:on-usb:off-usb:reboot
FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

MadMax-FHEM

Ich hab auch zwei so Dinger, ebenfalls Tasmota.

Habe es mittels attr-template eingebunden: tasmota_POW_USB_split
Sind halt 2 Devices: 1x Hauptsteckdose und 1x USB

Ich habe daher bei beiden on-for-timer (in der Auswahl nicht getestet) und auch Icons etc.

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

thgorjup

Ok, zwei Devices hatte ich auch schon überlegt. Habe es jetzt erstmal so mit einem DOIF gelöst. Das reicht mir erstnmal.
Ich will, dass mein Air Wick Freshmatic nur alle 4h einemal sprüht und nicht 40x am Tag.


defmod AirWickSpray DOIF ([+[4]:30]) (set MQTT2_Gosund_6 on-usb) (set MQTT2_Gosund_6 off-usb)
attr AirWickSpray wait 0,30
FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

wendeling

Habe es mit dem template tasmota_POW_USB_split gelöst.
Es werde zwei Kanäle erzeugt .
Über set MQTT.....CH2 on-for-timer 30   USB einschalten

thgorjup

FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

chr2k

Ich hab mein attr setList erweitert:


off:noArg    cmnd/tasmota_15188E/POWER1 0
  on:noArg     cmnd/tasmota_15188E/POWER1 1
  toggle:noArg cmnd/tasmota_15188E/POWER1 2
  off2:noArg   cmnd/tasmota_15188E/POWER2 0
  on2:noArg    cmnd/tasmota_15188E/POWER2 1
  toggle2:noArg cmnd/tasmota_15188E/POWER2 2


off2 usw sind die USB Buchsen

Martin-72

Zitat von: chr2k am 02 Januar 2021, 23:29:11
Ich hab mein attr setList erweitert:

Hallo @chr2k,

mal die Frage eine Unwissenden...

Wie macht man das...?

Danke

Martin
FHEM auf RasPI 2B:
Raspbian GNU/Linux; VERSION="8 (jessie)"
Homematic, InterTechno, IKEA Tradfri
CUL868; CUL433; HM-LAN; Tradfri-Gateway

chr2k

Zitat von: Martin-72 am 17 Januar 2021, 13:26:18
Wie macht man das...?

Hi Martin,

meit Attribut "setList" sieht wie folgt aus:

off:noArg    cmnd/tasmota_15188E/POWER1 0
  on:noArg     cmnd/tasmota_15188E/POWER1 1
  toggle:noArg cmnd/tasmota_15188E/POWER1 2
  off2:noArg   cmnd/tasmota_15188E/POWER2 0
  on2:noArg    cmnd/tasmota_15188E/POWER2 1
  toggle2:noArg cmnd/tasmota_15188E/POWER2 2


Du musst natürlich "cmnd/tasmota_15188E/" an deine Namen anpassen.