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

wires.io

Besser - oder ist rudolf immer noch das Problem? Habe das .deb Package von der FHEM Startseite, also nix ausgesucht.

# $Id: fhem.pl 9079 2015-08-16 10:43:51Z rudolfkoenig $
# $Id: 01_FHEMWEB.pm 9079 2015-08-16 10:43:51Z rudolfkoenig $
# $Id: 92_FileLog.pm 9065 2015-08-13 18:09:42Z rudolfkoenig $
# $Id: 99_SUNRISE_EL.pm 6765 2014-10-14 18:24:29Z rudolfkoenig $
# $Id: 99_Utils.pm 7914 2015-02-08 11:14:10Z rudolfkoenig $
# $Id: 98_autocreate.pm 8758 2015-06-16 17:12:39Z rudolfkoenig $
# $Id: 91_eventTypes.pm 8725 2015-06-10 09:50:06Z rudolfkoenig $
# $Id: 98_telnet.pm 8952 2015-07-13 12:30:26Z rudolfkoenig $

frank

wenn du momentan keine homematic devices hast, ist das jetzt ok. ansonsten sollten 00_hmlan (für hmusb) und 10_cul_hm (für deine schalter) bei version auftauchen. eben alle module, die genutzt werden.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

wires.io

Das Update hat leider nur wenig gebracht. Die "-I" Option ist zwar nicht mehr nötig und auch die Schalter werden schneller gefunden, allerdings gehen die "getConfig" Kommandos nicht durch, so dass die Schalter nicht in FHEM verwendbar bzw. konfigurierbar sind.

wires.io

Bekomme solche Fehlermeldungen - bei mir ist total der Wurm drin.
2015.08.20 21:49:35 2: CUL_HM Unknown device HM_123457 is now defined
2015.08.20 21:49:35 2: autocreate: define HM_123457 CUL_HM 123457
2015.08.20 21:49:35 2: autocreate: define FileLog_HM_123457 FileLog ./log/HM_123457-%Y.log HM_123457
2015.08.20 21:49:35 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/10_CUL_HM.pm line 5394.
2015.08.20 21:49:35 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_CUL_HM.pm line 2849.
2015.08.20 21:49:35 3: CUL_HM pair: HM_123457 , model unknown serialNr
2015.08.20 21:49:39 3: CUL_HM set HM_123457 getConfig
2015.08.20 21:49:51 3: hmusb: Unknown code A1496805E12345623C19D0000000000000000000000::-48:hmusb, help me!
2015.08.20 21:50:05 3: CUL_HM set HM_123457 getConfig
2015.08.20 21:50:10 3: hmusb: Unknown code A1497805E12345623C19D0000000000000000000000::-48:hmusb, help me!

frank

Zitatallerdings gehen die "getConfig" Kommandos nicht durch, so dass die Schalter nicht in FHEM verwendbar bzw. konfigurierbar sind.
mir scheint die aktuelle cul_hm.pm macht auch bei mir probleme. nimm eine ältere von vor 1 woche ca.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

wires.io

Welche Revision hast Du? Rev. "# $Id: 10_CUL_HM.pm 8976 2015-07-26 06:22:16Z martinp876 $" funktioniert leider auch nicht.

frank

mein fhem ist vom wochenende und funktioniert auch nicht. getconfig ist scheinbar gestört.
geh doch mal suchen, bei welcher version es noch ging. es könnte auch an hmconfig.pm liegen.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

frank

Zitat von: wires.io am 20 August 2015, 12:28:17
Das Update hat leider nur wenig gebracht. Die "-I" Option ist zwar nicht mehr nötig und auch die Schalter werden schneller gefunden, allerdings gehen die "getConfig" Kommandos nicht durch, so dass die Schalter nicht in FHEM verwendbar bzw. konfigurierbar sind.
bei mir geht es jetzt wieder mit aktuellem fhem über:
reload 99_Asksin_HM_LC_Sw1PBU_FM_CustomFW.pm
und danach am schalter den configtaster 5s drücken. also anlernmessage generieren.
jetzt hat das device wohl wieder alle infos und getconfig funktioniert.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

frank

ich habe die 99_Asksin_HM_LC_Sw1PBU_FM_CustomFW.pm für den schalter jetzt ein wenig angepasst, sodass sie, wie die entsprechende datei vom universalsensor, von 10_cul_hm an der (fast) richtigen stelle geladen werden kann. ausserdem muss der name mit "HMConfig_" beginnen, so wie die datei im anhang. bei benutzung die alte datei aus /fhem/FHEM/ entfernen.

damit der aufruf noch besser funktioniert, so dass auch wieder model und subtype in den listen auftauchen, den aufruf der funktion "CUL_HM_initRegHash()" von zeile 207 nach zeile 179 in 10_cul_hm verschieben. hier im code von ganz unten nach ganz oben. vielleicht sagt martin ja noch etwas dazu, siehe http://forum.fhem.de/index.php/topic,40315.msg326239.html#msg326239. im augenblick funktioniert es bei mir tadellos.

  CUL_HM_initRegHash();
  my @modellist;
  foreach my $model (keys %{$culHmModel}){
    push @modellist,$culHmModel->{$model}{name};
  }
  $hash->{AttrList}  .= " model:"  .join(",", sort @modellist);
  $hash->{AttrList}  .= " subType:".join(",",
               CUL_HM_noDup(map { $culHmModel->{$_}{st} } keys %{$culHmModel}));

  $hash->{prot}{rspPend} = 0;#count Pending responses
  my @statQArr     = ();
  my @statQWuArr   = ();
  my @confQArr     = ();
  my @confQWuArr   = ();
  my @confCheckArr = ();
  my @confUpdt     = ();
  $hash->{helper}{qReqStat}     = \@statQArr;
  $hash->{helper}{qReqStatWu}   = \@statQWuArr;
  $hash->{helper}{qReqConf}     = \@confQArr;
  $hash->{helper}{qReqConfWu}   = \@confQWuArr;
  $hash->{helper}{confCheckArr} = \@confCheckArr;
  $hash->{helper}{confUpdt}     = \@confUpdt;
  $hash->{helper}{cfgCmpl}{init}= 1;# mark entities with complete config
  #statistics
  $hash->{stat}{s}{dummy}=0;
  $hash->{stat}{r}{dummy}=0;
  RemoveInternalTimer("StatCntRfresh");
  InternalTimer(gettimeofday()+3600*20,"CUL_HM_statCntRfresh","StatCntRfresh", 0);

#  CUL_HM_initRegHash();


rückmeldungen sind erwünscht.

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

nccfast

Hallo,
habe gepairt und in meiner fhem.cfg steht (hab ich erweitert um das Model und subType)

define HM_391421 CUL_HM 391421
attr HM_391421 IODev CUL868_HM
attr HM_391421 autoReadReg 4_reqStatus
attr HM_391421 expert 2_full
attr HM_391421 room CUL_HM
attr HM_391421 model HM-LC-Sw1PBU-FM-CustomFW
attr HM_391421 subType remoteAndSwitch


Habe dann Set HM_391421 getConfig gemacht. ich glaub es funktioniert nicht. Mein Log sieht so aus

2015.08.27 06:47:13 3: CUL_HM set HM_391421 getConfig
2015.08.27 06:47:13 4: CUL_send:  CUL868_HMAs 10 A6 A001 F11860 391421 00040000000000
2015.08.27 06:47:13 1: SND L:10 N:A6 F:A0 CMD:01 SRC:F11860 DST:HM_391421 00040000000000 (CONFIG_PARAM_REQ CHANNEL:0x00 PEER_ADDRESS:0x000000 PEER_CHANNEL:0x00 PARAM_LIST:0x00) (,BIDI,RPTEN)
2015.08.27 06:47:13 4: CUL_Parse: CUL868_HM A 18 A6 A010 391421 F11860 02020105000AF10B180C601200000009 -69.5
2015.08.27 06:47:13 1: RCV L:18 N:A6 F:A0 CMD:10 SRC:HM_391421 DST:F11860 02020105000AF10B180C6012000000 (INFO_PARAM_RESPONSE_PAIRS DATA:0x020105000AF10B180C6012000000) (,BIDI,RPTEN)
2015.08.27 06:47:13 4: CUL_send:  CUL868_HMAs 0A A6 8002 F11860 391421 00
2015.08.27 06:47:13 1: SND L:0A N:A6 F:80 CMD:02 SRC:F11860 DST:HM_391421 00 (ACK) (,RPTEN)
2015.08.27 06:47:14 4: CUL_Parse: CUL868_HM A 14 A6 805E 391421 F11860 000000000000000300000009 -69.5
2015.08.27 06:47:14 1: RCV L:14 N:A6 F:80 CMD:5E SRC:HM_391421 DST:F11860 0000000000000003000000 (powerEvntCyc energy:0 power:0 current:3 voltage:0 frequency:50) (,RPTEN)
2015.08.27 06:47:14 1: General  entering with 80,5E,391421,F11860,0000000000000003000000
2015.08.27 06:47:14 1: readingsUpdate(,current,3) missed to call readingsBeginUpdate first.
2015.08.27 06:47:33 4: CUL_Parse: CUL868_HM A 14 A7 805E 391421 F11860 00000000000000010000000E -67
2015.08.27 06:47:33 1: RCV L:14 N:A7 F:80 CMD:5E SRC:HM_391421 DST:F11860 0000000000000001000000 (powerEvntCyc energy:0 power:0 current:1 voltage:0 frequency:50) (,RPTEN)
2015.08.27 06:47:33 1: General  entering with 80,5E,391421,F11860,0000000000000001000000
2015.08.27 06:47:33 1: readingsUpdate(,current,1) missed to call readingsBeginUpdate first.
2015.08.27 06:47:52 4: CUL_Parse: CUL868_HM A 14 A8 805E 391421 F11860 00000000000000010000000A -69
2015.08.27 06:47:52 1: RCV L:14 N:A8 F:80 CMD:5E SRC:HM_391421 DST:F11860 0000000000000001000000 (powerEvntCyc energy:0 power:0 current:1 voltage:0 frequency:50) (,RPTEN)
2015.08.27 06:47:52 1: General  entering with 80,5E,391421,F11860,0000000000000001000000
2015.08.27 06:47:52 1: readingsUpdate(,current,1) missed to call readingsBeginUpdate first.


Kann das jemand interpretieren?

frank

hast du mal dies versucht? http://forum.fhem.de/index.php/topic,18071.msg326473.html#msg326473

manuel model und subtype attribute setzen, sollte man vermeiden.

tipp: du solltest grundsätzlich bei homematic io's das attr hmProtocolEvents abschalten/löschen.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

nccfast

Habs gefunden:
den CUL_HM Stick hab ich mal in ebay gekauft, bevor ich meine CULs selbst zusammengebaut hab. Hab ihn seit dem noch nicht geflasht.
Grad eben hab ich ihn dann geflasht, #define HAS_ASKSIN gesetzt. Siehe da, das autocreate beim pairen funktioniert nun wunderbar. Habs dann abgespeichert.

Sieht nun so aus (heisst Licht_Esszimmer):
list Licht_Esszimmer

Internals:
   CFGFN      /mnt/2/Daten/fhem-5.6/mycfg/Licht.cfg
   CUL868_HM_MSGCNT 13
   CUL868_HM_RAWMSG A1453805E391421F118600000000000000001000000::-66:CUL868_HM
   CUL868_HM_RSSI -66
   CUL868_HM_TIME 2015-08-27 11:34:52
   DEF        391421
   IODev      CUL868_HM
   LASTInputDev CUL868_HM
   MSGCNT     13
   NAME       Licht_Esszimmer
   NR         617
   NTFY_ORDER 50-Licht_Esszimmer
   STATE      Licht_Esszimmer_Btn_01 LongRelease 1-B040- (to Licht_Esszimmer)
   TYPE       CUL_HM
   channel_01 Licht_Esszimmer_Btn_01
   channel_02 Licht_Esszimmer_Btn_02
   channel_03 Licht_Esszimmer_Sw_01
   channel_04 Licht_Esszimmer_Sw_02
   lastMsg    No:53 - t:5E s:391421 d:F11860 0000000000000001000000
   protLastRcv 2015-08-27 11:34:52
   rssi_at_CUL868_HM avg:-65.76 min:-66.5 max:-65.5 lst:-66 cnt:13
   Readings:
     2015-08-27 11:20:35   CommandAccepted yes
     2015-08-27 11:16:16   D-firmware      1.5
     2015-08-27 11:16:16   D-serialNr      KEQ0000001
     2015-08-27 11:19:44   PairedTo        0xF11860
     2015-08-27 11:19:44   R-pairCentral   0xF11860
     2015-08-27 11:19:44   RegL_00:        02:01 05:00 0A:F1 0B:18 0C:60 12:00 00:00
     2015-08-27 11:22:34   battery         ok
     2015-08-27 11:22:34   state           Licht_Esszimmer_Btn_01 LongRelease 1-B040- (to Licht_Esszimmer)
   Helper:
     HM_CMDNR   83
     Io:
       newChn     +391421,00,00,00
       nextSend   1440668092.38952
       prefIO
       rxt        0
       vccu
       p:
         391421
         00
         00
         00
     Mrssi:
       mNo        53
       Io:
         CUL868_HM  -64
     Prt:
       bErr       0
       sProc      0
     Q:
       qReqConf
       qReqStat
     Role:
       dev        1
     Rssi:
       At_cul868_hm:
         avg        -65.7692307692308
         cnt        13
         lst        -66
         max        -65.5
         min        -66.5
Attributes:
   IODev      CUL868_HM
   autoReadReg 4_reqStatus
   expert     2_full
   firmware   1.5
   model      HM-LC-Sw1PBU-FM-CustomFW
   room       Licht
   serialNr   KEQ0000001
   subType    remoteAndSwitch
   webCmd     getConfig:clear msgEvents


Soweit so gut.

Wenn ich aber nun

set Licht_Esszimmer_Btn_01 peerChan 0 Licht_Esszimmer_Sw_01 dual set


kommt "Unknown argument peerChan, choose one of clear getConfig getRegRaw peerBulk regBulk regSet sign"

Ich vermute, dass 99_Asksin_HM_LC_Sw1PBU_FM_CustomFW.pm nicht geladen wird. Weiter oben hab ich beim pairing mal reload 99_Asksin_HM_LC_Sw1PBU_FM_CustomFW gemacht.


Muss man die 10_CUL_HM.pm ändern, damit er 99_Asksin_HM_LC_Sw1PBU_FM_CustomFW.pm lädt? Oder was hab ich übersehen?

Edit:
Ich stelle wieterhinb fest:
Wenn ich fhem neu starte und dann getConfig mache geht es nicht. Wenn ich aber ein reload 99_Asksin_HM_LC_Sw1PBU_FM_CustomFW mache, kommt nach ein paar Sekunden cmds done, getconfig geht also dann.

Wann wird denn die 99_Asksin_HM_LC_Sw1PBU_FM_CustomFW geladen?


frank

FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

nccfast

Aber was?
Man muss doch nur die "99_Asksin_HM_LC_Sw1PBU_FM_CustomFW.pm" ins FHEM Verzeichnis kopieren. Oder ist für fhem nochwas erforderlich?

frank

in den letzten posts war doch die rede davon, dass irgend etwas nicht mehr funktioniert. mit den änderungen aus meinem post (ich habe dir extra ein link gepostet) funktioniert es bei mir wieder.
die 99_asksin-datei gegen die aus meinem post tauschen, und eine kleine änderung in 10_cul_hm.
steht doch alles bereits da. oder was verstehst du nicht?
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html