HM-LC-SW4-WM steuern mit 19-Tastenfernbedienung HM-RC-19-SW

Begonnen von Gunther, 06 Juni 2014, 22:08:06

Vorheriges Thema - Nächstes Thema

Pfriemler

Hallo Gunther, ich war gestern und heute umfänglich verhindert, aber jetzt hake ich nochmal nach.
Also bei mir habe ich ein schwarze 12-Tasten Fernbedienung (HM-RC-12-B) mit dem Namen "FB12", ihr 8. Button heißt "FB12_Btn_08" ...

define FB12 CUL_HM 242144
attr FB12 IODev HMLAN1
attr FB12 autoReadReg 4_reqStatus
attr FB12 expert 2_full
attr FB12 firmware 1.2
attr FB12 model HM-RC-12-B
attr FB12 room EGWz
attr FB12 serialNr [entfernt]
attr FB12 subType remote
attr FB12 webCmd getConfig:clear msgEvents
...
define FB12_Btn_08 CUL_HM 24214408
attr FB12_Btn_08 model HM-RC-12-B
attr FB12_Btn_08 peerIDs 00000000,ABC12301,
attr FB12_Btn_08 room CUL_HM
...


und ist gepeert mit einem Dummy namens "hmvd", ich habe ihm zwei Buttons verpasst, nutze aber derzeit nur einen:

define hmvd CUL_HM ABC123
attr hmvd IODev HMLAN1
attr hmvd autoReadReg 4_reqStatus
attr hmvd expert 2_full
attr hmvd model virtual_2
attr hmvd room CUL_HM
attr hmvd subType virtual
attr hmvd webCmd virtual
define hmvd_Btn1 CUL_HM ABC12301
attr hmvd_Btn1 model virtual_2
attr hmvd_Btn1 peerIDs 24214407,24214408,2421440C, # derzeit drei andere Geräte nutzen den Dummy als ACK-Erzeuger
attr hmvd_Btn1 room CUL_HM
attr hmvd_Btn1 webCmd press short:press long
define hmvd_Btn2 CUL_HM ABC12302   # derzeit unbenutzt
attr hmvd_Btn2 model virtual_2
attr hmvd_Btn2 peerIDs
attr hmvd_Btn2 room CUL_HM
attr hmvd_Btn2 webCmd press short:press long


Mit dem Button 8 schalte ich mit kurzem Druck meine Hifi-Anlage ein und langem Druck aus (PWRSW_HIFI ist ein Kanal meiner Koukaam NETIO230B):
define FB12HifiPWRon notify FB12_Btn_08:Short.* set PWRSW_HIFI on
define FB12HifiPWRoff notify FB12_Btn_08:Long.* set PWRSW_HIFI off

Leicht unsauber ist, dass der lange Tastendruck u.U. mehrmals triggert - das fängt das NETIO230B-Modul aber offenbar irgendwie weg, ich habe stets nur einen Eintrag im Log.

Mein Garagentorantrieb (der installierte Taster wird durch eine batteriegespeiste HM-LC-SW1-BA-PCB "betätigt") aber hat ganz sichtbar mehrmals hintereinander ausgelöst. Daher habe ich das auf meiner kleinen 4-Tasten-FB (FB4V) mit LongRelease gelöst (Antrieb startet erst mit dem Loslassen der Taste):
define BewegeGaragentorFB4V_Btn2 notify FB4V_Btn2:LongReleas.*  set GaragentorAntriebTrigger on-for-timer 1

Dessen internen Taster habe ich übrigens so sichtbar gemacht und auf 2 Sekunden Betätigungsdauer programmiert, das war das was Du als Handbetrieb für die Bewässerung direkt am Schalter suchtest):
set GaragentorAntriebTrigger regSet intKeyVisib visib # macht den internen Taster (self01) sichtbar
set GaragentorAntriebTrigger regSet shOnTime 2 self01 # => lokaler Tastendruck schaltet nur 2 Sekunden ein, also kein Toogle mehr! Default ist 111600=unendlich


Da ich die Auslösung auf das Loslassen wenig haptisch finde, probierte ich für den Zimmerbrunnen (auch auf der NETIO230B)
define ZimmerbrunnenFB12AUS notify FB12_Btn_12:Long.3.* set Zimmerbrunnen off
und da ist der Fehler: Zwischen Long und der Zahl muss noch ein Punkt hin!
Das funktioniert jedenfalls alles prima.

Hoffe, Du kannst damit was anfangen, viel Glück!
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Gunther

Klasse! 1000 Dank für Deine Hilfsbereitschaft! Wegen Leuten wie Dir und Marting und und und liebe ich dieses Forum.

Ich werde das am nächsten freien Tag mal testen.
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Gunther

Auch wenn ich Deine Tipps noch nicht getestet habe, fragt meine Frau ob ich auch Ein "Programm" festlegen kann.

Folgendes stellt Sie sich vor:
Tastendruck:
Bewässerung mit den ersten beiden Ventilen für 45 Min.
danach automatisch Bewässerung mit den beiden anderen Ventilen.

Ich habe in der Einsteigerlektüre, im Wiki und im Forum leider nicht das richtige gefunden um Befehle hintereinander ablaufen zu lassen.

Mache ich das über ein notify und einer Bedingung (thereshold)?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Pfriemler

#18
Ein Programm? Aber ja. Nur nicht über einen Tastendruck am Schalter selbst, das gibt HM intern dann doch nicht her. Aber FHEM ist das nicht zu schwer.
Wie Du ein Notify erstellst, um auf einen Tastendruck zu reagieren, wirst Du dann hinbekommen. Das Notify kann dann nicht nur die beiden ersten Ventile setzen, sondern auch gleich über zwei "at" die Bewässerung für die beiden anderen Ventile starten.
Also z.B.
- set ventil1 on-for-timer 2700
- set ventil2 on-for-timer 2700
- define tmpventil3 at +00:45:00 {fhem "set ventil3 on-for-timer 2700" ;; fhem "delete tmpventil3"
- define tmpventil4 at +00:45:00 {fhem "set ventil4 on-for-timer 2700" ;; fhem "delete tmpventil4"
Die beiden Zeitsteuerungen für die Ventile 3 und 4 werden 45 min nach der Programmierung aktiv (also nach Ablauf der ersten 45min (*60 = 2700)) und zerstören sich anschließend selbst, das ist wichtig, sonst gibt es beim nächsten Durchlauf eine Fehlermeldung.

Eine andere Möglichkeit wäre, ein Notify auf das Ausschalten der Ventile 1 und 2 zu setzen und dadurch die Ventile 3 und 4 zu starten. Wenn Du auf die gleiche Fernbedienungstaste wie beschrieben ein Notify mit Long.X.* setzt (X=3..9 oder so), welches alle vier Ventile ausschaltet, kannst Du zu jeder Zeit die Bewässerung vorzeitig abbrechen (ein Abbruch während der ersten Periode startet dann die beiden nächsten, die mit einem erneuten langen Druck dann auch gestoppt werden).

Oder denk Dir eigene Szenarien aus, es geht fast alles.

threshold - ich bin selber neu, habe damit noch nicht gearbeitet. Du könntest einen Bodenfeuchtesensor zum vorzeitigen Abbruch nehmen ... (usw usf)

"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Gunther

so:?

define bewaesserungsprogramm notify .*eg_ez_fernbedienung_Btn_06:Short.* set ventil1 on-for-timer 2700 set ventil2 on-for-timer 2700 define tmpventil3 at +00:45:00 {fhem "set ventil3 on-for-timer 27000" ;; fhem "delete tmpventil3"} define tmpventil4 at +00:45:00 {fhem "set ventil4 on-for-timer 27000" ;; fhem "delete tmpventil4"}

Vermutlich muss ich noch Klammern setzen. Kannst Du mir bei der Syntax bitte nochmal behilflich sein?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Pfriemler

#20
Klammern weniger, aber vor allem ; zwischen den einzelnen Befehlen.  :D ... Lies die Kapitel im berühmten Einführungsbuch nochmal und probiere die Verkettung mal an einem harmloseren Beispiel... Ich will mich nicht festlegen, weil ich selber noch zuviel Fehler mache. Und auf alle Nullen achten  8) - ich hatte einen Fehler gemacht, finde ihn selbst ...
Außerdem kann man gleiche Settings für mehrere Devices auch zusammenfassen, sehe ich gerade - also ein set für die ersten beiden Ventile ("set ventil1,ventil2 on") und ein at für die nächsten beiden ...
Außerdem wäre ich für die automatisch verkettende Notify-Variante  ... ähm, wird das jetzt hier HM-offtopic, oder?
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."