FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: pallago am 23 Oktober 2017, 23:46:20

Titel: HM-CC-RT-DN, HM-MOD-RPI-PCB, CMDs pending
Beitrag von: pallago am 23 Oktober 2017, 23:46:20
Hallo zusammen,
ich habe eine Frage zu den Heizkörperthermostat HM-CC-RT-DN, die ich in Kombination mit einem Raspberry B+ und dem HM-MOD-RPI-PC Modul betreiben möchte.

Zur Installation bin ich der Wiki hier und dem Foreneintrag gefolgt:
https://wiki.fhem.de/wiki/HM-MOD-RPI-PCB_HomeMatic_Funkmodul_f%C3%BCr_Raspberry_Pi (https://wiki.fhem.de/wiki/HM-MOD-RPI-PCB_HomeMatic_Funkmodul_f%C3%BCr_Raspberry_Pi)
https://forum.fhem.de/index.php/topic,54511.0.html (https://forum.fhem.de/index.php/topic,54511.0.html)

Das Modul lässt sich auch wunderbar in FHEM ansprechen, ein list myHmUART bringt:
Internals:
   AssignedPeerCnt 1
   CNT        75
   DEF        /dev/ttyAMA0
   DEVCNT     75
   DevState   99
   DevType    UART
   DeviceName /dev/ttyAMA0@115200
   FD         11
   LastOpen   1508791842.13477
   NAME       myHmUART
   NR         20
   PARTIAL
   RAWMSG     040203
   RSSI       -29
   STATE      opened
   TYPE       HMUARTLGW
   XmitOpen   1
   model      HM-MOD-UART
   msgLoadCurrent 2
   msgLoadHistory 2/0/0/0/0/-/-/-/-/-/-/-
   msgLoadHistoryAbs 2/0/0/0/0/0/-/-/-/-/-/-/-
   owner      583D8B
   Helper:
     CreditTimer 35
     FW         66561
     Initialized 1
     SendCnt    3
     AckPending:
     LastSendLen:
       3
       3
     Log:
       IDs:
     PeerQueue:
     PendingCMD:
     RoundTrip:
       Delay      0.00403404235839844
     loadLvl:
       lastHistory 1508793350.97263
   Peers:
     2B38A0     +2B38A0,02,00,00
   READINGS:
     2017-10-23 20:50:50   D-HMIdAssigned  583D8B
     2017-10-23 20:50:50   D-HMIdOriginal  583D8B
     2017-10-23 20:50:50   D-firmware      1.4.1
     2017-10-23 20:50:50   D-serialNr      OEQ0308076
     2017-10-23 20:50:41   D-type          HM-MOD-UART
     2017-10-23 20:50:51   cond            ok
     2017-10-23 21:14:26   load            2
     2017-10-23 20:50:51   loadLvl         low
     2017-10-23 20:57:50   state           opened



Wenn ich nun meine 3 Heizthermostate (1x mit Firmware 1.3, 2x mit Firmware 1.4) anlernen möchte, versuchte ich das wie folgt:
In FHEM: set myHmUART hmPairForSec 60 und auf dem Thermostaten die Boost Taste drücken - es erscheint "nAC", das nicht angelernt bedeutet, laut Anleitung. Wenn ich die Funktionen des Thermostaten aufrufe, so kann ich es auch nicht unpairen ("del" Menü erscheint nicht). Jedoch erscheint das Antenntensymbol auf dem Display des Thermostaten. In FHEM sehe ich das Modul aufgelistet - die aktuell gemessene Temperatur und die desired Temperatur werden angezeigt. Das Auslesen scheint einigermaßen zu funktionieren, das Senden jedoch nicht:
Bei ClimaTeam, Climate und remote werden "???" angezeigt. Ein neuer desired value wird nicht auf das Thermostat übertragen.

Ich habe das nun mit allen 3 Thermostaten versucht, FHEM zurück gesetzt, die Thermostate resettet und schlussendlich den Raspberry neu aufgesetzt. Jedoch immer mit demselben Resultat: Auslesen scheint einigermaßen zu funktionieren (ich sehe desired temperature und measured temperature), aber das Senden der Befehle klappt nicht (bsp. ändere ich den desired value). Unter dem Status des Geräts erscheint ein "CMD pending", also die Commands sind dabei abgearbeitet zu werden; macht auch Sinn, dass das Senden nicht funktioniert, bevor FHEM die Befehle nicht abgearbeitet hat. Nach ca. 30-45min Warten erscheint "MISSING ACK".
Einen RSA Key habe ich, meines Wissens, nicht benutzt. Das einzige, das ich in myHmUART geändert habe, ist die HMId. Kann ich die/Muss ich die zurücksetzen? Wie mache ich das am besten?


Anbei die Ausgaben des HM-CC-RT-DN:
Internals:
   DEF        2B38A0
   IODev      myHmUART
   LASTInputDev myHmUART
   MSGCNT     12
   NAME       Wohnzimmer
   NOTIFYDEV  global
   NR         21
   NTFY_ORDER 50-Wohnzimmer
   STATE      MISSING ACK
   TYPE       CUL_HM
   channel_01 HM_2B38A0_Weather
   channel_02 HM_2B38A0_Climate
   channel_03 HM_2B38A0_WindowRec
   channel_04 HM_2B38A0_Clima
   channel_05 HM_2B38A0_ClimaTeam
   channel_06 HM_2B38A0_remote
   lastMsg    No:37 - t:10 s:2B38A0 d:000000 0A68E40B0000
   myHmUART_MSGCNT 12
   myHmUART_RAWMSG 0500001E3786102B38A00000000A68E40B0000
   myHmUART_RSSI -30
   myHmUART_TIME 2017-10-23 21:39:17
   protCmdDel 15
   protLastRcv 2017-10-23 21:39:17
   protResnd  3 last_at:2017-10-23 21:14:28
   protResndFail 1 last_at:2017-10-23 21:17:26
   protSnd    4 last_at:2017-10-23 21:17:23
   protState  CMDs_done_Errors:1
   rssi_at_myHmUART cnt:12 max:-28 min:-30 avg:-29.16 lst:-30
   READINGS:
     2017-10-23 20:50:46   Activity        alive
     2017-10-23 20:36:42   CommandAccepted yes
     2017-10-23 20:34:35   D-firmware      1.3
     2017-10-23 20:34:35   D-serialNr      LEQ0422711
     2017-10-23 20:49:27   R-pairCentral   set_0x000000
     2017-10-23 21:39:17   actuator        0
     2017-10-23 21:39:17   battery         ok
     2017-10-23 21:39:17   batteryLevel    2.6
     2017-10-23 21:39:17   desired-temp    13.0
     2017-10-23 21:39:17   measured-temp   22.8
     2017-10-23 21:39:17   motorErr        ok
     2017-10-23 21:17:26   state           MISSING ACK



Hat jemand eine Idee wo der Fehler liegen könnte?
Titel: Antw:HM-CC-RT-DN, HM-MOD-RPI-PCB, CMDs pending
Beitrag von: darkness am 24 Oktober 2017, 07:27:01
Hallo,

Grundsätzlich: Pairing braucht Zeit. Und immer nur ein Gerät gleichzeitig anlernen.

Versuch mal folgendes:

Dein UART in den Pairingmodus versetzen. Danach ein HM-CC-RT-DN anlernen. Den Vorgang am besten im Eventmonitor verfolgen. Danach schaust du in FHEM, ob das Device korrekt angelegt wurde. Wichtig ist, das bei CMD done steht und in R-pairCentral   set_0x000000 dein HMID steht. Ohne ein set_ davor.

Sollte es noch CMD pendig geben, einfach nochmal den Config-Knopf am DN drücken (bzw. die Boosttaste). Wieder warten und schauen. Nachdem dort CMD done steht, einfach noch mal ein getConfig durchführen.

Beim Anlernen werden eine Menge Daten übertragen. Daher mit Ruhe und Zeit pairen. Und beobachten, das dein IO-Device nicht in den Overload geht.

Gruß
Titel: Antw:HM-CC-RT-DN, HM-MOD-RPI-PCB, CMDs pending
Beitrag von: darkness am 24 Oktober 2017, 08:33:01
Noch eine kleine Ergänzung:

ist das list myHmUART vollständig?

Da fehlen noch die Attribute.


Titel: Antw:HM-CC-RT-DN, HM-MOD-RPI-PCB, CMDs pending
Beitrag von: pallago am 03 November 2017, 11:53:43
Hallo,
vielen Dank für die Antworten.
Mit dem neuen Raspberry bekomme ich ein "CMD done", jedoch steht weiterhin "ACK missing". Ich habe noch einen anderen Raspberry verwendet mit neuer Raspbian Version (2017-09-07) und älterer (2015-02-16). Ich beobachte nun, dass im Thermostaten "AC" steht, das ein erfolgreichen Anlernen bestätigt. Jedoch scheint lediglich das neue Gerät in FHEM angelegt zu sein, jedoch das Pairing nicht erfolgreich.
Ich habe das System insgesamt ca. 10x neu aufgesetzt und die Thermostate resettet; immer mit demselben Ergebnis: ACK missing


Anbei nochmal die Outputs von "list HM_2B38A0" (mein Thermostat):
CFGFN
   DEF        2B38A0
   IODev      myHmUART
   LASTInputDev myHmUART
   MSGCNT     281
   NAME       HM_2B38A0
   NOTIFYDEV  global
   NR         27
   NTFY_ORDER 50-HM_2B38A0
   STATE      MISSING ACK
   TYPE       CUL_HM
   channel_01 HM_2B38A0_Weather
   channel_02 HM_2B38A0_Climate
   channel_03 HM_2B38A0_WindowRec
   channel_04 HM_2B38A0_Clima
   channel_05 HM_2B38A0_ClimaTeam
   channel_06 HM_2B38A0_remote
   lastMsg    No:34 - t:10 s:2B38A0 d:000000 0A24C80B0040
   myHmUART_MSGCNT 281
   myHmUART_RAWMSG 050000263486102B38A00000000A24C80B0040
   myHmUART_RSSI -38
   myHmUART_TIME 2017-11-03 11:45:23
   protCmdDel 31
   protLastRcv 2017-11-03 11:45:23
   protResnd  6 last_at:2017-11-03 08:37:29
   protResndFail 2 last_at:2017-11-03 08:39:40
   protSnd    12 last_at:2017-11-03 08:39:35
   protState  CMDs_done_Errors:1
   rssi_at_myHmUART avg:-37.65 min:-39 max:-36 lst:-38 cnt:281
   READINGS:
     2017-11-02 23:50:57   Activity        alive
     2017-11-02 23:50:52   CommandAccepted yes
     2017-11-02 23:50:52   D-firmware      1.3
     2017-11-02 23:50:52   D-serialNr      LEQ0422711
     2017-11-02 23:50:52   R-pairCentral   set_0xF10000
     2017-11-03 11:45:23   actuator        0
     2017-11-03 11:45:23   battery         ok
     2017-11-03 11:45:23   batteryLevel    2.6
     2017-11-03 11:45:23   desired-temp    off
     2017-11-03 11:45:23   measured-temp   20.0
     2017-11-03 11:45:23   motorErr        ok
     2017-11-03 08:39:40   state           MISSING ACK
   helper:
     HM_CMDNR   52
     PONtest    1
     cSnd       01F100002B38A0000802010AF10B000C00,01F100002B38A00006
     mId        0095
     rxType     140
     supp_Pair_Rep 0
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       newChn     +2B38A0,00,00,00
       nextSend   1509705924.00992
       prefIO
       rxt        2
       vccu
       p:
         2B38A0
         00
         00
         00
     mRssi:
       mNo        34
       io:
         myHmUART   -36
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf
       qReqStat
     role:
       dev        1
       prs        1
     rssi:
       at_myHmUART:
         avg        -37.6512455516014
         cnt        281
         lst        -38
         max        -36
         min        -39
     shRegW:
       07         04
     shadowReg:
       RegL_00.    02:01 0A:F1 0B:00 0C:00
Attributes:
   IODev      myHmUART
   actCycle   000:10
   actStatus  alive
   autoReadReg 4_reqStatus
   expert     2_raw
   firmware   1.3
   model      HM-CC-RT-DN
   room       CUL_HM
   serialNr   LEQ0422711
   subType    thermostat
   webCmd     getConfig:clear msgEvents:burstXmit



und von "list myHmUART":

Internals:
   AssignedPeerCnt 1
   CFGFN
   CNT        149
   DEF        /dev/ttyAMA0
   DEVCNT     149
   DevState   99
   DevType    UART
   DeviceName /dev/ttyAMA0@115200
   FD         12
   LastOpen   1509663246.66803
   NAME       myHmUART
   NR         24
   PARTIAL
   RAWMSG     040200
   RSSI       -38
   STATE      opened
   TYPE       HMUARTLGW
   XmitOpen   1
   model      HM-MOD-UART
   msgLoadCurrent 0
   msgLoadHistory 0/0/0/0/0/0/0/0/0/0/0/0
   msgLoadHistoryAbs 0/0/0/0/0/0/0/0/0/0/0/0/0
   owner      A1B23C
   Helper:
     CreditTimer 2867
     FW         66561
     Initialized 1
     SendCnt    9
     AckPending:
     LastSendLen:
       3
       3
     Log:
       IDs:
     PeerQueue:
     PendingCMD:
     RoundTrip:
       Delay      0.00336885452270508
     loadLvl:
       lastHistory 1509706149.1789
   Peers:
     2B38A0     +2B38A0,00,00,00
   READINGS:
     2017-11-02 23:54:09   D-HMIdAssigned  A1B23C
     2017-11-02 23:54:09   D-HMIdOriginal  583D8B
     2017-11-02 23:54:09   D-firmware      1.4.1
     2017-11-02 23:54:09   D-serialNr      OEQ0308076
     2017-11-02 23:50:28   D-type          HM-MOD-UART
     2017-11-02 23:54:09   cond            ok
     2017-11-03 09:35:44   load            0
     2017-11-02 23:54:09   loadLvl         low
     2017-11-02 23:54:06   state           opened
   helper:
Attributes:


Attribute gibt FHEM nicht aus bzw. habe ich keine. Kann es an der HMID liegen?

D-HMIdAssigned: A1B23C   2017-11-02 23:54:09
D-HMIdOriginal 583D8B       2017-11-02 23:54:09



Habe ich vielleicht noch etwas beim Einrichten vergessen? Vielen Dank nochmal!
Titel: Antw:HM-CC-RT-DN, HM-MOD-RPI-PCB, CMDs pending
Beitrag von: pallago am 05 November 2017, 13:16:38
Hallo,
das Problem hat sich gelöst. Es lag tatsächlich an der HMID, diese habe ich nun auf F10000 gesetzt und die Thermostate kommunizieren.


https://forum.fhem.de/index.php?topic=70241.0