AVM200 und HM-OU-LED16-Anzeige

Begonnen von ahstax, 23 Dezember 2018, 15:25:09

Vorheriges Thema - Nächstes Thema

ahstax

Hallo,

ich habe eine AVM200-Steckdose, die mit unten stehendem (kopiertem und angepasstem) Code überwacht wird. Grundsätzlich weiß ich jetzt, wenn die Spülmaschine läuft und bekomme Mitteilung, wenn sie fertig ist.
Jetzt habe ich neu die 16-LED-Anzeige von/für Homematic HM-OU-LED16 zu FHEM hinzugefügt. Grundsätzlich funktioniert die ANzeige, wie ich mit Dummy-Notify-Kombinationen getestet habe.
Nun habe ich an den für mich sinnvoll erscheinenden Stellen im Code die Ansteuerung der LED 16 hinzugefügt. Die LED 16 soll rot sein während des Spülvorgangs und grün, wenn nicht gespült wird.
Das Verhalten, das ich erzeugt habe, ist, dass die LED immer rot leuchtet. Ist der Spülvorgang beendet, leuchtet die LED kurz grün (wenige Minuten), bis sie dann wieder auf rot schaltet. Das ändert sich auch nicht, wenn die Spülmaschine ganz abgeschaltet wird.

Sieht jemand den Fehler? Was muss ich ändern?

#########################################################################
## Spuelmaschine
########################################
## Quelle: https://forum.fhem.de/index.php/topic,26339.msg265149.html#msg265149
########################################
# 9100_dev_FritzBox:11657_0094482

define 0992_0000_dev_Spuelmaschine FBDECT 9100_dev_FritzBox:08761_0442029 powerMeter,tempSensor,switch
attr 0992_0000_dev_Spuelmaschine IODev FritzBox_DHCP
attr 0992_0000_dev_Spuelmaschine event-min-interval power:120
attr 0992_0000_dev_Spuelmaschine group Spuelmaschine
attr 0992_0000_dev_Spuelmaschine icon scene_dishwasher
attr 0992_0000_dev_Spuelmaschine room 0050 AVM DECT 200 / 210,2200 Kueche

#Dummy 9970_0992_dum_Spuelmaschine_Show_Power für die Anzeige des aktuellen Watt-Verbrauchs definieren
define 9970_0992_dum_Spuelmaschine_Show_Power dummy
attr 9970_0992_dum_Spuelmaschine_Show_Power event-on-change-reading STATE
attr 9970_0992_dum_Spuelmaschine_Show_Power group Spuelmaschine
attr 9970_0992_dum_Spuelmaschine_Show_Power icon scene_dishwasher
attr 9970_0992_dum_Spuelmaschine_Show_Power room 2200 Kueche,9970 Dummy

#Notify 9950_0992_not_Spuelmaschine_Watt_Set
define 9950_0992_not_Spuelmaschine_Watt_Set notify 0992_0000_dev_Spuelmaschine {\
my $power_w=ReadingsNum("0992_0000_dev_Spuelmaschine","power","");;\
my $power=substr($power_w, 0,length($power_w)-2);;\
fhem ("set 9970_0992_dum_Spuelmaschine_Show_Power $power")\
}
attr 9950_0992_not_Spuelmaschine_Watt_Set group Spuelmaschine
attr 9950_0992_not_Spuelmaschine_Watt_Set icon scene_dishwasher
attr 9950_0992_not_Spuelmaschine_Watt_Set room 2200 Kueche,9950 notify

#Dummy 9970_0992_dum_Spuelmaschine_Betrieb definieren
define 9970_0992_dum_Spuelmaschine_Betrieb dummy
attr 9970_0992_dum_Spuelmaschine_Betrieb event-on-change-reading STATE
attr 9970_0992_dum_Spuelmaschine_Betrieb group Spuelmaschine
attr 9970_0992_dum_Spuelmaschine_Betrieb icon scene_dishwasher
attr 9970_0992_dum_Spuelmaschine_Betrieb room 2200 Kueche,9970 Dummy

#Notify 9950_0992_not_Spuelmaschine_Betrieb_an
#Dummy 9970_0992_dum_Spuelmaschine_Betrieb einschalten bei Verbrauch größer 1 Watt
define 9950_0992_not_Spuelmaschine_Betrieb notify 0992_0000_dev_Spuelmaschine:power.* {\
fhem ("set 9970_0992_dum_Spuelmaschine_Betrieb on;; setstate 9970_0992_dum_Spuelmaschine_Auto_Off defined")\
if (ReadingsNum("0992_0000_dev_Spuelmaschine","power","") >= 1 && Value("9970_0992_dum_Spuelmaschine_Betrieb") ne "on")\
}
attr 9950_0992_not_Spuelmaschine_Betrieb group Spuelmaschine
attr 9950_0992_not_Spuelmaschine_Betrieb icon scene_dishwasher
attr 9950_0992_not_Spuelmaschine_Betrieb room 2200 Kueche,9950 notify

#Dummy 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch definieren
define 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch dummy
attr 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch event-on-change-reading STATE
attr 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch group Spuelmaschine
attr 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch icon scene_dishwasher
attr 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch room 2200 Kueche,9970 Dummy

#Notify 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_ein
#Dummy 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch einschalten bei Verbrauch größer 2 Watt bei laufendem Betrieb
define 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_ein notify 0992_0000_dev_Spuelmaschine:power.* {\
fhem ("set 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch on;; setstate 0993_0992_wdg_Spuelmaschine_Standby defined")\
if (ReadingsNum("0992_0000_dev_Spuelmaschine","power","") > 2 && Value("9970_0992_dum_Spuelmaschine_Betrieb") eq "on");;\
fhem ("set HM_699EA4_Led_16 led red")\
}
attr 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_ein group Spuelmaschine
attr 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_ein icon scene_dishwasher
attr 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_ein room 2200 Kueche,9950 notify

#Notify 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_aus
#Dummy 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch ausschalten bei Verbrauch kleiner gleich 2 Watt bei laufendem Betrieb
define 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_aus notify 0992_0000_dev_Spuelmaschine:power.* {\
fhem ("set 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch off")\
if (ReadingsNum("0992_0000_dev_Spuelmaschine","power","") <= 2 && Value("9970_0992_dum_Spuelmaschine_Betrieb") eq "on")\
}
attr 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_aus group Spuelmaschine
attr 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_aus icon scene_dishwasher
attr 9950_0992_not_Spuelmaschine_Betrieb_HoherVerbrauch_aus room 2200 Kueche,9950 notify

#Wenn der Verbrauchswert für mindestens 10 Minuten bei laufendem Betrieb unter obigem Schwellwert (2 Watt) verbleibt, wird angenommen, dass der Waschvorgang tatsächlich abgeschlossen ist
#watchdog 0993_0992_wdg_Spuelmaschine_Standby
define 0993_0992_wdg_Spuelmaschine_Standby watchdog 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch:off 00:00:10 9970_0992_dum_Spuelmaschine_Betrieb_Verbrauch:on set 9970_0992_dum_Spuelmaschine_Betrieb standby
attr 0993_0992_wdg_Spuelmaschine_Standby group Spuelmaschine
attr 0993_0992_wdg_Spuelmaschine_Standby icon scene_dishwasher
attr 0993_0992_wdg_Spuelmaschine_Standby regexp1WontReactivate 1
attr 0993_0992_wdg_Spuelmaschine_Standby room 0993 Watchdog,2200 Kueche

# Pushover-Notification bei abgeschlossenem Waschvorgang verschicken
# notify 0995_0992_not_Spuelmaschine_Telegram_Fertig
define 9950_0992_not_Spuelmaschine_Telegram_Fertig notify 9970_0992_dum_Spuelmaschine_Betrieb:standby {\
fhem ("set 9200_tebo_TelegramBot message \@Andreas_Hess \@Christine_Hess 'Spuelmaschine fertig! Bitte leeren.'");;\
fhem ("set HM_699EA4_Led_16 led green")\
}
attr 9950_0992_not_Spuelmaschine_Telegram_Fertig disabledAfterTrigger 4500
attr 9950_0992_not_Spuelmaschine_Telegram_Fertig group Spuelmaschine
attr 9950_0992_not_Spuelmaschine_Telegram_Fertig icon scene_dishwasher
attr 9950_0992_not_Spuelmaschine_Telegram_Fertig room 2200 Kueche,9200 Telegram,9950 notify

# dummy 9970_0992_dum_Spuelmaschine_Auto_Off
define 9970_0992_dum_Spuelmaschine_Auto_Off dummy
attr 9970_0992_dum_Spuelmaschine_Auto_Off event-on-change-reading STATE
attr 9970_0992_dum_Spuelmaschine_Auto_Off group Spuelmaschine
attr 9970_0992_dum_Spuelmaschine_Auto_Off icon scene_dishwasher
attr 9970_0992_dum_Spuelmaschine_Auto_Off room 9970 Dummy,2200 Kueche

########################################
## Spuelmaschine Ende
#########################################################################


Neugierige Grüße und allen ruhige, schöne und erholsame Feiertage!