FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: ahstax am 16 Dezember 2018, 12:26:27

Titel: Homematic HM-ES-PMSw1-Pl-DN-R1
Beitrag von: ahstax am 16 Dezember 2018, 12:26:27
Hallo,

ich starte eine Homematic Steckdose HM-ES-PMSw1-Pl-DN-R1 mit folgendem Befehl:
define not_Steckdose_KiZi_an notify IT_FFF000000F:on {\
fhem "set HM_662285_Sw on-for-timer 900"\
}

Gerne würde ich jetzt irgendwo darstellen, wie lange der Timer schon läuft. Ich glaube, aus der Steckdose wieder auslesen, geht nicht. Könnte man das ggf auf die Web:cmd-Anzeige legen?
Sehe ich den Wald vor lauter Bäumen nicht?

Titel: Antw:Homematic HM-ES-PMSw1-Pl-DN-R1
Beitrag von: Otto123 am 16 Dezember 2018, 12:40:43
Hi,

Du könntest die Startzeit in einen STATE schreiben (InfoLink (https://forum.fhem.de/index.php?topic=11348.0)).
BTW: Das hier {\
fhem "set HM_662285_Sw on-for-timer 900"\
}
ist so kürzer und stromsparender :)set HM_662285_Sw on-for-timer 900

Gruß Otto
Titel: Antw:Homematic HM-ES-PMSw1-Pl-DN-R1
Beitrag von: MadMax-FHEM am 16 Dezember 2018, 12:43:47
Bei HomeMatic wird (soweit ich weiß) der on-for-timer autark im Gerät abgearbeitet und wenn das Gerät den nicht zurückliefert, was bei Funk (und auch ohne) durchaus schlau ist, wird es wohl nicht gehen...

Was mir auffällt: ein Wechsel nach Perl und wieder zurück nach fhem ist unnötig!

Wechsel nach Perl: { PerlCode }

Zurück nach fhem mittels des Perl-fhem-Befehls: fhem "set ..."

Folgendes sollte ohne hin und her wechseln dasselbe tun:

define not_Steckdose_KiZi_an notify IT_FFF000000F:on set HM_662285_Sw on-for-timer 900

Über eine gschickte Namenswahl solltest du evtl. auch mal nachdenken, man kann Geräte umbenennen: rename

So nun zum Problem zurück:

was du tun kannst ist parallel zum Schaltvorgang ein zyklisches 'at' in fhem anlegen, was alle x Sekunden die abgelaufene Zeit als zusätzliches Reading im Gerät setzt:

define not_Steckdose_KiZi_an notify IT_FFF000000F:on set HM_662285_Sw on-for-timer 900;; defmod atShowTime at +*00:00:05 {errechne die verbleibende Zeit und dann fhem("setreading HM_662285_Sw VerbleibendeZeit ErrechneteZeit");if(VerbleibendeZeit == 0){fhem("delete atShowTime")}}

Und das ist nat. kein copy/paste code!!

EDIT: @Otto: immer dasselbe mit dir ;) Bzw. "immer" bin ich zu langsam... Und hab (wie immer ;)  ) keine so schönen, direkten Links...

Gruß, Joachim
Titel: Antw:Homematic HM-ES-PMSw1-Pl-DN-R1
Beitrag von: Otto123 am 16 Dezember 2018, 12:50:55
@Joachim Du hast den Vorschlag der zwar in meinem Kopf war, wo mir aber die Idee zur Umsetzung fehlte. Insofern: perfekt ergänzt  ;D
Titel: Antw:Homematic HM-ES-PMSw1-Pl-DN-R1
Beitrag von: MadMax-FHEM am 16 Dezember 2018, 12:58:19
Zitat von: Otto123 am 16 Dezember 2018, 12:50:55
@Joachim Du hast den Vorschlag der zwar in meinem Kopf war, wo mir aber die Idee zur Umsetzung fehlte. Insofern: perfekt ergänzt  ;D

Beides zusammen müsste dann ja wohl helfen ;)

Gruß, Joachim
Titel: Antw:Homematic HM-ES-PMSw1-Pl-DN-R1
Beitrag von: ahstax am 16 Dezember 2018, 14:06:25
Danke Euch beiden!

Ich werde versuchen, damit etwas hin zu bekommen.

Der Hinweis mit der Benennung der Devices ist völlig richtig. Grundsätzlich sind meine Devices auch alle ordentlich benannt.  Hier habe ich wohl geschlampt.... ::)
Titel: Antw:Homematic HM-ES-PMSw1-Pl-DN-R1
Beitrag von: MadMax-FHEM am 16 Dezember 2018, 14:11:31
Zitat von: ahstax am 16 Dezember 2018, 14:06:25
Danke Euch beiden!

Ich werde versuchen, damit etwas hin zu bekommen.

Der Hinweis mit der Benennung der Devices ist völlig richtig. Grundsätzlich sind meine Devices auch alle ordentlich benannt.  Hier habe ich wohl geschlampt.... ::)

Viel Erfolg!

Bei Fragen einfach wieder melden...

Gruß, Joachim