Moins,
ich versuche gerade für meine HM-RC-12 ein virtuelles Device, nach der Anleitung unter http://www.fhemwiki.de/wiki/Diskussion:HM-RC-12_Funkfernbedienung_12_Tasten, anzulegen, bekomme aber Fehlermeldungen beim Anlegen der Virtuellen Buttons:
fhem> define v_fernbedienung CUL_HM 1000003
fhem>
fhem> set v_fernbedienung virtual 12
f
ergibt im Log:
2015.11.15 09:51:30 1: define v_fernbedienung_Btn1 CUL_HM 100000301: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn2 CUL_HM 100000302: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn3 CUL_HM 100000303: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn4 CUL_HM 100000304: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn5 CUL_HM 100000305: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn6 CUL_HM 100000306: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn7 CUL_HM 100000307: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn8 CUL_HM 100000308: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn9 CUL_HM 100000309: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn10 CUL_HM 10000030A: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn11 CUL_HM 10000030B: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 1: define v_fernbedienung_Btn12 CUL_HM 10000030C: wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]
2015.11.15 09:51:30 3: CUL_HM set v_fernbedienung virtual 12
da scheint mir doch irgendwas im Code von set <device> virtual <channels> nicht zu passen. CUL_HM akzeptiert wohl nur 6 stellige IDs.
Eigentlich sollten doch so auch die Channels angelegt werden können.
define <name> CUL_HM <6-digit-hex-code|8-digit-hex-code>
Die codes im log sind ja auch neunstellig und dein erstes define definiert einen 7 stelligen code oder bin ich noch nicht richtig wach?
Nee, ich war noch nicht richtig wach.
Aber warum hat das Teil nen 7stelligen Code angenommen?
Die Fernbedienung hab ich inzwischen aber am Laufen.
Schön das es gelöst ist und ich dachte schon ich könnte keine Nullen mehr zählen ;)
Habe gerade getestet, auch bei mir nimmt er 7 Stellen...
@martinp876
Der Einfachheit halber mal direkt in diesem Thread:
Problem: CUL_HM lässt im define auch 7 stellige HMIDs zu, da auf 6 bis 8 hexadezimale Stellen geprüft wird:
Vorschlag:
Zeile 472/473 von jetzt
return "wrong syntax: define <name> CUL_HM 6-digit-hex-code [Raw-Message]"
if(!(int(@a)==3 || int(@a)==4) || $HMid !~ m/^[A-F0-9]{6,8}$/i);
auf folgendes ändern
return "wrong syntax: define <name> CUL_HM 6-/8-digit-hex-code [Raw-Message]"
if(!(int(@a)==3 || int(@a)==4) || $HMid !~ m/^[A-F0-9]{6}([A-F0-9]{2})?$/i );
Warum: Die perl-regexp sind da nicht sehr intuitiv: Ein Quantor {6,8} erlaubt 6-8 Wiederholungen. Da es wohl keinen Quantor für 6 oder 8 gibt, habe ich es anders umgebaut...
danke