HM-PB-2-WM55 anlernen

Begonnen von docb, 28 Mai 2013, 15:23:21

Vorheriges Thema - Nächstes Thema

martinp876

Hi Doc,

das Log ist, nachdem FHEM neu gestartet wurde, 90 sekunden an. Von einem Anlernen ist nichts zu sehen, nur die beiden Bewegungsmelder.

Wenn du jetzt nicht gerade beim Restarten von FHEM dein Anlernen durchgefuehrt hast und die Taste gedrueckt hast muss man feststellen, dass der WM55 schlicht nichts sendet. Aber der Zeitraum des logs ist nach dem Reboot etwas kurz. Evtl solltest du es noch einmal versuchen, wenn FHEM gebootet hat.
Die Alternativdiagnose ist, dass der Schalter defekt ist.

Gruss
Martin

docb

Hi,
jetzt habe ich mal ein anderes Anlernen versucht, wie in der Einsteigerhilfe beschrieben:
define <name> CUL_HM <HMID>
set <name> pair
und dann einen set name getConfig, da kommt das hier ins log:

2013.05.29 12:10:19 2: CUL_HM set WZ_schalter statusRequest rxt:1
2013.05.29 12:10:19 1: HMLAN_Send:  LANInterface I:+1F1D07,00,00,
2013.05.29 12:10:19 1: HMLAN_Send:  LANInterface S:SEFC44DE5 stat:  00 t:00000000 d:01 r:EFC44DE5 m:49 A001 E1F88A 1F1D07 010E
2013.05.29 12:10:20 1: HMLAN/RAW: /REFC44DE5,0008,00000000,FF,7FFF,49A001E1F88A1F1D07010E

2013.05.29 12:10:20 1: HMLAN_Parse: LANInterface R:REFC44DE5 stat:0008 t:00000000 d:FF r:7FFF     m:49 A001 E1F88A 1F1D07 010E
2013.05.29 12:10:20 1: HMLAN_Parse: LANInterface discard
2013.05.29 12:10:22 1: HMLAN_Send:  LANInterface S:SEFC45AFA stat:  00 t:00000000 d:01 r:EFC45AFA m:49 A001 E1F88A 1F1D07 010E
2013.05.29 12:10:23 1: HMLAN/RAW: /REFC45AFA,0008,00000000,FF,7FFF,49A001E1F88A1F1D07010E

2013.05.29 12:10:23 1: HMLAN_Parse: LANInterface R:REFC45AFA stat:0008 t:00000000 d:FF r:7FFF     m:49 A001 E1F88A 1F1D07 010E
2013.05.29 12:10:23 1: HMLAN_Parse: LANInterface discard
2013.05.29 12:10:23 1: HMLAN_Send:  LANInterface I:K
2013.05.29 12:10:23 1: HMLAN/RAW: /HHM-LAN-IF,03C1,IEQ0061715,139895,E1F88A,13ED692B,0003

2013.05.29 12:10:23 1: HMLAN_Parse: LANInterface V:03C1 sNo:IEQ0061715 d:139895 O:E1F88A t:13ED692B IDcnt:0003
2013.05.29 12:10:26 1: HMLAN_Send:  LANInterface S:SEFC46B69 stat:  00 t:00000000 d:01 r:EFC46B69 m:49 A001 E1F88A 1F1D07 010E
2013.05.29 12:10:27 1: HMLAN/RAW: /REFC46B69,0008,00000000,FF,7FFF,49A001E1F88A1F1D07010E

2013.05.29 12:10:27 1: HMLAN_Parse: LANInterface R:REFC46B69 stat:0008 t:00000000 d:FF r:7FFF     m:49 A001 E1F88A 1F1D07 010E
2013.05.29 12:10:27 1: HMLAN_Parse: LANInterface discard
2013.05.29 12:10:47 1: HMLAN/RAW: /E1C5371,0000,13EDC62C,FF,FFBA,3484101C5371E1F88A06012100

2013.05.29 12:10:47 1: HMLAN_Parse: LANInterface R:E1C5371   stat:0000 t:13EDC62C d:FF r:FFBA     m:34 8410 1C5371 E1F88A 06012100
2013.05.29 12:10:47 1: HMLAN_Send:  LANInterface S:SEFC4BB05 stat:  00 t:00000000 d:01 r:EFC4BB05 m:34 8002 E1F88A 1C5371 01012100
2013.05.29 12:10:47 1: HMLAN/RAW: /REFC4BB05,0002,00000000,FF,7FFF,348002E1F88A1C537101012100

2013.05.29 12:10:47 1: HMLAN_Parse: LANInterface R:REFC4BB05 stat:0002 t:00000000 d:FF r:7FFF     m:34 8002 E1F88A 1C5371 01012100
2013.05.29 12:10:47 1: HMLAN_Parse: LANInterface discard
2013.05.29 12:10:48 1: HMLAN_Send:  LANInterface I:K
2013.05.29 12:10:48 1: HMLAN/RAW: /HHM-LAN-IF,03C1,IEQ0061715,139895,E1F88A,13EDCAE0,0003

2013.05.29 12:10:48 1: HMLAN_Parse: LANInterface V:03C1 sNo:IEQ0061715 d:139895 O:E1F88A t:13EDCAE0 IDcnt:0003
2013.05.29 12:11:12 1: HMLAN/RAW: /E17294A,0000,13EE278E,FF,FFB1,21867017294A00000000D132

2013.05.29 12:11:12 1: HMLAN_Parse: LANInterface R:E17294A   stat:0000 t:13EE278E d:FF r:FFB1     m:21 8670 17294A 000000 00D132
2013.05.29 12:11:13 1: HMLAN_Send:  LANInterface I:K
2013.05.29 12:11:13 1: HMLAN/RAW: /HHM-LAN-IF,03C1,IEQ0061715,139895,E1F88A,13EE2C93,0003

2013.05.29 12:11:13 1: HMLAN_Parse: LANInterface V:03C1 sNo:IEQ0061715 d:139895 O:E1F88A t:13EE2C93 IDcnt:0003
2013.05.29 12:11:25 2: CUL_HM set WZ_schalter getConfig rxt:1
2013.05.29 12:11:25 1: HMLAN_Send:  LANInterface S:SEFC54EF8 stat:  00 t:00000000 d:01 r:EFC54EF8 m:35 A001 E1F88A 1F1D07 00040000000000
2013.05.29 12:11:25 1: HMLAN_Send:  LANInterface S:+1F1D07,00,01,
2013.05.29 12:11:25 1: HMLAN/RAW: /REFC54EF8,0008,00000000,FF,7FFF,35A001E1F88A1F1D0700040000000000

2013.05.29 12:11:25 1: HMLAN_Parse: LANInterface R:REFC54EF8 stat:0008 t:00000000 d:FF r:7FFF     m:35 A001 E1F88A 1F1D07 00040000000000
2013.05.29 12:11:25 1: HMLAN_Parse: LANInterface discard
2013.05.29 12:11:31 1: HMLAN_Send:  LANInterface S:SEFC5657B stat:  00 t:00000000 d:01 r:EFC5657B m:35 A001 E1F88A 1F1D07 00040000000000
2013.05.29 12:11:31 1: HMLAN/RAW: /REFC5657B,0008,00000000,FF,7FFF,35A001E1F88A1F1D0700040000000000

2013.05.29 12:11:31 1: HMLAN_Parse: LANInterface R:REFC5657B stat:0008 t:00000000 d:FF r:7FFF     m:35 A001 E1F88A 1F1D07 00040000000000
2013.05.29 12:11:31 1: HMLAN_Parse: LANInterface discard

Der 1F1D07 wäre der Übeltäter. Ich werde jetzt versuchen ihn mal direkt an eine Steckdose anzulernen und schaue ob das klappt...
I love FHEM!

docb

Oh mann, das ist doch zum Mäuse melken mit dem Homematic Zeugs. Die Steckdose lässt sich nicht mehr zurücksetzen. Pffff. Gut, dann bleibt sie halt an Fhem und ich teste das am Freitag mit einer neuen Komponente, da müsste eine weitere Steckdose eintreffen.
Ich berichte weiter...
Viele Grüße
Doc
I love FHEM!

martinp876

Hi,

di glaubst, der PB2 hat die HMID 1F1D07. Warum eigentlich? Moeglich ist das schon - aber ich habe bisher noch nicht eine message des PBI1 gesehen.
Ganz egal ob angelernt oder nicht, wenn man eine Taste drueckt muss der PBI2 eine message schicken - an broadcast, das ist aber egal.
Wir sehen hier keine einzige, egal was du machst. Das hat nichts primaer mit anlernen zu tun, das Problem liegt viel tiefer.
Wenn keine Anlern-message zu sehen ist wird auch direkte peeren nicht funktionieren. FHEM sieht alles ;-) Wenn nichts zu sehen ist, ist auch nichts da (Reichweite beruecksichtigen...)

Hast du deine Steckdose schon einmal stromlos gemacht? Hilft in kritischen Faellen.

Gruss
Martin

docb

Hello,
der sollte die HMID haben, weil auf der Platine so ein QR-Code drauf ist und der umgewandelt H1F1D07 ausspuckt.
Ok - es müsste also auf jedenfall irgendwas zu sehen sein, auch wenn ich einfach so einen Knopf drücke weil das wirklich geniale aber manchmal für Anfänger ein bisschen komplizierte Fhem alles mitschnüffelt. Tja komisch, denn die LED signale vom Schalter deuten drauf hin dass er funktioniert. Ich muss gestehen, das war ein Bausatz und meine erste Lötarbeit, daher kann es durchaus sein, dass ich da etwas vermasselt habe. Wobei dann doch eigentlich die LED nicht richtig anzeigen dürften... naja, wer weiß. Bin mal gespannt ob ELV da was umtauscht ....
Die Steckdose will übrigens auch stromlos nicht. Aber die läuft wenigstens mit FHEM, daher warte ich bis Freitag, da kommt neues Spielzeug ;-)
Viele Grüße
doc
I love FHEM!

martinp876

Hi Doc,

die LED sagt sicher nichts darueber, ob der Sender funktioniert. Der Prozessor funktioniert - und versucht sicher auch zu senden, da bin ich bei dir. Aber ob die Sendeeinheit oder die Antenne im Device nicht Funktioniert kann der uP nur schwer pruefen. Da liegt offensichtlich das Problem. Wenn du es selbst geloetet hast, schau in der Gegend um die Antenne.

Gruss
Martin

docb

Hi,
jetzt habe ich es heute einfach nochmal versucht und siehe da - alles läuft. Echt komisch. Manchmal glaube ich die EDV hat ein Eigenleben. Ich werde den Wiki-Eintrag heute mal mit meinen Erfahrungen ergänzen...
Viele Grüße
Doc

PS: wiki ergänzt: http://www.fhemwiki.de/wiki/HM-PB-2-WM55_2fach-Funk-Wandtaster
I love FHEM!

martinp876

Hi Doc,

Folgende Anmerkungen zum Wiki (nicht nur deinem, ist wohl generel so).
- der Auszug aus fhem.cfg muss nicht von User erstellt werden. Das wird automatisch gemacht. Der User muss zur basic funktion nichts selbst setzen. Folgende Attribute sollte der User nicht aendern oder setzen:
attr wzTaster model HM-PB-2-WM55
attr wzTaster serialNr JEQXXXXXX
attr wzTaster subType remote
attr wzTaster firmware 1.1

folgende attribute sind "unsichtbar" und nur mit showInternalValues zu sehen. Der User sollte es nicht aendern.
attr wzTaster .devInfo

Nach dem Anlernen kann/soll der User ein save machen um die Attribute nach fhem.cfg zu schreiben.

Folgende Attribute werden nicht mehr genutzt und sollten nicht mehr vergeben werden. Sie werden sowieso geloescht und ich werden sie irgendwann komplett entfernen. Dann kann es zu Fehlermeldungen kommen beim Restart:
attr wzTaster devInfo
attr wzTaster hmClass

Die Eintraege der Logs verstehe ich nicht.
define FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 FileLog ./log/CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01-%Y.log #CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01

a) die regexp ist ausmaskiert. soll das Funktionieren?
b) ich empfehle, nicht fuer jeden Button ein Logfile anzulegen. Meist reicht eines je Fernbedienung, oder sogar noch gebuendelter. Die Anzahl der Logfiles geht in die Systemperformance ein.

define FileLog_wzTaster FileLog /var/log/fhem/wzTaster-%Y.log wzTaster.*
attr FileLog_wzTaster logtype text


macht fuer mich Sinn. Achte auf das ".*" am ende. Damit werden alle Buttons mit erfasst.

Gruss Martin

docb

Servus,
hab den Wiki-Link ja extra gleich in der Hoffnung geposted, dass du mal drüber schaust und damit ich das dann korrigieren kann ;-)
Ich möchte mit den Wiki-Einträgen die empfangene Hilfe sinnvoll weitergeben, aber - wie du ja schon gemerkt hast, bin ich bei weitem noch kein Profi ;-)
Um das ändern zu können hätte ich noch folgende Fragen:

- Der Eintrag mit dem wzTaster ist nicht von mir - kann ich den einfach löschen nachdem er ja auch nicht (mehr) ganz passt? Da hattest du ja auch die Kritik mit dem .devinfo und hmclass

- was meinst du mit dem Save nach dem Anlernern? Bei mir steht automatisch alles in der fhem.cfg wenn ich ein Gerät anlerne. Ich würde die Sachen immer gerne verstehen, damit ich Sie auch gut erklären/weitergeben kann.

- die Regexp (ist das diese Nummer 1F1xxx) habe ich für das Wiki ausmaskiert aus Datenschutzbedenken. Oder muss ich mir nix denken meine regexp und oder Serial zu veröffentlichen

Der Rest ist klar und den werde ich so ergänzen.

Viele Grüße
doc
I love FHEM!

martinp876

Hi Doc,

Die Eintraege sind auch nicht von mir.... und es gibt immer verschiedene Moeglichkeiten. Also alles immer auch Ansichtssache
Ich wuerde nur ein Beispiel einsetzen - und evtl den Namen nicht so sperrig waehlen, auch wenn es FHEM so per default vorschlaegt.

das save brauchst du nur, wenn dein autocreate nicht auf autosave steht.
Zitatdie Regexp (ist das diese Nummer 1F1xxx)
Das Ausmaskieren ist schon ok - machen viele. Du solltest dir aber klar sein, dass diese Nummer immer im Klartext durch die Luft uebertragen wird. Das kann jeder ohne Probleme neben deiner Wohnung mitmessen - ohne Aufwand. Hier im Web kann keiner etwas mit der Nummer anfangen - jedenfalls haette ich nicht die geringste Idee dazu.
Aber die regexp ist etwas anderes. An vielen stellen (hier das logfile) wird eine regular expression angegeben, mit der man vergleichen und filtern kann.
define <name> FileLog <file> <regexp>
Also alle Trigger werden mit <regexp>  verglichen und bei Treffer ggf. nach <file> geschrieben. Mit deinem '#' hast du nur den Vergleichsoperator so umgestellt, dass es zu keinen Treffern kommen kann. Aber verglichen wird immer noch - und das kostet Performance.

Ich habe einmal einen Vorschlag zusammengebastelt, wie es auch aussehen koennte. Vielleicht willst du Teile uebernehmen.
Hilfreich faende ich in Wiki
- links zum Commandref
- erwaehnen von nuetzlichen Attributen
- erwaehnen von Attributen, die der User nicht aendern sollte
Detail beschreibung kann er dann im Commandref nachlesen

Hinweise zur Hardware-Installation

Die Integration in FHEM läuft wie mit allen Komponenten. Den LAN-Adapter in FHEM auf hmPairForSec 60 (Zahl bedeutet die Zeit des Zustands in Sekunden und kann beliebig geändert werden) setzen und den Knopf auf der Rückseite des Schalters drücken. Dann sollte Schalter in FHEM angelegt werden.
Je nach Einstellungen in autocreate <link http://fhem.de/commandref.html#autocreate> wurden wurden auch weitere aktionen ausgefuehrt:
- automatischer Update den fhem.cfg:
attr <autocreate> autosave
attr <autocreate> device_room %TYPE
attr <autocreate> filelog test2/log/%NAME-%Y.log
attr <autocreate> weblink
attr <autocreate> weblink_room Plots


Hinweise zum Betrieb mit FHEM

Auszug aus der fhem.cfg


define CUL_HM_HM_PB_2_WM55_1F1xxx CUL_HM 1F1xxx
attr CUL_HM_HM_PB_2_WM55_1F1xxx .devInfo 020000
attr CUL_HM_HM_PB_2_WM55_1F1xxx .stc 40
attr CUL_HM_HM_PB_2_WM55_1F1xxx firmware 1.1
attr CUL_HM_HM_PB_2_WM55_1F1xxx model HM-PB-2-WM55
attr CUL_HM_HM_PB_2_WM55_1F1xxx room Bad
attr CUL_HM_HM_PB_2_WM55_1F1xxx serialNr KEQ003xxx
attr CUL_HM_HM_PB_2_WM55_1F1xxx subType pushButton
define FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx FileLog ./log/CUL_HM_HM_PB_2_WM55_1F1xxx-%Y.log CUL_HM_HM_PB_2_WM55_1F1xxx
attr FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx logtype text
attr FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx room CUL_HM
define CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 CUL_HM 1F1xxx01
attr CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 model HM-PB-2-WM55
attr CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 room CUL_HM
define FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 FileLog ./log/CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01-%Y.log #CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01
attr FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 logtype text
attr FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 room CUL_HM
define CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02 CUL_HM 1F1xxx02
attr CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02 model HM-PB-2-WM55
attr CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02 room CUL_HM
define FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02 FileLog ./log/CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02-%Y.log #CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02
attr FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02 logtype text
attr FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02 room CUL_HM


Nacharbeiten:
Es empfiehlt sich, die neuen Entities umzubenennen um sie besser bedienen zu koennen:
rename CUL_HM_HM_PB_2_WM55_1F1xxx LichtFlurDev
rename CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01 LichtFlur1
rename CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02 LichtFlur2

Ferner ist es selten sinnvoll, fuer jede Entity ein Logfile anzulegen, auch wenn es autocreate so macht. Man kann das Device mit den beiden Schalter zusammenfassen (besser sind noch groessere Einheiten). Das verbessert die Performance und auch die Lesbarkeit. In diesem Fall werden alle Ereignisse, die mit "LichtFlur" beginnen und mitgeschrieben, also auch die beiden Taster.

define FileLog_LichtFlur FileLog ./log/LichtFlur-%Y.log LichtFlur.*
attr FileLog_LichtFlur logtype text
attr FileLog_LichtFlur room CUL_HM
delete FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx
delete FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_01
delete FileLog_CUL_HM_HM_PB_2_WM55_1F1xxx_Btn_02


Folgende Attribute sollte der User nicht aendern.
.devInfo, .stc, model, firmware, serialNr, subType

Weitere interessante Attribute, die man nutzen sollte (siehe auch commandref)sind
room, group, expert, webCmd: gruppieren und darstellen auf der webseite
autoRegRead: automatisches Lesen der Register (fuer push-Button sollte es auf 0 stehen)

Damit koennte ein fhem.cfg so aussehen:

#====== Das Device
define LichtFlurDev CUL_HM 1F1xxx
attr LichtFlurDev .devInfo 020000
attr LichtFlurDev .stc 40
attr LichtFlurDev firmware 1.1
attr LichtFlurDev model HM-PB-2-WM55
attr LichtFlurDev serialNr KEQ003xxx
attr LichtFlurDev subType pushButton
#--- user Attribute zum Device
attr LichtFlurDev room Flur,Device,Licht
attr LichtFlurDev group Schalter
attr LichtFlurDev webCmd statusRequest:getConfig
attr LichtFlurDev expert 1
attr LichtFlurDev autoRegRead 0
#--- erste Taste
define LichtFlur1 CUL_HM 1F1xxx01
attr LichtFlur1 model HM-PB-2-WM55
attr LichtFlur1 room Flur,Button,Licht
attr LichtFlur1 group Schalter
#--- zweite Taste
define LichtFlur2 CUL_HM 1F1xxx02
attr LichtFlur2 model HM-PB-2-WM55
attr LichtFlur2 room Flur,Button,Licht
attr LichtFlur2 group Schalter

define FileLog_LichtFlur FileLog ./log/LichtFlur-%Y.log LichtFlur.*
attr FileLog_LichtFlur logtype text
attr FileLog_LichtFlur room logfiles

docb

Ola!
Nachdem ich fast mit der Wiki fertig war und mit F4 meinen Chrome abgeschossen habe, hat es jetzt gedauert wieder Motivation zu finden ;-)
Vielen Dank für deine Hinweise, hab es eingepflegt. So lerne ich gleich selbst dazu und kann hoffentlich auch mal selbstständig vernünftige Wiki-Beiträge liefern ;-)
Morgen werde ich mal noch testen ob man irgendwie nen langen Tastendruck verarbeiten kann bzw. von einem kurzen unterscheiden und dann ergänze ich nochmal.

Ich hätte übrigens auch noch eine Frage zu deinem IPCam-Modul... Link
Klar, was auch sonst. Ich muss dich warnen, ich habe noch länger Urlaub und Zeit für Fhem ;-)
Beste Grüße
doc
I love FHEM!

martinp876

Hi Doc,

langer und kurzer Tastendruck zu unterscheiden ist kein Problem. Wenn du ein Wiki schreibst kannst du auf folgenden details aufmerksam machen
- Release kommt nur, wenn die Taste gepeert ist
- Kommandos/trigger werden nur 'ACKed' wenn es gepeered ist=> es wird auch nur wiederholt, wenn gepeert ist. Daher sollte man tasten immer mit dem Empfaenger peeren, ggf. mit einem virtuellen Aktor, falls die Zentrale der primaere empfaender ist
- peeren kann man jeden Button mit mehreren Aktoren
- Ein Hinweise kann nicht oft genug wiederholt werden: Bei HM senden die Buttons nur einen Trigger, die Aktion wird im Aktor definiert, NIE im Button/Sender.

Beim IPCAM modul bin ich ziemlich entspannt - da es nicht von mir ist und ich nicht Martin Fischer bin ;-). Hier posten einige Martins rum...

Gruss Martin

docb

Servus Martin,
jetzt gehts weiter. Ich werde die Wiki-Seite gerne ergänzen, allerdings muss ich erst wieder nachfragen damit ich alles verstehe, was du geschrieben hast, dann teste ich es bei mir und wenn ich es völlig kapiert habe, werde ich es wieder posten. Nur so kann ich das dann auch vernünftig erklären. Vor allem brauche ich echt langsam eine Fhem-Fremdwörter-übersetzt-für-Noobs-Handbuch ;-) Die commandref ist leider nur teilweise für Nichtprogrammierer verständlich. Also von vorne:
- Was ist denn eine Release?
- gepeert bedeutet mit einem Aktor gepaart, richtig?
- einen virtuellen Aktor kann man so einrichten (ist auch von dir): http://forum.fhem.de/index.php?t=tree&th=9760&mid=54452&rid=0&rev=&reveal= und wenn das geschehen ist, muss man den Schalter neu anlernen -richtig?
- und wenn die Unterscheidung zwischen kurzem und langem Tastendruck kein Problem ist - wie mache ich denn das?
Viele Grüße und schönen Sonntag noch!
doc
I love FHEM!

martinp876

Hi Doc,

es ist sicher gut, wenn du es aus deiner Sicht beschreibst. FHEM erlaubt das Programmieren in Perl, ist aber kein Programmier-kurs. Alles kann man nicht erklaeren. Einfache Dingen sollten aber ohne Programmierkenntnisse funktionieren.
Fragen - gerne

Release ist das loslassen. Bei remotes und push-buttons kann man den Button lange oder kurz druecken. Was 'lange' ist, kann man meist einstellen. Wenn man also einmal kurz drückt (kleiner etwa .2sec ode so) kommt ein 'short' trigger. Wenn man lange drückt kommt alle 0.25 sec (einstellbar) ein 'long-trigger'. Wenn man den Knopf jetzt loslaesst (released) kommt das release.
Bei short laesst man den Button auch los, kommt aber kein Release. Das ist ja klar, short ist immer auch ein Release.

Also: Release ist der letzte trigger einer 'long' sequenz
(fast) alle HM Aktoren koennen short und long-trigger selbstaendig unterscheiden.

peeren - Senderkanal und Aktorkanal paaren: nur channels!
pairen - device mit der Zentrale paaren: nur Devices!

Virtuelle Aktoren einrichten: korrekt. Beachte, dass man mit einem Virtuellen Aktor "device" jede menge Kanaele erstellen kann. Diese sind komplett von einander unabhaengig.
Anlernen muss man nicht neu.
Man sollte einen virtuellen Kanal mit einem Sensor oder Aktor peeren (nicht gepeerte virtuelle Aktor-Kanaele sind nicht schaedlich, haben aber keine Funktion).
Anlernen muss man nicht, da am pairing nichts gedreht wird. Wenn man einen virtuellen Aktor mit einem physilakischen Sensor-kanal peert kann es sein, dass die Messages nicht uebertragen werden. Das kommt vor bei vielen Fernbedienungen. Diese "schlafen viel" und man muss sie aufwecken. Man muss anlernen "kurz" druecken. Dann meldet sich die FB bei der Zentrale und die Zentrale kann die Daten uebertragen.

Der Mechanismus hat demnach nichts mit dem virtuellen Aktor zu tun sondern mit ALLEN messages, die von der Zentrale an diesen Typ Devices zu senden ist.

Wo willst du zwichen langen und kurzen Tastendruck unterscheiden? nach einem peeren oder mit einem Notify? Und dann ist short wieder einfach. Bei long musst du wissen, was du willst

define nf myBtn1.Short.* set Licht on # einfaches einschalten
define nf myBtn1.Long.* set Licht on  # schaltet alle 250ms ein (sendet alle 250ms eine on-mesage)
define nf myBtn1.Long.1-.* set Licht on  # einschalten nur beim ersten 'long'
define nf myBtn1.LongRelease.* set Licht on  # einschalten nur beim loslassen nach 'long'. Dies kommt einmal je peer des Buttons!!! Garnicht bei "kein Peer"
define nf myBtn1.Long.5-.* set Licht on  # einschalten nur beim 5. Long, also nach 1sec Taste druecken


Wenn du direkt Aktor und Button peerst schaue nach den 'lg'(long) udn 'sh'(short) registern

Gruss
Martin




docb

Boah alter Vatter...sag mal woher weißt du das alles?
Ich steig ehrlich gesagt bei der Hälfte aus. Ich werde jetzt erstmal zum xten Mal das Einsteiger-PDF durcharbeiten um die Begriffe device etc. wieder gedanklich auf die Reihe zu bekommen ;-)

Aber eine Verständnisfrage kann ich jetzt schon stellen: den virtuellen Aktor brauche ich im Endeffekt nur, um dem Taster vorzugaukeln, dass irgendeine Komponente (der virtuelle Aktor) seinen Befehl umsetzt. Richtig?

Und deine Anleitung http://forum.fhem.de/index.php?t=tree&th=9760&mid=54452&rid=0&rev=&reveal= wollte ich ausprobieren, aber da motzt fhem, ich solle irgendwas mit peerChan machen?!
Oh mei o mei...
Danke jedenfalls mal wieder!
Gute Nacht und beste Grüße
Doc
I love FHEM!