Neue Firmware für HM_LC_Sw1PBU_FM mit getrenntem Aktor, Taster + Wechselschalter

Begonnen von jab, 29 Dezember 2013, 22:04:10

Vorheriges Thema - Nächstes Thema

jab

Wo meinst du ist das denn falsch? Magst du einen Patch oder github pullrequest schicken? maxChannel = 3 ist doch richtig, da es die peerDb nur für Channel 1-3 gibt nur nicht für Channel 0. Oder übersehe ich da was?

Das mit dem set_on und set_off habe ich auch. Ist mir nicht ganz klar warum es passiert. Der Funk Teil ist korrekt. Er Antwortet genau die gleiche Message wie ein Originalaktor. Vielleicht liegt es an dem Kombiaktor in FHEM.

Folgende Features wären zu checken:
[X] Pairing mit Zentrale per Register.h
[ ] Pairing mit Zentrale via Configbutton
[ ] getConfig Device
[X] Peering von Taster per Register.h
[ ] Peering von Taster per peerChan
[ ] getConfig Taster
[X] Schalten von anderen Geräten per gepeertem Taster
[X] Peering von Aktor per Register.h
[X] Peering von Aktor per peerChan
[ ] getConfig Aktor
[X] set on/set off
[X] toogle
[ ] Anzeige aktueller Aktor Status in FHEM

Stimmt das so? Oder geht noch mehr/weniger?

Gruß,
Jan

Samsi

Hallo Jan,

ich wei nicht ob das richtig oder falsch ist, nur wenn ich es auf max Channels 3 lasse, geht bei mir getGonfig nicht, auf 4 geht es.

Ich habe dann halt mal das Forum hier durchsucht und folgendes gefunden:

http://forum.fhem.de/index.php/topic,14140.msg119606.html#msg119606

} const devDef = {
        2                               // number of channels
        ,{
                 {1,0,0}                // chn:0 type:regDev
                ,{0,6,4}                // chn:1 type:regChan
        }
};

Ich weiss, das ist nicht unbedingt das gleiche wie in der Register.h, deswegen war es ja meine Frage ob es nicht 4 Channels sein müssten. Jedenfalls ging es danach bei mir.

FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

jab

Ah ok das devDef. Checke ich gleich ins git ein. Danke dir!

D.h. ich kann bei getConfig bei Aktor und Taster einen Haken machen?


Gruß,
Jan

Samsi

Also ich habe es jetzt noch mal probiert:

Wenn ich 'number of channels' auf 3 habe, dann geht das getConfig nur auf den beiden Button Channels, während das GetConfig bei dem DeviceChannel (0) = CMDs Error 1 und dem Aktor-Channel (3) NACK  Fehler gibt.

Bei 'number of channels' = 4  kommt auf allen 4 Kanälen CMDs Done wenn ich ein getConfig mache.

Interessanterweise gehen aber die beiden peerings der Taster auch noch wenn number of channels auf 3 steht.

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

jab

Hi,

@Martin:
Zitat von: martinp876 am 31 Dezember 2013, 13:01:02
Kommandos für einen Kanal von einem andren kopieren
{$HMConfig::culHmChanSets{"HM-LC-Sw1PBU-FM-CustomFW01"} = $HMConfig::culHmSubTypeSets{"THSensor"};
{$HMConfig::culHmChanSets{"HM-LC-Sw1PBU-FM-CustomFW02"} = $HMConfig::culHmSubTypeSets{"THSensor"};
{$HMConfig::culHmChanSets{"HM-LC-Sw1PBU-FM-CustomFW03"} = $HMConfig::culHmSubTypeSets{"switch"};


Gibt es einen Grund warum du das chanSet von THSensor und nicht von remote kopiert hast?


@Samsi: Ich habe es eingecheckt und die Checkliste ins git gepackt: https://github.com/jabdoa2/Asksin_HM_LC_Sw1PBU_FM

Gruß,
Jan

martinp876

Hi Jan,

ist fast identisch. Remote weisst noch auf die nutzung mit button-nummern hin, anstelle von Peer-names. Das ist nur bei remotes sinnvoll (und auch da fraglich...)

Gruss Martin


jab

Hi Martin,

ich habe heute mal versucht zu ergründen warum das Icon im Webinterface nicht richtig funktioniert. Leider komme ich dabei nicht so weit. Vielleicht hast du eine Idee. Zuerst habe ich mal einen original Aktor mitgeschrieben als Referenz (HM-LC-SW1-PL2):


2014.01.05 15:50:04 2: CUL_HM set LAMPE_WOHNZIMMER_1 off
2014.01.05 15:50:04 0: HMLAN_Send:  hmusb S:+21D629,00,01,
2014.01.05 15:50:04 0: HMLAN_Send:  hmusb S:S62E1D814 stat:  00 t:00000000 d:01 r:62E1D814 m:3C A011 1AB150 21D629 0201000000
2014.01.05 15:50:04 0: HMLAN_Parse: hmusb R:R62E1D814 stat:0001 t:02CF0181 d:FF r:FFCC     m:3C 8002 21D629 1AB150 0101000030
2014.01.05 15:50:21 0: HMLAN_Send:  hmusb I:K
2014.01.05 15:50:21 0: HMLAN_Parse: hmusb V:03C3 sNo:JEQ0700752 d:1EBCD4 O:1AB150 t:02CF451F IDcnt:0004
2014.01.05 15:50:46 2: CUL_HM set LAMPE_WOHNZIMMER_1 on
2014.01.05 15:50:46 0: HMLAN_Send:  hmusb S:S62E27BB6 stat:  00 t:00000000 d:01 r:62E27BB6 m:3D A011 1AB150 21D629 0201C80000
2014.01.05 15:50:46 0: HMLAN_Parse: hmusb R:R62E27BB6 stat:0001 t:02CFA4FD d:FF r:FFCC     m:3D 8002 21D629 1AB150 0101C80032
2014.01.05 15:50:46 0: HMLAN_Send:  hmusb I:K
2014.01.05 15:50:46 0: HMLAN_Parse: hmusb V:03C3 sNo:JEQ0700752 d:1EBCD4 O:1AB150 t:02CFA6CB IDcnt:0004
2014.01.05 15:51:04 0: HMLAN_Parse: hmusb R:E23568B   stat:0000 t:02CFE9B5 d:FF r:FFCC     m:50 8610 23568B 000000 0A809F0F0921


Dann habe ich mal die CustomFW angeguckt:
2014.01.05 15:48:56 2: CUL_HM set CUL_HM_HM_LC_Sw1PBU_FM_CustomFW_207C41_Sw on
2014.01.05 15:48:56 0: HMLAN_Send:  hmusb S:S62E0CEF1 stat:  00 t:00000000 d:01 r:62E0CEF1 m:3A A011 1AB150 207C41 0203C80000
2014.01.05 15:48:56 0: HMLAN_Parse: hmusb R:R62E0CEF1 stat:0001 t:02CDF7D2 d:FF r:FFE9     m:3A 8002 207C41 1AB150 0103C80000
2014.01.05 15:48:58 0: HMLAN_Parse: hmusb R:E207C41   stat:0000 t:02CDFED7 d:FF r:FFE9     m:01 A410 207C41 1AB150 0603C80000
2014.01.05 15:49:03 0: HMLAN_Send:  hmusb I:K
2014.01.05 15:49:03 0: HMLAN_Parse: hmusb V:03C3 sNo:JEQ0700752 d:1EBCD4 O:1AB150 t:02CE1498 IDcnt:0004
2014.01.05 15:49:27 2: CUL_HM set CUL_HM_HM_LC_Sw1PBU_FM_CustomFW_207C41_Sw off
2014.01.05 15:49:27 0: HMLAN_Send:  hmusb S:S62E149EC stat:  00 t:00000000 d:01 r:62E149EC m:3B A011 1AB150 207C41 0203000000
2014.01.05 15:49:28 0: HMLAN_Parse: hmusb R:R62E149EC stat:0001 t:02CE72CD d:FF r:FFE9     m:3B 8002 207C41 1AB150 0103000000
2014.01.05 15:49:31 0: HMLAN_Send:  hmusb I:K
2014.01.05 15:49:31 0: HMLAN_Parse: hmusb R:E207C41   stat:0000 t:02CE77A8 d:FF r:FFE9     m:02 A410 207C41 1AB150 0603000000
2014.01.05 15:49:31 0: HMLAN_Parse: hmusb R:E2356A0   stat:0000 t:02CE7921 d:FF r:FFBF     m:6D 8610 2356A0 000000 0A80CE0F0021
2014.01.05 15:49:32 0: HMLAN_Parse: hmusb V:03C3 sNo:JEQ0700752 d:1EBCD4 O:1AB150 t:02CE81B5 IDcnt:0004
2014.01.05 15:49:56 0: HMLAN_Send:  hmusb I:K
2014.01.05 15:49:56 0: HMLAN_Parse: hmusb V:03C3 sNo:JEQ0700752 d:1EBCD4 O:1AB150 t:02CEE36D IDcnt:0004
2014.01.05 15:49:58 0: HMLAN_Parse: hmusb R:E1F4C66   stat:0000 t:02CEE901 d:FF r:FFDB     m:3B 8670 1F4C66 000000 00D634


Da ist mir aufgefallen, dass die CustomFW immer noch eine Message 10 Subtype 06 hinterher schickt. Das ist ja an sich nicht falsch aber der original Aktor macht es nicht. Daher habe ich das kurz auskommentiert und habe das ganze wiederholt:


2014.01.05 17:05:03 2: CUL_HM set CUL_HM_HM_LC_Sw1PBU_FM_CustomFW_207C41_Sw on
2014.01.05 17:05:03 0: HMLAN_Send:  hmusb S:S63267DEF stat:  00 t:00000000 d:01 r:63267DEF m:4A A011 1AB150 207C41 0203C80000
2014.01.05 17:05:03 0: HMLAN_Parse: hmusb R:R63267DEF stat:0001 t:02E9B28D d:FF r:FFE5     m:4A 8002 207C41 1AB150 0103C80000
2014.01.05 17:05:06 0: HMLAN_Send:  hmusb I:K
2014.01.05 17:05:06 0: HMLAN_Parse: hmusb V:03C3 sNo:JEQ0700752 d:1EBCD4 O:1AB150 t:02E9BE79 IDcnt:0005
2014.01.05 17:05:25 2: CUL_HM set CUL_HM_HM_LC_Sw1PBU_FM_CustomFW_207C41_Sw off
2014.01.05 17:05:25 0: HMLAN_Send:  hmusb S:S6326D319 stat:  00 t:00000000 d:01 r:6326D319 m:4B A011 1AB150 207C41 0203000000
2014.01.05 17:05:25 0: HMLAN_Parse: hmusb R:R6326D319 stat:0001 t:02EA07B8 d:FF r:FFE5     m:4B 8002 207C41 1AB150 0103000000
2014.01.05 17:05:31 0: HMLAN_Send:  hmusb I:K
2014.01.05 17:05:31 0: HMLAN_Parse: hmusb V:03C3 sNo:JEQ0700752 d:1EBCD4 O:1AB150 t:02EA2027 IDcnt:0005


Leider bleibt FHEM immer im Status set_on bzw set_off. Toggle gibt es nicht als webCMD. Woran kann das liegen?


Gruß,
Jan

martinp876

Hallo Jan,

ich bin nicht ganz sicher, ich denke die status-info ( Message 10 Subtype 06) schickt das device an die zentrale wenn das Kommando nicht von der Zentrale kam - dann sollte sie dies ja wissen.

wenn du im web-interface auf das icon clickst sollte es ein toggle senden. Du kannst über das Attribut webCmd selbst kommandos addieren.
Es ist bekannt, dass - so man auf das webCmd clickt das set_ stehen beleibt. Dem ist nicht so wenn man auf das icon clickt- und longpoll aktiv ist (global entity). Wir habe dies bei FHEMWEB reklamiert - noch ohne Änderung.

wenn du einen refresh machst sollte es aber aktualisiert werden - sonst ist es nicht das bekannte Problem

Gruss Martin

jab

Es bleibt leider dauerhaft auf set_on und set_off. Auch nach refresh. Egal ob ich es mit toggle, on oder off schalte.

Gruß,
Jan

martinp876

oi - das sollte nicht sein.
aber ein ack-staus schickst du schon? nicht nur ein leeres ack?

Samsi

@Martin:

ZitatEs ist bekannt, dass - so man auf das webCmd clickt das set_ stehen beleibt.
Also ich habe noch einen  HM_HM_LC_Sw1PBU_FM mit Original Firmware und wenn ich da im web auf on oder off klicke bleibt bei mir nicht das set_ im state stehen.


Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

jab

@Samsi: Ja bei allen Originalaktoren geht es bei mir auch.

@Martin: Wie kann ich das prüfen? Im Log oben sind doch die ACKs mit drin oder?

gekürzt:

3B A011 1AB150 207C41 0203000000
3B 8002 207C41 1AB150 0103000000


Oder übersehe ich da was?


Gruß,
Jan

martinp876

das soltle eigentlich passen. Ist das das log aus FHEM?
HMLAN logs oder CUL sehen ander aus - kannst du die einschalten?

jab

Das Log kommt direkt aus FHEM. Ich habe HMUSB mit hmland. Das Log habe ich mit:

set hmusb logIDs all,sys

eingeschaltet. Oder reicht das nicht?

Gruß,
Jan

jab

Ich habe das mal weiter verfolgt. Es gibt noch ein anderes Problem mit dem Channel 3. Der Aktor hat Register Liste 1 und 3. Allerdings Fragt FHEM Liste 4 an. Ein getConfig auf der Device sieht (von Device Seite) wie angehängt aus. Irgendeine Idee?

Interessant auch in FHEM: Das Gerät selber zeigt nach dem getConfig CommandAccepted: no und State: NACK. Alle Channels (Button Channel 1,2 und Switch Channel 3) zeigen CommandAccepted: yes.

Irgendwelche Ideen?


Gruß,
Jan