RaspberryMatic und HMCCU Inbetriebnahme Problem

Begonnen von XXL-Wing, 29 Dezember 2018, 21:00:08

Vorheriges Thema - Nächstes Thema

XXL-Wing

Hallo,

nachdme ich mich da jetzt 4 Tage damit herumgespielt habe und auf keinen grünen Zweig komme, bite nicht schlagen für eine vielleicht einfache Frage:

Ich habe einen RPI mit RaspberryMatic bespielt, da ich Homematic IP Komponenten (da gibt es doch einige nette Geräte die es als Homematic nicht gibt) in mein bestehendes FHEM (mit vielen Homematic Classic Komponenten) einbinden möchte.
Der RaspberryMatic läuft soweit brav und die ersten beiden Homematic IP Komponenten sind erfolgreich angelernt und bringen auch Statuswechsel.
Sweot so gut.

Mit der Integration in FHEM klemmt es noch etwas. Ich habe in HMCCU Device angelegt:


Internals:
   CCUNum     1
   Clients    :HMCCUDEV:HMCCUCHN:HMCCURPC:HMCCURPCPROC:
   DEF        192.168.0.15
   NAME       HMIP_RPCCU
   NOTIFYDEV  global,TYPE=(HMCCU|HMCCUDEV|HMCCUCHN)
   NR         442
   NTFY_ORDER 50-HMIP_RPCCU
   RPCState   inactive
   STATE      inactive/Error
   TYPE       HMCCU
   ccuchannels 6
   ccudevices 3
   ccuinterfaces BidCos-RF,HmIP-RF,VirtualDevices
   ccuip      192.168.0.15
   ccustate   active
   ccutype    CCU2/3
   host       192.168.0.15
   version    4.3.008
   READINGS:
     2018-12-29 20:41:57   count_channels  6
     2018-12-29 20:41:57   count_devices   3
     2018-12-29 20:41:57   count_groups    0
     2018-12-29 20:41:57   count_interfaces 2
     2018-12-29 20:41:57   count_programs  0
     2018-12-29 16:04:06   rpcstate        inactive
     2018-12-29 20:42:21   state           Error
   hmccu:
     evtime     0
     evtimeout  0
     rpccount   0
     rpcports   2010
     updatetime 1546112517.65776
     adr:
       HmIP-SRH 0007D8A9954E9A:
         address    0007D8A9954E9A
         addtype    dev
         valid      1
       HmIP-SRH 0007D8A9954E9A:0:
         address    0007D8A9954E9A:0
         addtype    chn
         valid      1
       HmIP-SRH 0007D8A9954E9A:1:
         address    0007D8A9954E9A:1
         addtype    chn
         valid      1
       HmIP-SRH 0007D8A9954EB0:
         address    0007D8A9954EB0
         addtype    dev
         valid      1
       HmIP-SRH 0007D8A9954EB0:0:
         address    0007D8A9954EB0:0
         addtype    chn
         valid      1
       HmIP-SRH 0007D8A9954EB0:1:
         address    0007D8A9954EB0:1
         addtype    chn
         valid      1
       VIR-HUE-GTW HU-Philips hue:
         address    HU-Philips hue
         addtype    dev
         valid      1
       VIR-HUE-GTW HU-Philips hue:0:
         address    HU-Philips hue:0
         addtype    chn
         valid      1
       VIR-HUE-GTW HU-Philips hue:1:
         address    HU-Philips hue:1
         addtype    chn
         valid      1
     ccu:
       chncount   6
       delay      180
       delayed    0
       devcount   3
       gcount     0
       ifcount    2
       prgcount   0
       timeout    1
     dev:
       0007D8A9954E9A:
         addtype    dev
         channels   2
         chndir     0
         interface  HmIP-RF
         name       HmIP-SRH 0007D8A9954E9A
         type       HmIP-SRH
         valid      1
       0007D8A9954E9A:0:
         addtype    chn
         channels   1
         chndir     0
         name       HmIP-SRH 0007D8A9954E9A:0
         valid      1
       0007D8A9954E9A:1:
         addtype    chn
         channels   1
         chndir     1
         name       HmIP-SRH 0007D8A9954E9A:1
         valid      1
       0007D8A9954EB0:
         addtype    dev
         channels   2
         chndir     0
         interface  HmIP-RF
         name       HmIP-SRH 0007D8A9954EB0
         type       HmIP-SRH
         valid      1
       0007D8A9954EB0:0:
         addtype    chn
         channels   1
         chndir     0
         name       HmIP-SRH 0007D8A9954EB0:0
         valid      1
       0007D8A9954EB0:1:
         addtype    chn
         channels   1
         chndir     1
         name       HmIP-SRH 0007D8A9954EB0:1
         valid      1
       HU-Philips hue:
         addtype    dev
         channels   2
         chndir     0
         interface  VirtualDevices
         name       VIR-HUE-GTW HU-Philips hue
         type       VIR-HUE-GTW
         valid      1
       HU-Philips hue:0:
         addtype    chn
         channels   1
         chndir     0
         name       VIR-HUE-GTW HU-Philips hue:0
         valid      1
       HU-Philips hue:1:
         addtype    chn
         channels   1
         chndir     0
         name       VIR-HUE-GTW HU-Philips hue:1
         valid      1
     dp:
       HmIP-SRH:
         ch:
           0:
             CONFIG_PENDING:
               oper       5
               type       2
             DUTY_CYCLE:
               oper       5
               type       2
             ERROR_CODE:
               oper       5
               type       8
             INSTALL_TEST:
               oper       3
               type       2
             LOW_BAT:
               oper       5
               type       2
             OPERATING_VOLTAGE:
               oper       5
               type       4
             OPERATING_VOLTAGE_STATUS:
               oper       5
               type       16
             RSSI_DEVICE:
               oper       5
               type       8
             RSSI_PEER:
               oper       5
               type       8
             SABOTAGE:
               oper       5
               type       2
             UNREACH:
               oper       5
               type       2
             UPDATE_PENDING:
               oper       5
               type       2
           1:
             STATE:
               oper       5
               type       16
         cnt:
           CONFIG_PENDING 1
           DUTY_CYCLE 1
           ERROR_CODE 1
           INSTALL_TEST 1
           LOW_BAT    1
           OPERATING_VOLTAGE 1
           OPERATING_VOLTAGE_STATUS 1
           RSSI_DEVICE 1
           RSSI_PEER  1
           SABOTAGE   1
           STATE      1
           UNREACH    1
           UPDATE_PENDING 1
       VIR-HUE-GTW:
         ch:
           1:
             LEVEL:
               oper       3
               type       4
         cnt:
           LEVEL      1
         spc:
           level      1.LEVEL
     grp:
     ifports:
       2010       HmIP-RF
       9292       VirtualDevices
     interfaces:
       BidCos-RF:
       HmIP-RF:
         device     d_rpcHmIP_RF
         flags      _
         host       192.168.0.15
         manager    null
         port       2010
         prot       http
         state      inactive
         type       A
         url        http://192.168.0.15:2010
       VirtualDevices:
         flags      _
         host       192.168.0.15
         manager    null
         port       9292
         prot       http
         state      inactive
         type       A
         url        http://192.168.0.15:9292/groups
     prg:
     rpc:
Attributes:
   ccudef-readingfilter ^(LOW_?BAT|UNREACH)$
   ccudef-readingname ^(.+\.)?LOW_?BAT$:battery;^(.+\.)?UNREACH$:activity
   ccudef-substitute AES_KEY!(0|false):off,(1|true):on;LOWBAT,LOW_BAT!(0|false):ok,(1|true):low;UNREACH!(0|false):alive,(1|true):dead;MOTION!(0|false):noMotion,(1|true):motion;DIRECTION!0:stop,1:up,2:down,3:undefined;WORKING!0:false,1:true;INHIBIT!(0|false):unlocked,(1|true):locked
   ccuflags   procrpc
   cmdIcon    on:general_an off:general_aus
   eventMap   /rpcserver on:on/rpcserver off:off/
   rpcinterfaces HmIP-RF
   rpcport    2010
   rpcserver  on
   stateFormat rpcstate/state
   verbose    5


Lesen scheint soweit zu funktionieren da er Geräte findet. Er kann aber den RPC Server nicht starten.
Trotz verbose level 5 liefert das log nur:


2018.12.29 20:44:24 0: HMCCU: [HMIP_RPCCU] Definition of some RPC devices failed
2018.12.29 20:44:24 1: HMCCU: [HMIP_RPCCU] HMCCU: HMIP_RPCCU Start of RPC server failed


Das hilft leider nicht allzuviel.
Hat jemand einen Tip was man machen könnte?

danke und lG
Mike

juemuc

#1
Hallo,

hast Du diese Info https://wiki.fhem.de/wiki/HMCCU_Best_Practice gelesen? Damit habe ich alles ohne Probleme installiert.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

XXL-Wing

Hallo,

ja daher kommen fast alle der Settings die schon existieren....
Mag trotzdem nicht :-(

LG
Mike

juemuc

UNd alle Module sind korrekt installiert?

Viele Grüße

Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

XXL-Wing

Hi,

ja soweit ich es schon mehrfach angesehen habe sollte alles da sein.
Vorausgesetzte packages :

root@FHEM-LXC:/opt/fhem# sudo apt-get install -y librpc-xml-perl
Reading package lists... Done
Building dependency tree
Reading state information... Done
librpc-xml-perl is already the newest version (0.80-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@FHEM-LXC:/opt/fhem#


Was mich ein wenig verwundert ist, dass man manche Befehle nicht verwenden kann.
Beispiel:

HMCCU: Unknown argument rpcrpcregister, choose one of var delete execute hmscript cleardefaults defaults importdefaults rpcrpcregister rpcserver ackmessages

wenn man versucht rpcrpcregister all aufzurufen ....

Ein getdevicelst z.B. funktioniert aber --> "Read 3 devices with 6 channels from CCU"
Nur der RPC server will nicht starten und das log ist hier sehr wenig aussagekräftig.

Gibt es eine Möglichkeit da noch aussagekräftigere Logs zu bekommen?

Danke
Mike

zap

#5
Da ist leider ein Schreibfehler im Befehl. Das muss rpcregister heißen. Wenn Du das in der Eingabezeile eingibst, wird es vermutlich funktionieren. Korrigiere ich in der nächsten Version. Hat aber nichts mit dem anderen Problem zu tun.

Wurden denn Devices vom Typ HMCCURPCPROC angelegt und hast Du die Config nach dem ersten Startversuch gespeichert?

Setze das Attribut rpcinterfaces mal auf BidCos-RF,HmIP-RF
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

XXL-Wing

Hi,

danke für die Tips :-)
Ja, ich habe gespeichert und auch mehrfach schon FHEM neu gestartet, hat alles nicht wirklich genutzt.
Wenn ich zusätzlich zum HmIP-RF auch BidCos-RF aktiviere, kommt sofort diese Meldung:
HMCCU: Illegal RPC interface BidCos-RF

Es wurde ein Device angelegt "CCU RPC HmIP-RF" das auf "initialized" steht.

Und ja, mit rpcregister gehts, er sagt dann halt dass der RPC Server nicht läuft.

lG
Mike

zap

Da scheint irgendwas extrem verbogen zu sein, vielleicht sogar auf der CCU.

Starte mal die CCU neu. Wenn die CCU wieder da ist (ggf. testen ob WebUI antwortet), FHEM neu starten.

Danach prüfen, ob während dem Start von FHEM irgendwelche HMCCU Meldungen im Log auftauchen.

Und danach am besten nochmal ein List vom HMCCU Device machen. Hier interessieren v.a. die Internals sowie der Teil ab "Interfaces:"
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

XXL-Wing

Hi,

folgendes ausgeführt:
CCU (RaspberryMatic) neu gestartet. Läuft wider ganz normal, findet alle angelernten Homematic IP Geräte und kann diese steuern, sieht also soweit OK aus.

FHEM neu gestartet. Folgendes im log gefunden:


2018.12.31 15:14:35 1: HMCCU: [HMIP_RPCCU] Initialized version 4.3.008
2018.12.31 15:14:35 1: HMCCU: [HMIP_RPCCU] HMCCU: Initializing device
2018.12.31 15:14:36 1: HMCCU: [HMIP_RPCCU] HMCCU: Read 3 devices with 6 channels from CCU 192.168.0.15
2018.12.31 15:14:36 1: HMCCU: [HMIP_RPCCU] HMCCU: Read 2 interfaces from CCU 192.168.0.15
2018.12.31 15:14:36 1: HMCCU: [HMIP_RPCCU] HMCCU: Read 0 programs from CCU 192.168.0.15
2018.12.31 15:14:36 1: HMCCU: [HMIP_RPCCU] HMCCU: Read 0 virtual groups from CCU 192.168.0.15
2018.12.31 15:14:36 1: HMCCURPCPROC: [d_rpcHmIP_RF] Initialized version 1.3 for interface HmIP-RF with I/O device HMIP_RPCCU
2018.12.31 15:14:36 1: PERL WARNING: Use of uninitialized value $st in exists at ./FHEM/88_HMCCU.pm line 2604, <$fh> line 2761.
2018.12.31 15:14:36 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/88_HMCCU.pm line 2605, <$fh> line 2761.
2018.12.31 15:14:36 1: PERL WARNING: FUIP::getViewClassesSingle() called too early to check prototype at ./FHEM/42_FUIP.pm line 365, <$fh> line 2766.
2018.12.31 15:14:36 1: PERL WARNING: FUIP::_getWhereUsedList() called too early to check prototype at ./FHEM/42_FUIP.pm line 2697, <$fh> line 2766.
2018.12.31 15:14:36 1: PERL WARNING: Subroutine dimensions redefined at ./FHEM/lib/FUIP/View/Title.pm line 29, <$fh> line 2766.


Startversuch des RPS Servers liefert bekannte Fehlermeldung.

List der Devices:


Internals:
   CCUNum     1
   Clients    :HMCCUDEV:HMCCUCHN:HMCCURPC:HMCCURPCPROC:
   DEF        192.168.0.15
   NAME       HMIP_RPCCU
   NOTIFYDEV  global,TYPE=(HMCCU|HMCCUDEV|HMCCUCHN)
   NR         442
   NTFY_ORDER 50-HMIP_RPCCU
   RPCState   inactive
   STATE      inactive/Error
   TYPE       HMCCU
   ccuchannels 6
   ccudevices 3
   ccuinterfaces VirtualDevices,HmIP-RF
   ccuip      192.168.0.15
   ccustate   active
   ccutype    CCU2/3
   host       192.168.0.15
   version    4.3.008
   READINGS:
     2018-12-31 15:14:36   count_channels  6
     2018-12-31 15:14:36   count_devices   3
     2018-12-31 15:14:36   count_groups    0
     2018-12-31 15:14:36   count_interfaces 2
     2018-12-31 15:14:36   count_programs  0
     2018-12-31 15:14:36   rpcstate        inactive
     2018-12-31 15:15:32   state           Error
   hmccu:
     evtime     0
     evtimeout  0
     rpccount   0
     rpcports   2010,9292
     updatetime 0
     adr:
       HmIP-SRH 0007D8A9954E9A:
         address    0007D8A9954E9A
         addtype    dev
         valid      1
       HmIP-SRH 0007D8A9954E9A:0:
         address    0007D8A9954E9A:0
         addtype    chn
         valid      1
       HmIP-SRH 0007D8A9954E9A:1:
         address    0007D8A9954E9A:1
         addtype    chn
         valid      1
       HmIP-SRH 0007D8A9954EB0:
         address    0007D8A9954EB0
         addtype    dev
         valid      1
       HmIP-SRH 0007D8A9954EB0:0:
         address    0007D8A9954EB0:0
         addtype    chn
         valid      1
       HmIP-SRH 0007D8A9954EB0:1:
         address    0007D8A9954EB0:1
         addtype    chn
         valid      1
       VIR-HUE-GTW HU-Philips hue:
         address    HU-Philips hue
         addtype    dev
         valid      1
       VIR-HUE-GTW HU-Philips hue:0:
         address    HU-Philips hue:0
         addtype    chn
         valid      1
       VIR-HUE-GTW HU-Philips hue:1:
         address    HU-Philips hue:1
         addtype    chn
         valid      1
     ccu:
       chncount   6
       delay      180
       delayed    0
       devcount   3
       gcount     0
       ifcount    2
       prgcount   0
       timeout    1
     dev:
       0007D8A9954E9A:
         addtype    dev
         channels   2
         chndir     0
         interface  HmIP-RF
         name       HmIP-SRH 0007D8A9954E9A
         type       HmIP-SRH
         valid      1
       0007D8A9954E9A:0:
         addtype    chn
         channels   1
         chndir     0
         name       HmIP-SRH 0007D8A9954E9A:0
         valid      1
       0007D8A9954E9A:1:
         addtype    chn
         channels   1
         chndir     1
         name       HmIP-SRH 0007D8A9954E9A:1
         valid      1
       0007D8A9954EB0:
         addtype    dev
         channels   2
         chndir     0
         interface  HmIP-RF
         name       HmIP-SRH 0007D8A9954EB0
         type       HmIP-SRH
         valid      1
       0007D8A9954EB0:0:
         addtype    chn
         channels   1
         chndir     0
         name       HmIP-SRH 0007D8A9954EB0:0
         valid      1
       0007D8A9954EB0:1:
         addtype    chn
         channels   1
         chndir     1
         name       HmIP-SRH 0007D8A9954EB0:1
         valid      1
       HU-Philips hue:
         addtype    dev
         channels   2
         chndir     0
         interface  VirtualDevices
         name       VIR-HUE-GTW HU-Philips hue
         type       VIR-HUE-GTW
         valid      1
       HU-Philips hue:0:
         addtype    chn
         channels   1
         chndir     0
         name       VIR-HUE-GTW HU-Philips hue:0
         valid      1
       HU-Philips hue:1:
         addtype    chn
         channels   1
         chndir     0
         name       VIR-HUE-GTW HU-Philips hue:1
         valid      1
     dp:
       HmIP-SRH:
         ch:
           0:
             CONFIG_PENDING:
               oper       5
               type       2
             DUTY_CYCLE:
               oper       5
               type       2
             ERROR_CODE:
               oper       5
               type       8
             INSTALL_TEST:
               oper       3
               type       2
             LOW_BAT:
               oper       5
               type       2
             OPERATING_VOLTAGE:
               oper       5
               type       4
             OPERATING_VOLTAGE_STATUS:
               oper       5
               type       16
             RSSI_DEVICE:
               oper       5
               type       8
             RSSI_PEER:
               oper       5
               type       8
             SABOTAGE:
               oper       5
               type       2
             UNREACH:
               oper       5
               type       2
             UPDATE_PENDING:
               oper       5
               type       2
           1:
             STATE:
               oper       5
               type       16
         cnt:
           CONFIG_PENDING 1
           DUTY_CYCLE 1
           ERROR_CODE 1
           INSTALL_TEST 1
           LOW_BAT    1
           OPERATING_VOLTAGE 1
           OPERATING_VOLTAGE_STATUS 1
           RSSI_DEVICE 1
           RSSI_PEER  1
           SABOTAGE   1
           STATE      1
           UNREACH    1
           UPDATE_PENDING 1
       VIR-HUE-GTW:
         ch:
           1:
             LEVEL:
               oper       3
               type       4
         cnt:
           LEVEL      1
         spc:
           level      1.LEVEL
     grp:
     ifports:
       2010       HmIP-RF
       9292       VirtualDevices
     interfaces:
       BidCos-RF:
       HmIP-RF:
         device     d_rpcHmIP_RF
         flags      _
         host       192.168.0.15
         manager    null
         port       2010
         prot       http
         state      inactive
         type       A
         url        http://192.168.0.15:2010
       VirtualDevices:
         device     d_rpcVirtualDevices
         flags      _
         host       192.168.0.15
         manager    null
         port       9292
         prot       http
         state      inactive
         type       A
         url        http://192.168.0.15:9292/groups
     prg:
     rpc:
Attributes:
   ccudef-readingfilter ^(LOW_?BAT|UNREACH)$
   ccudef-readingname ^(.+\.)?LOW_?BAT$:battery;^(.+\.)?UNREACH$:activity
   ccudef-substitute AES_KEY!(0|false):off,(1|true):on;LOWBAT,LOW_BAT!(0|false):ok,(1|true):low;UNREACH!(0|false):alive,(1|true):dead;MOTION!(0|false):noMotion,(1|true):motion;DIRECTION!0:stop,1:up,2:down,3:undefined;WORKING!0:false,1:true;INHIBIT!(0|false):unlocked,(1|true):locked
   ccuflags   procrpc
   cmdIcon    on:general_an off:general_aus
   eventMap   /rpcserver on:on/rpcserver off:off/
   rpcinterfaces HmIP-RF,VirtualDevices
   rpcport    2010,9292
   rpcserver  on
   stateFormat rpcstate/state
   verbose    5

XXL-Wing

Hallo nochmals,

ich habe im Code ein paar mehr Logs eingebaut. Offenbar geht da beim initialisieren der Devices etwas gröber schief.
Er nimmt immer nur eines der beiden Devices (weil er eines annimmt, das nicht exisitiert), kommt dann auf eine falsche Anzahl und meint deshalb er kann nicht weiter.

Folgendes kann ich beisteuern:

2019.01.02 07:13:46 0: HMCCU: [HMIP_RPCCU] Iterating Interfaces...
2019.01.02 07:13:46 0: HMCCU: [HMIP_RPCCU] Interface BidCos-RF has RPC device , save is 0.
2019.01.02 07:13:46 0: HMCCU: [HMIP_RPCCU] Interface HmIP-RF has RPC device d_rpcHmIP_RF, save is 0.
2019.01.02 07:13:46 0: HMCCU: [HMIP_RPCCU] Interface defined BidCos-RF HmIP-RF, we think the number is 1.
2019.01.02 07:13:46 0: HMCCU: [HMIP_RPCCU] Definition of some RPC devices failed


Er hat 2 Devices, kann aber zum BidCos-RF kein RPC device finden, hat danach dann nur den Zähler auf 1 und steigt aus.

Interessant ist auch, dass er irgendwo glaubt er müsse immer BidCos-RF machen, obwohl es nicht definiert ist.
Im oberen Fall habe ich nur das HmIP-RF definiert, er versucht trotzdem das BidCos-RF zu instanzieren, was aber nicht geht, da die angeschlossene RaspberryMatic kein solches Interface hat, siehe reading:


ccuinterfaces     VirtualDevices,HmIP-RF


Vielleicht hilft das weiter. Ansonsten würde ich den Code weiter mit Logs pflastern und versuchen dem Problem näherzukommen.

lG
Mike

XXL-Wing

Hi nochmal,

so, es ist gelöst.
Es handelt sich um ein Problem im Modul.
Das Modul nimmt an, dass es IMMER ein BidCos-RF gibt, was aber so nicht ist (zumindest nicht wenn man eine RaspberryMatic mit nur einem Homematic-IP Interface verwendet so wie in meinem vorliegenden Fall).
Folgende Codeänderung ist nötig, damit es funktioniert:


sub HMCCU_GetRPCInterfaceList ($)
{
        my ($hash) = @_;
        my $name = $hash->{NAME};
        # my @interfaces = ($HMCCU_RPC_INTERFACE_DEFAULT); --> hier keinen default annehmen, leer initialisieren
        my @interfaces;

        my $ccuflags = HMCCU_GetFlags ($name);

        if (defined ($hash->{hmccu}{rpcports})) {
                foreach my $p (split (',', $hash->{hmccu}{rpcports})) {
                        my $ifname = HMCCU_GetRPCServerInfo ($hash, $p, 'name');
                        next if (!defined ($ifname));
                        my $iftype = HMCCU_GetRPCServerInfo ($hash, $ifname, 'type');
                       # next if ($ifname eq $HMCCU_RPC_INTERFACE_DEFAULT || --> hier auch BidCos-RF aufnehmen wenn vorhanden
                        next if (($iftype eq 'B' && $ccuflags !~ /(extrpc|procrpc)/) ||
                                !exists ($hash->{hmccu}{interfaces}{$ifname}));
                        push (@interfaces, $ifname);
                }
        }

        return @interfaces;
}


Die Änderung sollte auch greifen, wenn BidCos-RF existiert, dann wird es aufgenommen, wenn es wie bei mir nicht exisitert, dann ist es nicht als Leiche per Default vorhanden.
Bitte um Review der Änderung und ggf. Aufnahme in den Produktivcode.

danke und lG
Mike

zap

#11
oh, das ist sehr interessant. Bisher war es immer so, dass die CCU selbst immer BidCos-RF verwendet hat. Daher versucht HMCCU immer, BidCos zu initialisieren. Da muss ich was ändern. Workaround kann ich dir momentan nicht anbieten. Werde ich fixen. Wie lange das dauert, kann ich nicht genau sagen. Mindestens bis zum Wochenende.

Update: du warst schneller. Allerdings ist das nicht die einzige notwendige Änderung. Wenn es für dich momentan funktioniert, nimmt das erst  al etwas Druck vom Kessel  ;)
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

XXL-Wing

Hi,

Druck gibt es generell sowieso keinen.
Da es sich um meine Hausanlage handelt, kann die Einbindung der neuen HM-IP Geräte auch noch warten :-)
Bislang habe ich noch nix gemerkt, dass etwas nicht geht.

Ich habe aber auch nur 2 Fenstergriffsensoren in FHEM übernommen, die brav die Statusänderungen open/tilted/closed schicken.
Ob es sonst Einschränkungen gibt kann ich nicht sagen, aber wenn du da noch weiteren Änderungsbedarf siehst dann wird es schon so sein.

Wenn ich behilflich sein kann (Hinweise wo das noch Auswirkungen haben könnte vorausgesetzt), kann ich da gerne noch weiter reinsehen, ich hab' noch Urlaub diese Woche :-)

LG
Mike

zap

#13
1) Kannst Du mir bitte sagen, welche Werte einige Internals des I/O Device bei Dir haben? Konkret geht es um

- ccuaddr
- ccuif
- ccuname

Oder existieren die nicht?

2 ) In Deinem ersten Post schreibst Du:
ccuinterfaces BidCos-RF,HmIP-RF,VirtualDevices

Später dann
ccuinterfaces HmIP-RF,VirtualDevices

Was ist dazwischen passiert?

3) Außerdem wäre der Inhalt der Datei /etc/config/InterfacesList.xml auf der CCU hilfreich.

2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

XXL-Wing

Hi,

hier die gewünschten Infos:

zu 1.)

- ccuaddr
- ccuif
- ccuname

existieren alle nicht.

zu 2.)

Dazwischen ist ein komplettes Neuaufsetzen der RaspberryMatic passiert weil ich vermutet hatte dass ich irgendwo einen Blödsinn gemacht habe. Ich wüsste aber nicht was ich anders gemacht hätte als beim ersten mal.
Die RaspberryMatic funktioniert aber jetzt so wie vorher, die Devices sind nach dem Minimalpatch im FHEM und es kommen auch brav Änderungen (getestet mit Fesntersensoren).

zu 3.)

here it is:


# cat /etc/config/InterfacesList.xml
<?xml version="1.0" encoding="utf-8" ?>
<interfaces v="1.0">
        <ipc>
                <name>VirtualDevices</name>
                <url>xmlrpc://127.0.0.1:39292/groups</url>
                <info>Virtual Devices</info>
        </ipc>
        <ipc>
                <name>HmIP-RF</name>
                <url>xmlrpc://127.0.0.1:32010</url>
                <info>HmIP-RF</info>
        </ipc>
</interfaces>
#