Hallo FHEM-Gemeinde,
ich habe massive Probleme bei der Konfiguration und dem Peering eines Display-Taster HM-PB-4Dis-WM ...
Meine VCCU sieht so aus:
define VCCU CUL_HM 1630FA
attr VCCU model CCU-FHEM
attr VCCU IOList CUNX1,CUNX2
attr VCCU subType virtual
attr VCCU webCmd virtual:update
attr VCCU expert 2_raw
attr VCCU hmKey 01:<geheim>
Virtuelle IODevices habe ich wie folgt angelegt:
set VCCU virtual 10
Meinen Display-Taster habe ich so definiert:
define EG.Flur.Taster CUL_HM 1EAED8
attr EG.Flur.Taster model HM-PB-4Dis-WM
attr EG.Flur.Taster serialNr JEQ0705112
attr EG.Flur.Taster subType pushButton
define EG.Flur.Taster.S01 CUL_HM 1EAED801
attr EG.Flur.Taster.S01 subType pushButton
define EG.Flur.Taster.S02 CUL_HM 1EAED802
attr EG.Flur.Taster.S02 subType pushButton
define EG.Flur.Taster.S03 CUL_HM 1EAED803
:
Nun versuche ich den Taster zu konfigurieren und Peerings zu einem virtuellen Button herzustellen, damit diese mit einem ACK quittiert werden und ich auf dem Taster nach Auslösen einer Taste auch ein "grün" bekomme. Das sieht dann so aus:
Konfiguration des Tasters selbst:
set EG.Flur.Taster getConfig
=== Konfiguration am Gerät einlesen bis kein CMD_Pending mehr ansteht ===
get EG.Flur.Taster reg all
set EG.Flur.Taster regSet pairCentral 0x1630FA
get EG.Flur.Taster reg all
set EG.Flur.Taster getConfig
=== Konfiguration am Gerät einlesen bis kein CMD_Pending mehr ansteht ===
Konfiguration der ersten beiden Tasten:
set EG.Flur.Taster.S01 peerChan 0 VCCU_Btn1 single set
set EG.Flur.Taster.S01 text \_ lang
set EG.Flur.Taster.S01 getConfig
set EG.Flur.Taster.S02 peerChan 0 VCCU_Btn1 single set
set EG.Flur.Taster.S02 text anwesend Abwesenheit
set EG.Flur.Taster.S02 getConfig
=== Konfiguration am Gerät einlesen bis kein CMD_Pending mehr ansteht ===
Im Prinzip funktioniert das auch, allerdings:
- der Taster geht nicht in den "Zentralen-Modus", d.h. er bietet mir selbst nach vermeindlich erfolgreichem Anlernen an der Zentrale nach wie vor das Anlernen einzelner Tasten und an der Zentrale an. Normalerweise müsste er nach einem erfolgreichen Anlernen an der Zentrale aber nur noch das Übernehmen der Konfiguration von der Zentrale anbieten (bis zum Werksreset).
- die CMDs_pending schaffe ich nach dem Setzen von Konfigurationsparameter fast nie auf 0 zu fahren (ich schaue mir dazu den Log an). Es werden normalerweise zwischen 5 und 50 Kommandos an das Gerät gesendet und dann bleibt die Übertragung mit > 0 CMDs_pending stehen. Wenn ich die Übertragung (durch "Anlernen an Zentrale") nochmals anstosse, dann werden wieder zwischen 5 und 50 Kommandos übertragen oder aber auch gar nichts mehr. Dann hilft aber ein Neustart (durch Batterie raus und rein) am Gerät. Das erzeugt aber offenbar ca. 40 weitere Kommandos in der Queue und das Spiel beginnt von Neuem -- mittlerweile schon wieder drei Stunden >:(
Ich habe auch schon versucht den Taster auf Werkeinstellungen zurückzusetzen, dann ein
set EG.Flur.Taster clear all und erst einmal die Konfig in diesem Zustand zu lesen. Das sind dann weniger Kommandos und nach mehreren Versuchen klappt das auch mal. Dann ist aber noch keine Taste konfiguriert.
Hat da noch jemand eine Idee für mich?
Danke schon mal ...
gromeck
FHEM 5.7 mit aktuellen Updates
Hallo gromeck,
warum lernst Du ihn nicht "normal" an? Also hmPairForSec und Knopf drücken?
Ja dieser Schalter produziert auf Grund seiner Kanäle viele Nachrichten, aber bei mir hat das problemlos funktioniert.
Gruß Otto
... weil ich ihn schon gepairt habe.
Es geht ja nicht um das Pairing, sondern eben um die Konfiguration und die Peerings.
sorry aber set EG.Flur.Taster regSet pairCentral 0x1630FA
ist für mich kein normales pairing.
poste mal bitte ein list EG.Flur.Taster
Gruß Otto
Ok, hier ist ein list EG.Flur.Taster direkt nach dem Einlesen der Konfig:
Internals:
CFGFN fhem-CasaDiLorenzi-HM-Displays+Remotes.cfg
DEF 1EAED8
IODev CUNX2
NAME EG.Flur.Taster
NOTIFYDEV global
NR 539
STATE CMDs_pending
TYPE CUL_HM
channel_01 EG.Flur.Taster.S01
channel_02 EG.Flur.Taster.S02
channel_03 EG.Flur.Taster.S03
channel_04 EG.Flur.Taster.S04
channel_05 EG.Flur.Taster.S05
channel_06 EG.Flur.Taster.S06
channel_07 EG.Flur.Taster.S07
channel_08 EG.Flur.Taster.S08
channel_09 EG.Flur.Taster.S09
channel_0A EG.Flur.Taster.S10
channel_0B EG.Flur.Taster.S11
channel_0C EG.Flur.Taster.S12
channel_0D EG.Flur.Taster.S13
channel_0E EG.Flur.Taster.S14
channel_0F EG.Flur.Taster.S15
channel_10 EG.Flur.Taster.S16
channel_11 EG.Flur.Taster.S17
channel_12 EG.Flur.Taster.S18
channel_13 EG.Flur.Taster.S19
channel_14 EG.Flur.Taster.S20
Readings:
2016-09-11 11:03:05 CommandAccepted yes
2016-09-11 13:10:33 D-firmware 1.4
2016-09-11 13:10:33 D-serialNr JEQ0705112
2016-09-11 11:50:44 PairedTo 0x1630FA
2016-09-11 10:52:01 R-language German
2016-09-11 10:52:01 R-pairCentral 0x1630FA
2016-09-11 10:52:01 R-stbyTime 10 s
2016-09-11 11:50:44 RegL_00. 02:00 07:01 0A:16 0B:30 0C:FA 0E:0A 00:00
2016-09-11 13:10:02 alive yes
2016-09-11 13:10:02 battery ok
2016-09-11 13:10:02 powerOn 2016-09-11 13:10:02
2016-09-11 13:10:02 recentStateType info
2016-09-11 13:10:38 state CMDs_pending
2016-09-11 10:58:41 text1 -
2016-09-11 10:58:41 text2 -
Helper:
HM_CMDNR 1
Expert:
def 1
det 0
raw 1
tpl 0
Io:
newChn +1EAED8,00,00,00
rxt 0
vccu VCCU
p:
1EAED8
00
00
00
Mrssi:
mNo
Prt:
bErr 0
sProc 0
Q:
qReqConf
qReqStat
Role:
dev 1
Tmpl:
Attributes:
IODev CUNX2
IOgrp VCCU
autoReadReg 4_reqStatus
event-on-change-reading .*
expert 2_raw
model HM-PB-4Dis-WM
room EG,EG-Flur
serialNr JEQ0705112
subType pushButton
webCmd getConfig:clear msgEvents
Hm, ich sehe jetzt an dem List nichts verdächtiges. Sieht gut gepairt aus. Du hast ne neuere Firmware als ich (1.0).
Wenn Du die Wippe seitlich lange drückst bietet er dir nicht das Menü Zentrale / Übernehmen?
Damit würde ich jetzt die offene Datenübertragung auslösen.
Das muss man auch nach jedem peering / Text ändern machen. Ist etwas nervig aber ging in kürzerer Zeit als Du beschreibst.
Gruß Otto
Obwohl der Taster schon gepairt war, habe ich ihn halt nochmal gepairt. Und dann geht er auch in den Modus, in dem er nu noch im Menü Zentrale übernehmen anbietet. Immerhin!
Das ich die Konfig nach jeder Änderung von Text o.ä. übertragen muss, ist auch soweit klar und ok.
Allerdings habe ich jetzt wieder 105 CMDs_pending ... d.h. ich bekomme die Konfig einfach nicht in das Gerät.
Ok, jetzt musst Du eventuell ruhig vorgehen. Es kann sein, dass der IO in den Overload geht?
Ich habe immer schön einen Kanal nach dem anderen gepeert und beschriftet, hat bei mir gut funktioniert.
Wenn Du einmal keine CMDs_pending hast musst Du eventuell trotzdem nochmal warten und nochmal die Übertragung machen. Gerade am Anfang generiert er ein paar Requests in Folge.
Gruß Otto
Heute Nachmittag hat sich einer meiner CUNX -- der an dem ich mit dem Taster hänge -- für mehr als 3 Stunden tot gestellt (er war noch pingbar, aber es war kein Traffic im Log von diesem CUNX, um 20:00 ist er dann wieder erwacht). Ich vermute, dass ich den in den Overload gebracht habe. Im Log finde ich dazu aber keine explizite Warnung oder Fehler.
Und ja, das mit dem schrittweisen Vorgehen habe ich auch bei einem anderen Taster so gemacht. Dann habe ich jetzt einfach man Geduld ...
Danke aber schon mal.
Trotzdem verstehe ich das ganze Prozedere nicht wirklich. Warum gibt es solche Probleme mit einer CCU2 nicht? Dort ändert man die Konfiguration mehr oder weniger komfortabel (gerne auch alle Texte auf einmal), Konfiguration übertragen, fertig. Das war da nie ein Problem -- ok, dafür hatte ich mit der CCU2 ganz andere Probleme :-\
Guten Mittag,
ich habe ein ähnliches Problem. Ich habe einen Raspi3 und hauptsächlich Enocean am Laufen. Nun habe ich auch einen CUL drangehängt, sowie mit dem HM-PB-4Dis-WM-2 mein erstes HM-Device.. Ich schaff es aber irgendwie nicht, das Teil zu pairen..
Ich gehe gemäss Wiki vor: https://wiki.fhem.de/wiki/HM-PB-4DIS-WM_Funk-Wandtaster_mit_Display
Jedoch bereits beim Abschnitt "Anlernen" erhalte ich nie "CMDs_done". Weiter finde ich niergends die Möglichkeit peerChan (set Device peerChan...) auszuwählen...
Und auf dem Taster steht nach kurzer Zeit "Kein Gerät angelernt". Wenn ich zwar eine Taste drücke, dann passiert in den Readings auch was, aber irgendwie kann ich das Teil nicht programmieren.
Hier das Listing zum CUL:
Internals:
CMDS BbCFiAZNkGMKUYRTVWXefmLltux
CUL_0_MSGCNT 3
CUL_0_TIME 2017-05-06 12:54:40
Clients :CUL_HM:HMS:CUL_IR:STACKABLE_CC:TSSTACKED:STACKABLE:
DEF /dev/ttyACM0@9600 1034
DeviceName /dev/ttyACM0@9600
FD 13
FHTID 1034
NAME CUL_0
NR 50
PARTIAL
RAWMSG A0B1C8440303548000000020DDF
RSSI -90.5
STATE Initialized
TYPE CUL
VERSION V 1.66 CUL868
initString X21
Ar
Matchlist:
1:CUL_HM ^A....................
8:HMS ^810e04....(1|5|9).a001
D:CUL_IR ^I............
H:STACKABLE_CC ^\*
M:TSSTACKED ^\*
N:STACKABLE ^\*
Readings:
2017-05-05 23:52:21 ccconf freq:868.300MHz bWidth:101KHz rAmpl:33dB sens:8dB
2017-05-05 23:33:26 cmds B b C F i A Z N k G M K U Y R T V W X e f m L l t u x
2017-04-12 21:10:59 fhtbuf AE
2017-04-12 22:29:01 raw 1034
2017-05-06 12:54:40 state Initialized
2017-04-12 21:02:56 uptime 0 00:57:04
2017-04-12 21:10:34 version V 1.66 CUL868
Attributes:
hmId 112233
rfmode HomeMatic
room CUL,System
und hier das Listing vom Taster
Internals:
CUL_0_MSGCNT 3
CUL_0_RAWMSG A0B1C8440303548000000020D::-90.5:CUL_0
CUL_0_RSSI -90.5
CUL_0_TIME 2017-05-06 12:54:40
DEF 303548
IODev CUL_0
LASTInputDev CUL_0
MSGCNT 3
NAME HM_303548
NOTIFYDEV global
NR 51
NTFY_ORDER 50-HM_303548
STATE HM_303548_Btn_02 Short
TYPE CUL_HM
channel_01 HM_303548_Btn_01
channel_02 HM_303548_Btn_02
channel_03 HM_303548_Btn_03
channel_04 HM_303548_Btn_04
channel_05 HM_303548_Btn_05
channel_06 HM_303548_Btn_06
channel_07 HM_303548_Btn_07
channel_08 HM_303548_Btn_08
channel_09 HM_303548_Btn_09
channel_0A HM_303548_Btn_10
channel_0B HM_303548_Btn_11
channel_0C HM_303548_Btn_12
channel_0D HM_303548_Btn_13
channel_0E HM_303548_Btn_14
channel_0F HM_303548_Btn_15
channel_10 HM_303548_Btn_16
channel_11 HM_303548_Btn_17
channel_12 HM_303548_Btn_18
channel_13 HM_303548_Btn_19
channel_14 HM_303548_Btn_20
lastMsg No:1C - t:40 s:303548 d:000000 020D
protCmdPend 41 CMDs_pending
protLastRcv 2017-05-06 12:54:40
protState CMDs_pending
rssi_at_CUL_0 max:-90.5 cnt:3 min:-92 avg:-91 lst:-90.5
Readings:
2017-05-05 23:29:54 D-firmware 1.5
2017-05-05 23:29:54 D-serialNr irgendwas
2017-05-06 12:54:40 battery ok
2017-05-06 12:54:40 state HM_303548_Btn_02 Short
cmdStack:
++A00111223330354800040000000000
++A00111223330354801040000000001
++A0011122333035480103
++A00111223330354802040000000001
++A0011122333035480203
++A00111223330354803040000000001
++A0011122333035480303
++A00111223330354804040000000001
++A0011122333035480403
++A00111223330354805040000000001
++A0011122333035480503
++A00111223330354806040000000001
++A0011122333035480603
++A00111223330354807040000000001
++A0011122333035480703
++A00111223330354808040000000001
++A0011122333035480803
++A00111223330354809040000000001
++A0011122333035480903
++A0011122333035480A040000000001
++A0011122333035480A03
++A0011122333035480B040000000001
++A0011122333035480B03
++A0011122333035480C040000000001
++A0011122333035480C03
++A0011122333035480D040000000001
++A0011122333035480D03
++A0011122333035480E040000000001
++A0011122333035480E03
++A0011122333035480F040000000001
++A0011122333035480F03
++A00111223330354810040000000001
++A0011122333035481003
++A00111223330354811040000000001
++A0011122333035481103
++A00111223330354812040000000001
++A0011122333035481203
++A00111223330354813040000000001
++A0011122333035481303
++A00111223330354814040000000001
++A0011122333035481403
Helper:
HM_CMDNR 28
mId 00DD
rxType 28
supp_Pair_Rep 0
Expert:
def 1
det 0
raw 1
tpl 0
Io:
newChn +303548,02,00,00
nextSend 1494068080.31457
prefIO
rxt 2
vccu
p:
303548
00
00
00
Mrssi:
mNo 1C
Io:
CUL_0 -88.5
Prt:
bErr 0
sProc 2
Q:
qReqConf
qReqStat
Role:
dev 1
Rssi:
At_cul_0:
avg -91
cnt 3
lst -90.5
max -90.5
min -92
Shadowreg:
Tmpl:
Attributes:
IODev CUL_0
autoReadReg 4_reqStatus
expert 2_raw
firmware 1.5
model HM-PB-4DIS-WM-2
room CUL_HM
serialNr irgendwas...;)
subType pushButton
webCmd getConfig:clear msgEvents
was mach ich falsch? Oder hab ich was überlesen?
Danke für die Hilfe..
Lg c
Hi,
naja peeren kannst Du erst nacch pairen. Das pairen ist scheinbar noch nicht mal angelaufen. Das musst Du weiter versuchen.
Allerdings weiß ich, dass dieser Taster extrem viel Daten überträgt. Das war schon mit dem HM IO ein langwieriges Spiel.
Ich befürchte, das wird mit einem CUL nix. Vielleicht mit der TS Firmware aber ich weiß es nicht sicher.
Gruß Otto
hallo Otto123
herzlichen Dank. Du bist immer wieder mein Retter in der Not.. Du kommst -wenn es nach mir geht - bestimmt in den Himmel ;)
Ich bin nun auch schon ein ganzes Stück weiter gekommen. Ich konnte CUL_0 mit dem Wandtaster erfolgreich peeren. Ich konnte auch die vielen CMD_Pendings "abarbeiten". Zusätzlich habe ich VCCUL erstellt und 20 virtuelle Buttons. die ersten Buttons konnte ich auch erfolgreich pairen. Auch die Beschriftung von Button1 (Home Abwesende) und Button 2 (Anwesend My) ging flott.
Im allgemeinen also alles bestens. Jedoch wo ich nun scheitere ist, dass ich auf dem Display den aktuellen Wert angezeigt erhalte.. Es toggelt nur.. Ich habe mich an https://wiki.fhem.de/wiki/HM-RC-12_Funkfernbedienung_12_Tasten#Pairing_an_HMLAN_Konfigurator gehalten, und auch eine raw message abgesetzt, aber es geht irgendwie wie nicht... Wie krieg ich den Wert im Display angezeigt? Weisst du rat?
Lg c
Ich hoffe "in den Himmel" bleibt mir noch etwas Zeit ;)
Ich verstehe nicht genau welchen Wert Du meinst. Der Link führt ja an die Stelle wo es um die Quittung geht, also grün beim Betätigen oder Orange. Also um welche Anzeige geht es? Um den Text im Display?
Im übrigen Anlernen an die Zentrale ist pairen.
Anlernen an virtuelle Aktoren ist peeren.
Du willst mit Taste hoch und Taste runter den Status ändern und die Rückmeldung im Text sehen?
Ich habe einen Rollladen Aktor gepeert - irgendwie ist meine Doku dort Lückenhaft aber die Raw def sagt setstate TasterDIS_Btn_01 2016-09-18 13:42:15 text1 Gaube
setstate TasterDIS_Btn_01 2016-09-18 13:42:15 text2 @
setstate TasterDIS_Btn_02 2016-09-18 13:42:17 text1 >
setstate TasterDIS_Btn_02 2016-09-18 13:42:17 text2 Rollo_GZ
Damit steht im Display oben Rollo_GZ und unten Gaube und während der Aktor fährt erscheinen unten Prozente der Schließung - also aktuelle Werte
Ob Dir das hilft?
Gruß Otto
@gromeck: Homematic-Diskussionen werden am besten im zugehörigen Unterforum geführt. Würdest du den Thread verschieben? (Button links unten)
Zitat von: Otto123 am 07 Mai 2017, 18:31:04
Ob Dir das hilft?
Gruß Otto
so halb ;) Sorry..
Wenn ich die Buttons klicke, werden sie zuerst orange, dann grün und dann wieder weiss. Grün als Quittung nehme ich an... Was ich gerne machen möchte, ist folgendes:
Nach klick auf Button1 bleibt der Text von button1 (Anwesend) solange grün, bis ich button2 (Abwesend) gedrückt habe. Dann soll Button2 grün werden und button 1 wieder weiss.
Die Buttons schalten mittels notify ein Dummy (Home) ein resp. aus... Bei Anwesenheit aus und bei Abwesenheit ein..
Dadurch kann ich zu hause meine Ab-/anwesenheit per Knopfdruck steuern..
Ist das möglich?
Also wo ich mir sicher bin: Du bekommst keine dauerhafte Anzeige. Nur für den Moment.
Ich denke die Farbe ist nur die Quittung -> weiß Grundzustand, orange Datenübertragung, grün ack vom Peer, rot kein ack
Ich denke Du kannst nicht jede beliebige Info darstellen. Aber offenbar den state vom peer. Genau kann ich das nicht sagen.
Versuche es doch einfach mit dem Text "@" scheint ja ein Platzhalter zu sein. Ich weiß momentan nicht genau nach welcher Anleitung ich seiner Zeit vorgegangen bin.
Gruß Otto
Hallo,
ich komme mittlerweile mit dem Taster gut zu recht.
Wo ich aber nun schon länger rumeiere ist, dass ich zwar erfolgreich folgender DOIF definieren konnte, jedoch schaltet es mir bei jedem Getconfig das Device TEST an, obschon ich das gar nicht will. weiss jemand rat?
([HM_303548_Btn_02] eq "Short (to VCCU)") (set TEST on) DOELSEIF ([HM_303548_Btn_01] eq "Short (to VCCU)") (set TEST off) DOELSE
lg c
Hi,
wozu machst Du ständig getConfig?
Was ich dazu sagen ist folgendes: Du fragst den state von HM_303548_Btn_02 bzw. HM_303548_Btn_01 ab. Wenn der einen Short (to VCCU) liefert wird geschalten.
Wenn Du getConfig machst, überträgt er Daten nur wenn Du den "configTaster" am Taster drückst. configTaster drücken ohne das state aktualisiert wird bekomme ich nicht hin.
Gruß Otto
Zitat von: Otto123 am 05 Juli 2017, 21:18:50
wozu machst Du ständig getConfig?
weil ich die Tasten/Kanäle am konfigurieren bin, resp. beschriften. Du muss ich ja getconfig und dann die ConfigTaste drücken. Und jedes Mal schaltet es mir, was etwas mühsam ist.. ;)
Zitat von: Otto123 am 05 Juli 2017, 21:18:50
Wenn Du getConfig machst, überträgt er Daten nur wenn Du den "configTaster" am Taster drückst. configTaster drücken ohne das state aktualisiert wird bekomme ich nicht hin.
ich eben auch nicht und genau das ist ja mein Problem. Evtl. gibt es einen Workaround...
set <doifname> disable
?
Danke Otto. Genau so hab ich das gemacht.. ist zwar nicht so schlank, aber ben ein Workaround.. danke nochmals, du hilsfst mir immer geduldig..