HM-PB-2-WM55 2fach-Funk-Wandtaster: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Typos/Spelling)
Zeile 39: Zeile 39:


=== Bearbeiten ===
=== Bearbeiten ===
Das ist der Standardeintrag, den fhem automatisch erstellt. Es macht aber Sinn, einiges zu verändern.
Das ist der Standardeintrag, den FHEM automatisch erstellt. Es macht aber Sinn, einiges zu verändern.
Zum einen sollten die Entities umbenannt werden, um sie besser finden und somit bedienen zu können. Das geht entweder manuell in der fhem.cfg (suche "CUL_HM_HM_PB_2_WM55_1F1xxx" ersetze mit neuem Begriff) oder besser per Befehl:
Zum einen sollten die Entities umbenannt werden, um sie besser finden und somit bedienen zu können. Das geht entweder manuell in der fhem.cfg (suche "CUL_HM_HM_PB_2_WM55_1F1xxx" ersetze mit neuem Begriff) oder besser per Befehl:
<pre>
<pre>
Zeile 62: Zeile 62:
</pre>
</pre>


'''Wichtig:''' Folgende Attribute solltet ihr '''nicht aendern''': .devInfo, .stc, model, firmware, serialNr, subType
'''Wichtig:''' Folgende Attribute solltet ihr '''nicht ändern''': .devInfo, .stc, model, firmware, serialNr, subType


Weitere interessante Attribute, die man nutzen sollte (siehe auch {{Link2CmdRef}}) sind: room, group, expert, webCmd: gruppieren und darstellen auf der webseite, autoRegRead: automatisches Lesen der Register (für push-Button sollte es auf 0 stehen)
Weitere interessante Attribute, die man nutzen sollte (siehe auch {{Link2CmdRef}}) sind: room, group, expert, webCmd: gruppieren und darstellen auf der Webseite, autoRegRead: automatisches Lesen der Register (für push-Button sollte es auf 0 stehen)


Letztendlich könnte die "gepflegte" fhem.cfg so aussehen:
Letztendlich könnte die "gepflegte" fhem.cfg so aussehen:
Zeile 99: Zeile 99:


=== Mit virtuellem Aktor verbinden ===
=== Mit virtuellem Aktor verbinden ===
Wenn man den Taster nicht direkt mit einem Aktor verbindet, erhält er keine Rückmeldungen, wird also immer orange und rot blinken, wenn ihr einen Befehl absetzt. Dieser wird zwar von fhem verarbeitet, fhem weiß aber nicht, dass es etwas zurückmelden soll. Daher solltet ihr Euch einen virtuellen Aktor anlegen und den Taster dann mit diesem verbinden:
Wenn man den Taster nicht direkt mit einem Aktor verbindet, erhält er keine Rückmeldungen, wird also immer orange und rot blinken, wenn ihr einen Befehl absetzt. Dieser wird zwar von FHEM verarbeitet, FHEM weiß aber nicht, dass es etwas zurückmelden soll. Daher solltet ihr Euch einen virtuellen Aktor anlegen und den Taster dann mit diesem verbinden:


In der FHEM-Web Oberfläche gebt ihr in der Kommandozeile ein (die hmId kann freigewählt werden, darf aber in echt nicht existieren):
In der FHEM-Web Oberfläche gebt ihr in der Kommandozeile ein (die hmId kann freigewählt werden, darf aber in echt nicht existieren):
Zeile 112: Zeile 112:
  set LichtFlurDev getConfig   
  set LichtFlurDev getConfig   


und am Taster einmal anlernen drücken, ggf. nochmal ein <code>set LichtFlurDev getConfig</code>
und am Taster einmal Anlernen drücken, ggf. nochmal ein <code>set LichtFlurDev getConfig</code>




Nun drückt einmal einen Button eures Tasters. Wenn alles geklappt hatte, sollte bei Euren Kanälen im State ein (to virtueller_Aktor_Btn1) dahinter stehen und unter den Attributen etwas in den peerIDs auftauchen. Diesen virtuellen Aktor kann man übrigens als Gegenpart für beliebig viele Taster nehmen, ihr braucht also nicht für jeden Taster einen virtuellen Aktor erstellen. Um den virtuellen Aktor zu erweitern einfach ein <code>set virtueller_Aktor virtual <i>[Gesamtanzahl aller Kanäle]</i></code> ausführen, schon habt ihr weitere Kanäle die ihr mit euren echten Tastern peeren könnt.
Nun drückt einmal einen Button eures Tasters. Wenn alles geklappt hatte, sollte bei Euren Kanälen im State ein (to virtueller_Aktor_Btn1) dahinter stehen und unter den Attributen etwas in den peerIDs auftauchen. Diesen virtuellen Aktor kann man übrigens als Gegenpart für beliebig viele Taster nehmen, ihr braucht also nicht für jeden Taster einen virtuellen Aktor erstellen. Um den virtuellen Aktor zu erweitern einfach ein <code>set virtueller_Aktor virtual <i>[Gesamtanzahl aller Kanäle]</i></code> ausführen, schon habt ihr weitere Kanäle die ihr mit euren echten Tastern peeren könnt.


Am Ende umbedingt einmal "Save config" drücken, damit der virtuelle Aktor in der fhem.cfg abgespeichert wird.
Am Ende unbedingt einmal "Save config" drücken, damit der virtuelle Aktor in der fhem.cfg abgespeichert wird.


=== Mit Rolladenaktor verbinden (peeren) ===
=== Mit Rolladenaktor verbinden (peeren) ===

Version vom 4. März 2019, 21:56 Uhr

HomeMatic HM-PB-2-WM55 2fach-Funk-Wandtaster

Features

<bitte eintragen>

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 der Schalter wie unten dargestellt in FHEM angelegt werden (wird in die fhem.cfg eingetragen). Je nach Einstellungen in autocreate kann es sein, dass auch noch weitere Aktionen ausgeführt wurden.

Hinweise zum Betrieb mit FHEM

Auszug aus der fhem.cfg

Hier der Originaleintrag aus der fhem.cfg der automatisch erstellt wird (mit den "xxx" habe ich meine Nummer erstetzt):

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

Bearbeiten

Das ist der Standardeintrag, den FHEM automatisch erstellt. Es macht aber Sinn, einiges zu verändern. Zum einen sollten die Entities umbenannt werden, um sie besser finden und somit bedienen zu können. Das geht entweder manuell in der fhem.cfg (suche "CUL_HM_HM_PB_2_WM55_1F1xxx" ersetze mit neuem Begriff) oder besser per Befehl:

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

Auch ist es nicht sinnvoll, für jede Entity (in diesem Fall 3: Schalter und die beiden Knöpfe) je ein eigenes Logfile anzulegen, auch wenn autocreate das so macht, denn das kostet Performance und Übersichtlichkeit. Das Beispiel unten zeigt, wie die Ereignisse aller drei Entities mitgeschrieben werden - achtet auf das .* am Ende:

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

Und jetzt natürlich noch aufräumen und die alten Logfiles entsorgen:

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

Wichtig: Folgende Attribute solltet ihr nicht ändern: .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 (für push-Button sollte es auf 0 stehen)

Letztendlich könnte die "gepflegte" 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

Mit virtuellem Aktor verbinden

Wenn man den Taster nicht direkt mit einem Aktor verbindet, erhält er keine Rückmeldungen, wird also immer orange und rot blinken, wenn ihr einen Befehl absetzt. Dieser wird zwar von FHEM verarbeitet, FHEM weiß aber nicht, dass es etwas zurückmelden soll. Daher solltet ihr Euch einen virtuellen Aktor anlegen und den Taster dann mit diesem verbinden:

In der FHEM-Web Oberfläche gebt ihr in der Kommandozeile ein (die hmId kann freigewählt werden, darf aber in echt nicht existieren):

define virtueller_Aktor CUL_HM 123456

sowie:

set virtueller_Aktor virtual 2

Jetzt habt ihr einen Virtuellen Aktor mit einem Kanal erstellt, jetzt gilt es noch das ganze mit dem realen Taster zu verbinden. Verbunden werden zuerst die Kanäle und dann wird die ganze Konfiguration am Taster gespeichert:

set LichtFlur1 peerChan 0 virtueller_Aktor_Btn1 single set
set LichtFlur2 peerChan 0 virtueller_Aktor_Btn2 single set
set LichtFlurDev getConfig  

und am Taster einmal Anlernen drücken, ggf. nochmal ein set LichtFlurDev getConfig


Nun drückt einmal einen Button eures Tasters. Wenn alles geklappt hatte, sollte bei Euren Kanälen im State ein (to virtueller_Aktor_Btn1) dahinter stehen und unter den Attributen etwas in den peerIDs auftauchen. Diesen virtuellen Aktor kann man übrigens als Gegenpart für beliebig viele Taster nehmen, ihr braucht also nicht für jeden Taster einen virtuellen Aktor erstellen. Um den virtuellen Aktor zu erweitern einfach ein set virtueller_Aktor virtual [Gesamtanzahl aller Kanäle] ausführen, schon habt ihr weitere Kanäle die ihr mit euren echten Tastern peeren könnt.

Am Ende unbedingt einmal "Save config" drücken, damit der virtuelle Aktor in der fhem.cfg abgespeichert wird.

Mit Rolladenaktor verbinden (peeren)

Der HM-PB-2-WM55 kann auch z.B. direkt mit einem HM-LC-BL1-FM Rollladenaktor gepeert werden. Hierdurch lässt er sich ohne FHEM nutzen. Weitere Infos dazu finden Sie hier.

Integration in bestehende Markenschalterprogramme

Obwohl der HM-PB-2-WM55, im Gegensatz zu den Funk-Schaltaktoren für Markenschalter (HM-LC-Sw1PBU-FM, HM-LC-Dim1TPBU-FM und HM-LC-Bl1PBU-FM), eigentlich nicht für die Integration in bestehende Markenschalterprogramme geeignet ist, kann man ihn mit etwas Bastelaufwand doch optisch zumindest etwas integrieren.

Jung CD 500

Mit Hilfe einer im 3D Drucker selbst gedruckten Adapterplatte und etwas dremeln lässt sich der HM-PB-2-WM55 recht gut in die Jung CD 500 Serie integrieren. Eine bebilderte Anleitung ist hier zu finden.

Probleme

Bausatz: Der Taster lässt sich nicht anlernen / rotes Dauerblinken

Dann stimmt vermutlich etwas mit der Lötung nicht. Am besten insbesondere die Lötungen des Funkmoduls (8 auf jeder Seite überprüfen). Am besten mal in der fhem.cfg

attr LANInterface loglevel 1

eintragen und dann die Logdatei anschauen, was dort für Funkverkehr aufgezeichnet wird. Euren Schalter könnt ihr identifizieren, indem ihr den kleineren QR-code auf der Platine des Schalters z.B. mit einem Android Handy und Barcoo auslest. Die App zeigt Euch dann den sechsstelligen Gerätecode an (wenn der Code siebenstellig erscheint, dann die erste Ziffer / Buchtstaben weglassen), den ihr in der Logdatei suchen könnt.

Links