CUL_HM.pm - HM-PB-2-WM55 gibt keine Bestätigung bei Schalterdruck

1,872 views
Skip to first unread message

Markus Bloch

unread,
Nov 10, 2012, 12:08:58 PM11/10/12
to fhem-de...@googlegroups.com
Hallo zusammen,

ich hab mir gerade vor kurzem einen HomeMatic Wandschalter (HM-PB-2-WM55) gekauft um damit über meinem Bett direkt einen Lichtschalter mit speziellen Funktionen zu haben. 

Das anlernen funktioniert auch und das Device wird erzeugt, allerdings gibt der Schalter bei Tastendruck nie eine Bestätigung mit der grünen LED, dass der Befehl auch durchgeführt wurde.

Im FHEM steht dann auch immer nur:

STATE
Btn1 onShort (to broadcast)

Wie bekomm ich es hinn, das der Schalter richtig gepairt wird und nicht nur Broadcasts verschickt inkl. Rückmeldung durch FHEM, dass die Event-Maschinierie angetriggert wurde?

Vielen Dank euch.

Grüße

Markus

Martin

unread,
Nov 11, 2012, 8:15:48 AM11/11/12
to fhem-de...@googlegroups.com
a) ist wohl eigentlich ein User Thema
b) was hast du gepairt? Zentrale oder peer?
c) docu schon gelesen?

Der send to broadcast deuten an, dass der Schalter nicht mit dem Aktor gepairt ist (auch wenn der Aktor mit dem Schalter gepairt ist, das sind 2 getrennte Dinge

Pruefe die Einstellungen:
- peers auslese im Aktor (getdevicepair, getConfig)
- peers auslese im Button (getdevicepair, getConfig)

Beachten, dass bei den meisten FBs das schreiben (also auch das pairen und lesen)  nur bei anlernen funktioniert.

Markus Bloch

unread,
Nov 11, 2012, 10:55:53 AM11/11/12
to fhem-de...@googlegroups.com
Hallo Martin,

der Schalter ist direkt nicht mit einem Aktor gepairt, sondern nur direkt mit FHEM. In FHEM werden dann entsprechende Aktionen via notify eingeleitet (Spezielles Beleuchtungs/Schlafen-Szenario).

Und ich denke mal, da liegt das Problem. Denn ein direktes Pairing mit FHEM scheint der Schaltet wohl nicht zu akzeptieren und sendet weiterhin nur Broadcasts.

Das Auslesen der Pairing- und Configinformationen werde ich die Tage durchführen.

Vielen Dank

Gruß Markus

Von meinem iPhone gesendet
--
Sie haben diese Nachricht erhalten, weil Sie der Google Groups-Gruppe FHEM developers beigetreten sind.
Besuchen Sie https://groups.google.com/d/msg/fhem-developers/-/7Gx_wYlZqLQJ, um diese Diskussion im Web anzuzeigen.
Wenn Sie Nachrichten in dieser Gruppe posten möchten, senden Sie eine E-Mail an fhem-de...@googlegroups.com.
Wenn Sie aus dieser Gruppe austreten möchten, senden Sie eine E-Mail an fhem-develope...@googlegroups.com.
Besuchen Sie die Gruppe unter http://groups.google.com/group/fhem-developers?hl=de, um weitere Optionen zu erhalten.

Martin

unread,
Nov 11, 2012, 2:26:50 PM11/11/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com


der Schalter ist direkt nicht mit einem Aktor gepairt, sondern nur direkt mit FHEM. In FHEM werden dann entsprechende Aktionen via notify eingeleitet (Spezielles Beleuchtungs/Schlafen-Szenario).
ok

Und ich denke mal, da liegt das Problem. Denn ein direktes Pairing mit FHEM scheint der Schaltet wohl nicht zu akzeptieren
Sollte er aber. Da hast du einen Fehler gemacht. Pruefen es und paire noch einmal - nur den Schalter nicht den Aktor.
 
und sendet weiterhin nur Broadcasts.
nicht ganz. Es erst broadcasts gesendet (der schalter kannja auch 10 peers haben- so viele Messages will er nicht schicken). Am Ende kommt dann eine Message an jeden zur Statusabfrage. Du musst also zwischen langen und kurzen Tastendruck
unterschieden.
Nachdem die Letzte eine Broadcast war ist es wohl tatsaechlich nicht gepairt

Das Auslesen der Pairing- und Configinformationen werde ich die Tage durchführen.


Gruss
Martin

Markus Bloch

unread,
Nov 11, 2012, 2:57:46 PM11/11/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hi Martin,

anbei mal die Werte:

PairedTo
0000002012-11-11 20:46:39
RegL_00:
02:01 0A:00 0B:00 0C:00 00:002012-11-11 20:46:39
RegL_01:
04:10 08:00 09:00 00:002012-11-11 20:45:17

Der Schalter ist wiegesagt keinem Aktor wirklich zugeordnet. Er dient nur dazu FHEM seine Events zu schicken und FHEM macht dann daraus was tolles. 

Ich hab soeben ein set Schalter_Schlafzimmer regset pairCentral 1 gemacht und anschließend erneut gepairt. Nun sieht meine Config folgendermaßen aus.

PairedTo
C26BB22012-11-11 20:53:36
RegL_00:
02:01 0A:C2 0B:6B 0C:B2 00:002012-11-11 20:53:36
RegL_01:
04:10 08:00 09:00 00:002012-11-11 20:53:37

Die HM-Adresse C26BB2 ist mein HMLAN Adapter. Dennoch bestätigt mir der Schalter die Befehle nicht via grüner LED:

Hast du irgendeine Idee?

Vielen Dank

Gruß
Markus

Markus Bloch

unread,
Nov 11, 2012, 3:24:49 PM11/11/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Events vom Schalter werden nachwievor "to Broadcast" geschickt. :(

Martin

unread,
Nov 12, 2012, 1:58:32 AM11/12/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com

Events vom Schalter werden nachwievor "to Broadcast" geschickt. :(

Du musst Zentrale und peers auseinander halten. Deine FB ist zur Zentrale 'gepairt'. Das bedeuted, dass sie ggf gewisse statusmensungen an die Zentrale absetzt. Eine FB hat aber nicht viel Status. Ein trigger ist kein Status da er nicht "stabil" ist, es ist nur ein event.
Jedenfalls, diesen Teil halte ich schon einem  fuer korrekt

part 2: peers
jede Taste deiner FB kann zu n aktoren gepairt werden. Dies bedeuted, dass die FB AM ENDE der uebertragung jeden peer antriggert und von dem einen Status will.
"An Ende " bedeuted, dass bei einem langen Tastendruck kommandos an broadcast geschickt werden um ALLE pers gleichzeitig zu bedienen. Nach loslassen wird die Abfrage gestartet.

Soweit der Hintergrund. Nun willst du auch en ack wenn du mit der Zentrale pairst. So einen Aufbau wollte schon jemand - daher gibt es "virtuelle devices" mit ein paar funktioenchen. Da ich es nicht fuer sinnvoll gehalten habe, es mit der HMID der Zentrale zu realisieren (schlechte Handhabbarkeit in FHEM) ist alle in virtuellen devices organisiert.
Schau dir mal command ref und die virtuellen schalter an. Die sind noch etwas erweitert - send aber noch im test.

Vorgehen:

define <virt> CUL_HM <HMID>    # die HMid kannst du dir ausdenken. Keine der benutzten, auch nicht Zentrale
set <virt> virtual 2                # mal 2 channels definiert, koenne auch mehr sein
set <pwb_Btn1> devicepair 0 virt_Btn_01 single set

=> pruefen:
getConfig sollte jetzt den Peer anzeigen Hierzu nicht im Device sondern im Btn1 nachsehen, der Peer gehoert dem Channel
getConfig kannst du auf das device anwenden - es werden ALLE Kanaele ausgelesen
Nach Betaetigen des Schalters sollte sich der Zustand im virtuellen Aktor aendern und es sollte ein ack gesendet werden.

Gruss
Martin
 

Markus Bloch

unread,
Nov 12, 2012, 9:10:30 AM11/12/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,

danke für den Hinweis. Werde ich ausprobieren ;-)

Viele Grüße

Markus

Markus Bloch

unread,
Nov 12, 2012, 2:28:12 PM11/12/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,

irgendwie bekomme ich es nicht direkt hin. Ich hab jetzt folgende Definitionen in der fhem.cfg;


define Schalter_Schlafzimmer CUL_HM 19CD2A
attr Schalter_Schlafzimmer devInfo 020000
attr Schalter_Schlafzimmer firmware 1.0
attr Schalter_Schlafzimmer hmClass sender
attr Schalter_Schlafzimmer model HM-PB-2-WM55
attr Schalter_Schlafzimmer room Schlafzimmer
attr Schalter_Schlafzimmer serialNr JEQ0004970
attr Schalter_Schlafzimmer subType remote
attr Schalter_Schlafzimmer alias Schalter Bett
define Schalter_Schlafzimmer_Btn1 CUL_HM 19CD2A00
attr Schalter_Schlafzimmer_Btn1 devInfo 020000
attr Schalter_Schlafzimmer_Btn1 firmware 1.0
attr Schalter_Schlafzimmer_Btn1 hmClass sender
attr Schalter_Schlafzimmer_Btn1 model HM-PB-2-WM55
attr Schalter_Schlafzimmer_Btn1 room Schlafzimmer
attr Schalter_Schlafzimmer_Btn1 serialNr JEQ0004970
attr Schalter_Schlafzimmer_Btn1 subType remote
attr Schalter_Schlafzimmer_Btn1 alias Schalter Bett Btn1
 

define Schalter_Schlafzimmer_virtual CUL_HM 123456
attr Schalter_Schlafzimmer_virtual hmClass receiver
attr Schalter_Schlafzimmer_virtual subType virtual
attr Schalter_Schlafzimmer_virtual alias Schalter Bett (virtuell)

Anschließend habe ich

set  Schalter_Schlafzimmer_virtual 2
set  Schalter_Schlafzimmer_Btn1 devicepair 0 Schalter_Schlafzimmer_virtual_Btn_01 single set 

Nun ist es so, dass bei einem Btn1 offShort der Taster die Meldung rot quittiert (was ja schonmal die richtige richtung ist, nur die Falsche Farbe) und auch gezielt an die Adresse 123456. Der onShort Befehl wird weiterhin an Broadcast geschickt. 

Hab das Gefühl, dass das so nicht ganz richtig ist.

Kannst du da mal ein kleines Beispiel posten?

Vielen Dank

Gruß
Markus

Martin

unread,
Nov 13, 2012, 4:16:06 AM11/13/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Markus

irgendwie bekomme ich es nicht direkt hin. Ich hab jetzt folgende Definitionen in der fhem.cfg;


define Schalter_Schlafzimmer CUL_HM 19CD2A
attr Schalter_Schlafzimmer devInfo 020000
attr Schalter_Schlafzimmer firmware 1.0
attr Schalter_Schlafzimmer hmClass sender
attr Schalter_Schlafzimmer model HM-PB-2-WM55
attr Schalter_Schlafzimmer room Schlafzimmer
attr Schalter_Schlafzimmer serialNr
 
attr Schalter_Schlafzimmer subType remote
attr Schalter_Schlafzimmer alias Schalter Bett
define Schalter_Schlafzimmer_Btn1 CUL_HM 19CD2A00
attr Schalter_Schlafzimmer_Btn1 devInfo 020000
attr Schalter_Schlafzimmer_Btn1 firmware 1.0
attr Schalter_Schlafzimmer_Btn1 hmClass sender
attr Schalter_Schlafzimmer_Btn1 model HM-PB-2-WM55
attr Schalter_Schlafzimmer_Btn1 room Schlafzimmer
attr Schalter_Schlafzimmer_Btn1 serialNr JEQ0004970
attr Schalter_Schlafzimmer_Btn1 subType remote
attr Schalter_Schlafzimmer_Btn1 alias Schalter Bett Btn1
 
nebenfrage - machst du dies alles von hand? warum? CUL_HM wuerde es ggf eh berichtigen. Einfacher ist
define <name> CUL_HM <hmID>
set <HMLAN> hmpairserial <serialnumber>  #aus den kopf - also sinngemaess...
==> alle deviceparameter werden gesetzt
Warum ein alias fuer den schalter? Warum kein rename des schalters?

Bei mir wuerde es aussehen wie
define Schalter_Schlafzimmer CUL_HM 19CD2A
set <HMLAN> hmpairserial JEQ0004970
rename Schalter_Schlafzimmer_Btn1 Bett
attr Schalter_Schlafzimmer room Schlafzimmer
attr Bett room Schlafzimmer
save

In deinem Kanal sind einige Attribute, die sowieso nicht genutzt werden, das sie von Device kommen.
Das pairserial tirggert einen autosetup, der alles noetigen eintraegt.
Achtung, wenn du die Kanale (also schalter) schon definiert hast, werden die nicht ueberschriegen, nur die relevanten Daten im device.


define Schalter_Schlafzimmer_virtual CUL_HM 123456
attr Schalter_Schlafzimmer_virtual hmClass receiver
attr Schalter_Schlafzimmer_virtual subType virtual
attr Schalter_Schlafzimmer_virtual alias Schalter Bett (virtuell)

warum hmClass receiver?  Lass mal die automatik machen.Es gibt keinen Grund, die system attribute von Hand zu setzen, kann ich nicht empfehlen
define Schalter_Schlafzimmer_virtual CUL_HM 123456
set
Schalter_Schlafzimmer_virtual 2
rename
Schalter_Schlafzimmer_virtual_Btn1 BettBtn

Anschließend habe ich

set  Schalter_Schlafzimmer_Btn1 devicepair 0 Schalter_Schlafzimmer_virtual_Btn_01 single

Kannst du mir die aktuellen readings schicken? Namen einsetzen, wir du es nach einem eventuellen Rename hast.
list Schalter_Schlafzimmer_virtual
list Schalter_Schlafzimmer_virtual_Btn1
list Schalter_Schlafzimmer
list Schalter_Schlafzimmer_Btn1

Noch eins:
sind alle kommandos an deinen physikalischen Schalter rausgegangen? Der reagiert warscheinlich nur, wann man anlernen drueckt (leider). Sind also nach dem devicepair noch kommands pending? Schau mal die Attribute durch.

Gruss
Martin





Markus Bloch

unread,
Nov 13, 2012, 4:55:56 AM11/13/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Mach ich ;-)

vielen Dank schonmal

Gruß
Markus

Markus Bloch

unread,
Nov 13, 2012, 2:50:27 PM11/13/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,

ich hab mal deinen Rat befolgt. Nun habe ich im FHEM die Kanäle untereinander verbinden können. Wenn ich nun den Schalter betätige kommt bei beiden Kanälen eine Rote Quittierung am Schalter.

Was meinst du?

Vielen Dank

Gruß
Markus
fhem_list_physikalischer_schalter.txt
fhem_list_vrtuelles_device.txt

Martin

unread,
Nov 14, 2012, 1:49:44 AM11/14/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Markus,

mal sehen, was schief gelaufen ist

1) peerList   Schalter_Schlafzimmer_physikalisch_chn:00,
Du hast mit Kanal 00 gepairt. Das ist nicht gut, die Kanaele fangen mit 01 an, 00 ist was device.
==> was pairing sollte heissen
set Schalter_Schlafzimmer_virtuell_Btn1 devicepair 0 Schalter_Schlafzimmer_physikalisch_Btn1 single set

danach sollte (gekuerzt ) im virtuellen schalter stehen
   NAME       Schalter_Schlafzimmer_virtuell_Btn1
   peerList   Schalter_Schlafzimmer_physikalisch_Btn1,
   
2) das pairing deines Physikalischen Schalters ist ok.

Evtl war dies schon das Problem. Wenn nicht bitte folgende Traces

>attr LANCUL hmProtocolEvents 3
>list Schalter_Schlafzimmer_physikalisch_Btn1
>list Schalter_Schlafzimmer_virtuell_Btn1
=> schalter betaetigen
Logs schicken

Gruss
Martin

Markus Bloch

unread,
Nov 14, 2012, 1:58:57 PM11/14/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,

der genannte Befehl funktioniert so leider nicht:

set Schalter_Schlafzimmer_virtuell_Btn1 devicepair 0 Schalter_Schlafzimmer_physikalisch_Btn1 single set

Unknown argument devicepair, choose one of actiondetect getConfig getRegRaw getdevicepair getpair pair raw regRaw regSet reset sign statusRequest unpair virtual

auch umgekehrt geht das nicht, da der Befehl "devicepair" nur auf dem richtigen HM-Device verfügbar ist (also Schalter_Schlafzimmer_virtuell und Schalter_Schlafzimmer_physikalisch). Daher habe ich das immer mit folgendem Befehl gemacht:

set Schalter_Schlafzimmer_virtuell devicepair 1  Schalter_Schlafzimmer_physikalisch_Btn1 single set
set Schalter_Schlafzimmer_virtuell devicepair 2  Schalter_Schlafzimmer_physikalisch_Btn2 single set

set Schalter_Schlafzimmer_physikalisch devicepair 1  Schalter_Schlafzimmer_virtuell_Btn1 single set
set Schalter_Schlafzimmer_physikalisch devicepair 2  Schalter_Schlafzimmer_virtuell_Btn2 single set


Hier die Listen:


>list Schalter_Schlafzimmer_physikalisch_Btn1
Internals:
   DEF        19CD2A01
   IODev      LANCUL
   NAME       Schalter_Schlafzimmer_physikalisch_Btn1
   NR         157
   STATE      Short (to Schalter_Schlafzimmer_virtuell)
   TYPE       CUL_HM
   Readings:
     2012-11-14 19:38:54   RegL_01:          04:10 08:00 09:00 00:00
     2012-11-14 19:38:55   RegL_04:Schalter_Schlafzimmer_virtuell_Btn1   01:00 00:00
     2012-11-14 19:38:55   peerList        Schalter_Schlafzimmer_virtuell_Btn1,
   Helper:
     Shadowreg:
       RegL_04:    01:00
Attributes:
   chanNo     01
   device     Schalter_Schlafzimmer_physikalisch
   peerIds    12345601,
   peerList   Schalter_Schlafzimmer_virtuell_Btn1,
   room       Schlafzimmer

>list Schalter_Schlafzimmer_virtuell_Btn1
Internals:
   DEF        12345601
   IODev      LANCUL
   NAME       Schalter_Schlafzimmer_virtuell_Btn1
   NR         272
   STATE      ???
   TYPE       CUL_HM
   Readings:
     Peerlist:
       VAL        
Attributes:
   chanNo     01
   device     Schalter_Schlafzimmer_virtuell
   model      virtual_2
   room       CUL_HM


Logfile (Auszug):


Button 1

2012.11.14 19:47:28 1: HMLAN_Parse: LANCUL S:E19CD2A   stat:0000 t:0093D00B d:FF r:FFC3m:6CA44019CD2A1234560155
2012.11.14 19:47:28 5: LANCUL dispatch A0B6CA44019CD2A1234560155
2012.11.14 19:47:28 1: RCV L:0B N:6C F:A4 CMD:40 SRC:Schalter_Schlafzimmer_physikalisch DST:Schalter_Schlafzimmer_virtuell 0155 (REMOTE BUTTON:1 LONG:0 LOWBAT:0 COUNTER:0x55) (,BCAST,BIDI,RPTEN)
2012.11.14 19:47:28 1: HMLAN_Parse: LANCUL S:E19CD2A   stat:0000 t:0093D112 d:FF r:FFC1m:6CA04019CD2A1234560155
2012.11.14 19:47:28 5: LANCUL dispatch A0B6CA04019CD2A1234560155
2012.11.14 19:47:28 4: CUL_HM Schalter_Schlafzimmer_physikalisch dup mesg
2012.11.14 19:47:28 1: HMLAN_Parse: LANCUL S:E19CD2A   stat:0000 t:0093D218 d:FF r:FFC2m:6CA04019CD2A1234560155
2012.11.14 19:47:28 5: LANCUL dispatch A0B6CA04019CD2A1234560155
2012.11.14 19:47:28 4: CUL_HM Schalter_Schlafzimmer_physikalisch dup mesg



Button 2

2012.11.14 19:47:35 1: HMLAN_Parse: LANCUL S:E19CD2A   stat:0000 t:0093EA9D d:FF r:FFC3m:6DA44019CD2A123456024C
2012.11.14 19:47:35 5: LANCUL dispatch A0B6DA44019CD2A123456024C
2012.11.14 19:47:35 1: RCV L:0B N:6D F:A4 CMD:40 SRC:Schalter_Schlafzimmer_physikalisch DST:Schalter_Schlafzimmer_virtuell 024C (REMOTE BUTTON:2 LONG:0 LOWBAT:0 COUNTER:0x4C) (,BCAST,BIDI,RPTEN)
2012.11.14 19:47:35 1: HMLAN_Parse: LANCUL S:E19CD2A   stat:0000 t:0093EBA4 d:FF r:FFC2m:6DA04019CD2A123456024C
2012.11.14 19:47:35 5: LANCUL dispatch A0B6DA04019CD2A123456024C
2012.11.14 19:47:35 4: CUL_HM Schalter_Schlafzimmer_physikalisch dup mesg
2012.11.14 19:47:35 1: HMLAN_Parse: LANCUL S:E19CD2A   stat:0000 t:0093ECAA d:FF r:FFC3m:6DA04019CD2A123456024C
2012.11.14 19:47:35 5: LANCUL dispatch A0B6DA04019CD2A123456024C
2012.11.14 19:47:35 4: CUL_HM Schalter_Schlafzimmer_physikalisch dup mesg


Vielen Dank

Gruß
Markus

Martin

unread,
Nov 15, 2012, 3:10:06 AM11/15/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Markus


der genannte Befehl funktioniert so leider nicht:

set Schalter_Schlafzimmer_virtuell_Btn1 devicepair 0 Schalter_Schlafzimmer_physikalisch_Btn1 single set

Unknown argument devicepair, choose one of actiondetect getConfig getRegRaw getdevicepair getpair pair raw regRaw regSet reset sign statusRequest unpair virtual

hmm. Dein 'device'  Schalter_Schlafzimmer_virtuell sollte ein Attribut 'subType virtual' haben - korrekt?



auch umgekehrt geht das nicht, da der Befehl "devicepair" nur auf dem richtigen HM-Device verfügbar ist
stimmt so nicht. Der Befehl auf vielen 'sendern' und deren Kanaelen verfuegbar.
Du musst immer
set <button_channel> devicepair 0 <Aktorchannel> ...
angeben. oder
set <button_device> devicepair <btnNo> <Aktorchannel> ...

 
(also Schalter_Schlafzimmer_virtuell und Schalter_Schlafzimmer_physikalisch). Daher habe ich das immer mit folgendem Befehl gemacht:

set Schalter_Schlafzimmer_virtuell devicepair 1  Schalter_Schlafzimmer_physikalisch_Btn1 single set
set Schalter_Schlafzimmer_virtuell devicepair 2  Schalter_Schlafzimmer_physikalisch_Btn2 single set
sollte nicht funktionieren, da dein 'physikalischer Button'  nicht als Aktor gepairt werden kann.

set Schalter_Schlafzimmer_physikalisch devicepair 1  Schalter_Schlafzimmer_virtuell_Btn1 single set
set Schalter_Schlafzimmer_physikalisch devicepair 2  Schalter_Schlafzimmer_virtuell_Btn2 single set
 Das sollte funktionieren. Virtuelle Devices koennen beides.

Das pairing hat nicht funktioniert: die peerlist des virtual channels ist leer. Da sollte auch peerIDs stehen.
Du kannst es von Hand nachtragen mit
attr Schalter_Schlafzimmer_virtuell_Btn1 peerIDs 19CD2A01,

Gross-schreibung beachten, komman nicht vergesssen.

Das mit dem devicepair schaue ich mir noch an. Das erste Kommando muss auch gehen. Ich verwende immer nur die Namen der Kanaele. Werde ich korrigieren. Bitte mal die Daten des virtual device posten -also

list Schalter_Schlafzimmer_virtuell

Danke
Martin

Markus Bloch

unread,
Nov 16, 2012, 12:30:23 PM11/16/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com

hmm. Dein 'device'  Schalter_Schlafzimmer_virtuell sollte ein Attribut 'subType virtual' haben - korrekt?

Ja das hat er, die virtuellen Sub-Devices (Btn1, Btn2)  allerdings nicht, da ist der SubType virtual nicht vorhanden.

 
Das pairing hat nicht funktioniert: die peerlist des virtual channels ist leer. Da sollte auch peerIDs stehen.
Du kannst es von Hand nachtragen mit
attr Schalter_Schlafzimmer_virtuell_Btn1 peerIDs 19CD2A01,


Hab ich gemacht, jetzt erscheint in beiden virtuellen Btn-Devices zumindest schonmal Readings.

Internals:
   DEF        12345601
   IODev      LANCUL
   NAME       Schalter_Schlafzimmer_virtuell_Btn1
   NR         278
   STATE      ???
   TYPE       CUL_HM
   Readings:
     2012-11-16 18:23:22   CommandAccepted yes
     2012-11-16 18:23:22   virtActState    C8
     2012-11-16 18:23:22   virtActTrigger  Schalter_Schlafzimmer_physikalisch
Attributes:
   chanNo     01
   device     Schalter_Schlafzimmer_virtuell
   model      virtual_2
   peerIDs    19CD2A01,
   room       CUL_HM


Allerdings ist die LED nachwievor rot. Auf der HMLAN Schnittstelle passiert aber schonmal mehr. Im Anhang findest du einen Logauszug
 

Das mit dem devicepair schaue ich mir noch an. Das erste Kommando muss auch gehen. Ich verwende immer nur die Namen der Kanaele. Werde ich korrigieren. Bitte mal die Daten des virtual device posten -also

list Schalter_Schlafzimmer_virtuell


Internals:
   DEF        123456
   IODev      LANCUL
   LANCUL_MSGCNT 14
   LANCUL_RAWMSG R0A429FD7,0002,00000000,FF,7FFF,F3800212345619CD2A01020000
   LANCUL_RSSI -32769
   LANCUL_TIME 2012-11-16 18:27:16
   LASTIODev  LANCUL
   MSGCNT     14
   NAME       Schalter_Schlafzimmer_virtuell
   NR         163
   STATE      MISSING ACK
   TYPE       CUL_HM
   lastMsg    No:F3 - t:02 s:123456 d:19CD2A 01020000
   Readings:
     2012-11-14 20:56:57   RegL_00:        0
     Ackfrom schalter_schlafzimmer_virtuell:
       TIME       2012-11-16 18:27:16
       VAL        
   Helper:
     rxType     1
     Respwait:
Attributes:
   channel_01 Schalter_Schlafzimmer_virtuell_Btn1
   channel_02 Schalter_Schlafzimmer_virtuell_Btn2
   hmClass    sender
   model      virtual_2
   protLastRcv 2012-11-16 18:27:16
   room       Schlafzimmer
   subType    virtual
 

Ich danke Dir.

Viele Grüße

Markus

fhem_lancul_log_2.txt

Martin

unread,
Nov 16, 2012, 6:40:00 PM11/16/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com


Am Freitag, 16. November 2012 18:30:23 UTC+1 schrieb Markus Bloch:

hmm. Dein 'device'  Schalter_Schlafzimmer_virtuell sollte ein Attribut 'subType virtual' haben - korrekt?

Ja das hat er, die virtuellen Sub-Devices (Btn1, Btn2)  allerdings nicht, da ist der SubType virtual nicht vorhanden.
das ist schlecht. Dann geht es nicht. Wie hast du dies hinbekommen?  Der wird automatisch gesetzt.

 
Das pairing hat nicht funktioniert: die peerlist des virtual channels ist leer. Da sollte auch peerIDs stehen.
Du kannst es von Hand nachtragen mit
attr Schalter_Schlafzimmer_virtuell_Btn1 peerIDs 19CD2A01,


Hab ich gemacht, jetzt erscheint in beiden virtuellen Btn-Devices zumindest schonmal Readings.
Das hiesst die Trigger werden empfangen und verarbeitet. gut

Allerdings ist die LED nachwievor rot. Auf der HMLAN Schnittstelle passiert aber schonmal mehr. Im Anhang findest du einen Logauszug
 gesendet wird also alles korrekt.
Zum Timing messen das naechste mal bitte mseglog in global einschalten.
Moeglich ist, dass wir zu schnell sind. In der neusten Version von heute Nachmittag ist eine "bremse" fuer HMLAN drin. Die solltest du einmal probieren.

 Gruss

Martin

Markus Bloch

unread,
Nov 17, 2012, 5:05:18 AM11/17/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,

mit Rev 2130 kommt folgende Fehlermeldung von Perl direkt nach dem Start via init-Skript:

fhem.pl: readingsUpdate(,state,T: 18.2 H: 54): you must call readingsBeginUpdate first. at /usr/bin/fhem.pl line 2926.

FHEM ist dannach wieder beendet, kein einziger unauffälliger Eintrag im Log.

Ja das hat er, die virtuellen Sub-Devices (Btn1, Btn2)  allerdings nicht, da ist der SubType virtual nicht vorhanden.
das ist schlecht. Dann geht es nicht. Wie hast du dies hinbekommen?  Der wird automatisch gesetzt. 

Ich habe die virtuellen Schalter normal mit set  Schalter_Schlafzimmer_virtuell virtual 2 erzeugt. Nix spezielles eigentlich. Im Anhang ein Screenshot. (erzeugt mit Rev 2110)

Vielen Dank

Gruß
Markus


Zwischenablage01.png

Martin

unread,
Nov 17, 2012, 1:45:24 PM11/17/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Markus


mit Rev 2130 kommt folgende Fehlermeldung von Perl direkt nach dem Start via init-Skript
fhem.pl: readingsUpdate(,state,T: 18.2 H: 54): you must call readingsBeginUpdate first. at /usr/bin/fhem.pl line 2926.

 Es werden offensichtlich die Readings eines TC gemeldet.  Du hast sicher einen TC der keinen Channel 01 (Weather) definiert hat?  ein bug von mir. Wenn du einen weather-channel definierts sollte es funktionieren - nach dem naechsten Update (morgen?) auch ohne.

FHEM ist dannach wieder beendet, kein einziger unauffälliger Eintrag im Log.

die Reaktion von  fhem.pl ist m.E.. etwas heftig, hier komplett abzubrechen... kann ich nichts machen
 
Ja das hat er, die virtuellen Sub-Devices (Btn1, Btn2)  allerdings nicht, da ist der SubType virtual nicht vorhanden.
das ist schlecht. Dann geht es nicht. Wie hast du dies hinbekommen?  Der wird automatisch gesetzt. 

Ich habe die virtuellen Schalter normal mit set  Schalter_Schlafzimmer_virtuell virtual 2 erzeugt. Nix spezielles eigentlich. Im Anhang ein Screenshot. (erzeugt mit Rev 2110)

ich sehe da nur den Schalter (Kanal), nicht das device. 'subtype' wird immer aus dem Device genommen.
Es sollte also im Schalter_Schlafzimmer_virtuell ein subType virtuell existieren - korrekt?

Gruss
Martin

Markus Bloch

unread,
Nov 17, 2012, 4:10:46 PM11/17/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,


 Es werden offensichtlich die Readings eines TC gemeldet.  Du hast sicher einen TC der keinen Channel 01 (Weather) definiert hat?  ein bug von mir. Wenn du einen weather-channel definierts sollte es funktionieren - nach dem naechsten Update (morgen?) auch ohne.

Nein, meine TC's haben keinen Weather-Channel definiert. Was kann man denn damit schönes anstellen? :-/
 

FHEM ist dannach wieder beendet, kein einziger unauffälliger Eintrag im Log.

die Reaktion von  fhem.pl ist m.E.. etwas heftig, hier komplett abzubrechen... kann ich nichts machen 

.....außer nen guten Eindruck ;-) 

 
Ja das hat er, die virtuellen Sub-Devices (Btn1, Btn2)  allerdings nicht, da ist der SubType virtual nicht vorhanden.
das ist schlecht. Dann geht es nicht. Wie hast du dies hinbekommen?  Der wird automatisch gesetzt. 

Ich habe die virtuellen Schalter normal mit set  Schalter_Schlafzimmer_virtuell virtual 2 erzeugt. Nix spezielles eigentlich. Im Anhang ein Screenshot. (erzeugt mit Rev 2110)

ich sehe da nur den Schalter (Kanal), nicht das device. 'subtype' wird immer aus dem Device genommen.
Es sollte also im Schalter_Schlafzimmer_virtuell ein subType virtuell existieren - korrekt?

 Ja das Device Schalter_Schlafzimmer_virtuell hat den SubType virtual gesetzt. Ich werds wohl erst kommendes Wochenende ausprobieren können.

Ich halt dich auf dem laufenden.

Vielen Dank für deine Mühe.

Gruß Markus

 

Markus Bloch

unread,
Nov 18, 2012, 5:03:59 AM11/18/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,

heute früh beim Aufstehen war ich ganz begeister als die LED plötzlich grün wurde von meinem Schalter. Wie du vermutet hattest, lag es am Timing des HMLAN-Moduls. Ich hab nun beide aktuellsten Versionen von HMLAN und CUL_HM und damit funktioniert es zuverlässig.

Jetzt stellt sich mir nur noch eine Frage. Wo genau soll ich nun die Notify und FileLog Devices drauf ansetzen? 

Internals:
   DEF        12345601
   IODev      LANCUL
   NAME       Schalter_Schlafzimmer_virtuell_Btn1
   NR         283
   STATE      ???
   TYPE       CUL_HM
   Readings:
     2012-11-18 10:37:03   CommandAccepted yes
     2012-11-18 10:37:02   virtActState    00
     2012-11-18 10:37:02   virtActTrigger  Schalter_Schlafzimmer_physikalisch_Btn1
   Helper:
Attributes:
   chanNo     01
   device     Schalter_Schlafzimmer_virtuell
   model      virtual_2
   peerIDs    19CD2A01,
   room       CUL_HM

Im virtuellen Device seh ich nur diesen virtActState der bei jedem kurzen Drücken zwischen 00 und C8 wechselt. Ist das so gedacht, dass sich hier kein Status anzeigen lässt, oder dient das Device wirklich nur rein zum ACK senden?

Im physikalischen Device seh ich zurzeit nur die Hälfte.

Internals:
   DEF        19CD2A01
   IODev      LANCUL
   NAME       Schalter_Schlafzimmer_physikalisch_Btn1
   NR         156
   STATE       (to Schalter_Schlafzimmer_virtuell)
   TYPE       CUL_HM
   Readings:
     2012-11-16 18:22:53   RegL_01:        04:10 08:00 09:00 00:00
     2012-11-16 18:22:54   RegL_04:Schalter_Schlafzimmer_virtuell_Btn1 01:00 00:00
     2012-11-16 18:22:53   peerList        Schalter_Schlafzimmer_virtuell_Btn1,
     2012-11-18 10:51:25   state            (to Schalter_Schlafzimmer_virtuell)
   Helper:
Attributes:
   chanNo     01
   device     Schalter_Schlafzimmer_physikalisch
   model      HM-PB-2-WM55
   room       Schlafzimmer




Internals:
   BNO        145
   BNOCNT     6
   DEF        19CD2A
   IODev      LANCUL
   LANCUL_MSGCNT 49
   LANCUL_RAWMSG E19CD2A,0000,057C2382,FF,FFC1,4BA44019CD2A123456028F
   LANCUL_RSSI -63
   LANCUL_TIME 2012-11-18 11:02:35
   LASTIODev  LANCUL
   MSGCNT     49
   NAME       Schalter_Schlafzimmer_physikalisch
   NR         154
   STATE      Schalter_Schlafzimmer_physikalisch_Btn2 Short (to Schalter_Schlafzimmer_virtuell)
   TYPE       CUL_HM
   lastMsg    No:4B - t:40 s:19CD2A d:123456 028F
   Readings:
     2012-11-14 19:54:29   CommandAccepted yes
     2012-11-15 00:09:13   RegL_00:        0
     2012-11-18 10:36:34   battery         ok
     2012-11-15 00:10:59   noReceiver      src:19CD2A (A440) 0264
     2012-11-18 11:02:35   state           Schalter_Schlafzimmer_physikalisch_Btn2 Short (to Schalter_Schlafzimmer_virtuell)
   Helper:
     addVal     2
     mId        006B
     rxType     12
     Respwait:
Attributes:
   channel_01 Schalter_Schlafzimmer_physikalisch_Btn1
   channel_02 Schalter_Schlafzimmer_physikalisch_Btn2
   devInfo    020000
   firmware   1.0
   hmClass    sender
   model      HM-PB-2-WM55
   protLastRcv 2012-11-18 11:02:35
   room       Schlafzimmer
   serialNr   JEQ0004970
   subType    remote


Bei kurzen Tastendrücken wird das ACK erfolgreich gesendet, nur bei langen Drücken bleibt es noch rot.

Viele Grüße

Markus


Martin

unread,
Nov 18, 2012, 1:45:20 PM11/18/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Markus,

Jetzt stellt sich mir nur noch eine Frage. Wo genau soll ich nun die Notify und FileLog Devices drauf ansetzen? 

Im virtuellen Device seh ich nur diesen virtActState der bei jedem kurzen Drücken zwischen 00 und C8 wechselt. Ist das so gedacht, dass sich hier kein Status anzeigen lässt, oder dient das Device wirklich nur rein zum ACK senden?
hmmm... .
a) korrekt das virtuelle Device toggelt zwischen 0 und 100%, oder auch 'on' und 'off'. (0xc8 = 200 =^ 100% fuer die meisten HM deivces)
b) ich koennte es auf ON und OFF ummappen (du auch, mit eventmap). On und Off haben bislang nichts zu bedeuten und toggeln nur, wiedu bemerkt hast.


Im physikalischen Device seh ich zurzeit nur die Hälfte.
was meinst du mit "der haelfte"? was fehlt?


Bei kurzen Tastendrücken wird das ACK erfolgreich gesendet, nur bei langen Drücken bleibt es noch rot.
kann sein. schaue ich mir einmal an. Kannst du  einen Trace ziehen, vom langen Tastendruck?
Gruss
Martin

Markus Bloch

unread,
Nov 18, 2012, 2:04:41 PM11/18/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,


Jetzt stellt sich mir nur noch eine Frage. Wo genau soll ich nun die Notify und FileLog Devices drauf ansetzen? 

Im virtuellen Device seh ich nur diesen virtActState der bei jedem kurzen Drücken zwischen 00 und C8 wechselt. Ist das so gedacht, dass sich hier kein Status anzeigen lässt, oder dient das Device wirklich nur rein zum ACK senden?
hmmm... .
a) korrekt das virtuelle Device toggelt zwischen 0 und 100%, oder auch 'on' und 'off'. (0xc8 = 200 =^ 100% fuer die meisten HM deivces)
b) ich koennte es auf ON und OFF ummappen (du auch, mit eventmap). On und Off haben bislang nichts zu bedeuten und toggeln nur, wiedu bemerkt hast.

Bei mir toggeln bei den virtuellen Buttons bisher nur diese beiden Readings. Der State bleibt unverändert bei "???".

Internals: DEF 12345601 IODev LANCUL NAME Schalter_Schlafzimmer_
virtuell_Btn1 NR 283 STATE ??? TYPE CUL_HM Readings: 2012-11-18 10:37:03 CommandAccepted yes 2012-11-18 10:37:02 virtActState 00 2012-11-18 10:37:02 virtActTrigger Schalter_Schlafzimmer_physikalisch_Btn1

Hier währe es eben ganz gut, wenn man als Status entweder "ON/OFF" macht, oder eben auch im Hinblick auf den langen Tastendruck (ShortPressed/LongPressed, etc.) eine ähnliche Status-Syntax wählt


Im physikalischen Device seh ich zurzeit nur die Hälfte.
was meinst du mit "der haelfte"? was fehlt?

Naja vorher stand da ja wenigstens noch drinne "OffShort (to ......)". Jetzt fehlt das Event ja gänzlich und es steht nur noch " (to ....." als State drinn. Irgendwie hat es da das Button-Event verschluckt.

Bin
DEF 19CD2A01 IODev LANCUL NAME Schalter_Schlafzimmer_physikalisch_Btn1
NR 156 STATE (to Schalter_Schlafzimmer_virtuell) TYPE CUL_HM

Im physikalischen Device steht das eigentlich gut drinne:

   NAME       Schalter_Schlafzimmer_physikalisch
   NR         154
   STATE      Schalter_Schlafzimmer_physikalisch_Btn2 Short (to Schalter_Schlafzimmer_virtuell)


 
Bei kurzen Tastendrücken wird das ACK erfolgreich gesendet, nur bei langen Drücken bleibt es noch rot.
kann sein. schaue ich mir einmal an. Kannst du  einen Trace ziehen, vom langen Tastendruck?
 
Würde ich liebend gerne machen, bin nur leider bereits in Stuttgart (bis zum Freitag Abend). Daher kann ich dir den Trace erst am Wochenende liefern. Werd ich dir aber schicken, sobald ich wieder zuhause bin.

Viele Grüße

Markus

Martin

unread,
Nov 18, 2012, 4:19:20 PM11/18/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Markus


Bei mir toggeln bei den virtuellen Buttons bisher nur diese beiden Readings. Der State bleibt unverändert bei "???".
Den State habe ich dem "button" des virtual zugeschrieben, nicht dem Aktor . Somit aendert der sich auch nicht




Hier währe es eben ganz gut, wenn man als Status entweder "ON/OFF" macht, oder eben auch im Hinblick auf den langen Tastendruck (ShortPressed/LongPressed, etc.) eine ähnliche Status-Syntax wählt
DDenke ich einmal nach. Der state gehoert dem 'Sender' des virtBtn. Aber den Aktorstate kann ich on/off nennen


Im physikalischen Device seh ich zurzeit nur die Hälfte.
was meinst du mit "der haelfte"? was fehlt?

Naja vorher stand da ja wenigstens noch drinne "OffShort (to ......)". Jetzt fehlt das Event ja gänzlich und es steht nur noch " (to ....." als State drinn. Irgendwie hat es da das Button-Event verschluckt.

 
Im physikalischen Device steht das eigentlich gut drinne:
Das liegt daran, dass der Virtuelle schalter nicht 'sende' sondern empfaengt. 
Long und short stehen immer beim Sender.


einbauen beim Empfaenger koennte man, dass eine Reaktion bei kurz und eine andere bei Lang ausgeloest wird. Sinnvoll waere,die zeit des langen Tastendrucks zu messen.


 Gruss
Martin
Message has been deleted
Message has been deleted

Markus Bloch

unread,
Nov 24, 2012, 6:38:50 AM11/24/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Ich weis nicht, warum die beiden Nachrichten gelöscht worden. Ich hoffe du hast die Traces per Mail erhalten.

Viele Grüße

Markus

Martin

unread,
Nov 24, 2012, 10:05:13 AM11/24/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
nein, habe ich nicht. kannst du noch einmal probieren?

Markus Bloch

unread,
Nov 24, 2012, 10:07:14 AM11/24/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Da sind sie. Ich hatte die ursprünglichen Nachrichten per Mail bekommen. Ein paar Minuten später waren die plötzlich gelöscht. :-/

Viele Grüße

Markus
schlafzimmer-schalter-long.txt
schlafzimmer-schalter-short.txt

Martin

unread,
Nov 26, 2012, 5:16:14 AM11/26/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Markus,

Fehler erkannt. War nur bei long-press - richtig?
Kommt in der naechsten Version.
Es wird auch 2 neue eintraegen geben:
virtActTrigType:[long|short|long_Release]
virtActTrigNo:<number> # identifiziert die Nummer des triggers
virtActTrigRpt:<num>  # anzahl der wiederholungen des gleichen triggers
Gruss
Martin

Markus Bloch

unread,
Nov 26, 2012, 4:46:45 PM11/26/12
to fhem-de...@googlegroups.com, notauss...@googlemail.com
Hallo Martin,

ich danke dir vielmals für deine Hilfe.

Viele Grüße

Markus
Reply all
Reply to author
Forward
0 new messages