FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: Gruvol am 08 November 2016, 17:00:45

Titel: Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 17:00:45
Hallo,

ich würde den Fensterkontakt gerne verwenden, um meine Garage zu überwachen, ob diese offen ist oder nicht.
Ich kann allerdings den Sensor nur an einer Stelle anbringen, wo der Sensor dann den Status "closed" anzeigt, obwohl die Garage offen ist.
Daher habe ich mich gefragt, ob man den Status in fhem umdrehen kann, damit der richtige Status angezeigt wird.
Wenn das geht, hat das einen Einfluss auf die Batterielaufzeit? Weiß leider nicht richtig, wie der Mechanismus ist und er dadurch andauernd auf ein Ereignis horcht und somit die Batterie schneller leer geht.

Ich hoffe, ihr könnt mir helfen :)

Vielen Dank euch.
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: reibuehl am 08 November 2016, 17:12:28
Hilft Dir das hier (https://forum.fhem.de/index.php?topic=38418.0) weiter?
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 17:35:28
Das mit Eventmap klang vielversprechend, jedoch leider ohne Erfolg.

Ich habe attr <device> open:closed closed:open geschrieben.

Leider änderte sich daran nichts :(

Noch jemand eine Idee, oder was ich falsch mache?
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: frank am 08 November 2016, 17:45:04
bei den magnetischen sensoren kann man entsprechende register einstellen. geht hier sicherlich auch. schau unter get regList.
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 17:51:23
Hallo,

danke für den Hinweis.

Ich bin darauf auf diese beiden Zeilen gestoßen:

1: msgScPosA        |     literal        |          | Message for position A options:closed,noMsg,open
1: msgScPosB        |     literal        |          | Message for position B options:closed,noMsg,open

Sind das die Werte, für die ich mich in meinem Fall interessiere? Wenn ja, wie kann ich diese ändern?


Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: frank am 08 November 2016, 17:57:54
genau, einfach die aktuellen werte tauschen. register werden immer mit set regSet geändert.
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 08 November 2016, 18:31:47
Zitat von: frank am 08 November 2016, 17:57:54
genau, einfach die aktuellen werte tauschen. register werden immer mit set regSet geändert.
Knöppchen drücken nicht vergessen. Bzw einmal auf oder zu machen nach dem regSet !
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 19:51:43
Hallo,

danke euch beiden.
Das ist gut zu wissen, dass man es einmal auf und wieder zu machen muss.

Wäre das hier als Befehle richtig?

set HM_Garage regSet msgScPosA open,noMsg,closed

set HM_Garage regSet msgScPosB open,noMsg,closed

Oder habe ich dabei was vergessen? Bin mir nicht sicher, was ich genau alles dort angeben muss. Habe lediglich das open zu closed gemacht und das closed zu open.
Was bedeutet die das A und B hinter dem Wert, bzw. worin unterscheiden sich diese?
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 08 November 2016, 19:58:55
Nö!
Du kannst mit get <> regTable anschauen wie es steht. Meine stehen so:
   1:      msgScPosA        :open
   1:      msgScPosB        :closed

Damit weißt Du auch was man eintragen kann/muss. Alle Optionen bekommst du mit get <> regList

Also musst Du machen set HM_Garage regSet msgScPosA closed
set HM_Garage regSet msgScPosB open


Alles klar?
Gruß Otto
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 20:06:21
Wenn ich ehrlich sein soll nicht. Mein Register sieht folgendermaßen aus:

list:         register | range              | peer     | description
   0: cyclicInfoMsg    |     literal        |          | cyclic message options:on,on_100,off
   0: localResDis      |     literal        |          | local reset disable options:off,on
   0: pairCentral      |   0 to 16777215    |          | pairing to central
   0: sabotageMsg      |     literal        |          | enable sabotage message options:on,off
   0: transmDevTryMax  |   1 to 10          |          | max message re-transmit
   1: eventDlyTime     |   0 to 7620s       |          | filters short events, causes reporting delay
   1: ledOnTime        |   0 to 1.275s      |          | LED ontime
   1: msgScPosA        |     literal        |          | Message for position A options:closed,noMsg,open
   1: msgScPosB        |     literal        |          | Message for position B options:closed,noMsg,open
   1: sign             |     literal        |          | signature (AES) options:on,off
   1: transmitTryMax   |   1 to 10          |          | max message re-transmit
   4: expectAES        |     literal        | required | expect AES options:on,off
   4: peerNeedsBurst   |     literal        | required | peer expects burst options:off,on

Viele Grüße.
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 08 November 2016, 20:15:45
Hi,

nein das ist regList! Du  musst regTable machen. ;)
regList --> Alle Register die das Gerät hat und die Optionen die man setzen kann
regTable --> aktuell verwendete Register und deren Inhalt

Und Du musst Codetags lernen - hatten wir das nicht schon mal?  ;D

Gruß Otto
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 20:35:00
Argh, wer genau list ist ziemlich im Vorteil.

Ich habe das nun angepasst und habe die Garage hoch und runter fahren lassen, das half nichts. Danach habe ich den Knopf gedrückt und gewartet, aber der Status ändert sich nicht.

Aktuell sieht es auch noch so aus:

HM_Garage type:threeStateSensor -
list:peer   register         :value
   1:         eventDlyTime     :set_0 s
   1:         msgScPosA        :set_closed
   1:         msgScPosB        :set_open
   1:         sign             :set_on
   1:         transmitTryMax   :set_6

Das zeigt mir, dass das Gerät die Änderung zwar empfangen, aber noch nicht angenommen hat, oder?

Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 08 November 2016, 20:38:10
Mach mal noch ein set <> getConfig (Wieder knöppchen drücken)
Beim Knopf drücken siehst Du immer ob er Daten überträgt - am Blinkrythmus der LED.
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 21:41:50
Ich probiere es morgen noch einmal. Ich habe das ausgeführt und dann auf den Knopf gedrückt. Blinkt gleichmäßig orange (würde ich sagen). Nach kurzer Zeit hört es auf. Ändern tut sich jedoch nichts.

Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 08 November 2016, 21:52:43
Poste mal bitte ein list HM_Garage. Aber bitte in Codetags (# Taste über den Smilies)

Gruß Otto
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 22:07:47
Hier das Ergebnis daraus:


Internals:
   DEF        4E4CCC
   IODev      myHmUART
   LASTInputDev myHmUART
   MSGCNT     297
   NAME       HM_Garage
   NOTIFYDEV  global
   NR         126
   NTFY_ORDER 50-HM_Garage
   STATE      open
   TYPE       CUL_HM
   lastMsg    No:84 - t:10 s:4E4CCC d:424242 0601C800
   myHmUART_MSGCNT 297
   myHmUART_RAWMSG 0501004984A6104E4CCC4242420601C800
   myHmUART_RSSI -73
   myHmUART_TIME 2016-11-08 21:31:47
   protCmdDel 17
   protEvt_AESCom-ok 5 last_at:2016-11-08 20:19:32
   protLastRcv 2016-11-08 21:31:47
   protNack   4 last_at:2016-11-08 20:19:31
   protSnd    260 last_at:2016-11-08 21:31:47
   protState  CMDs_done
   rssi_at_myHmUART min:-86 avg:-54.91 lst:-73 max:-35 cnt:287
   Readings:
     2016-11-08 20:47:36   Activity        alive
     2016-11-08 20:19:32   CommandAccepted yes
     2016-11-08 20:47:36   D-firmware      1.0
     2016-11-08 20:47:36   D-serialNr      NEQ0943792
     2016-11-07 00:45:42   PairedTo        0x424242
     2016-11-06 18:57:58   R-HM_Living_WindowRec-expectAES set_off
     2016-11-06 18:57:58   R-HM_Living_WindowRec-peerNeedsBurst set_on
     2016-11-07 00:45:42   R-cyclicInfoMsg on
     2016-11-07 00:45:43   R-eventDlyTime  0 s
     2016-11-07 00:45:42   R-pairCentral   0x424242
     2016-11-07 00:45:42   R-sabotageMsg   on
     2016-11-07 00:45:43   R-sign          on
     2016-11-08 20:19:32   aesCommToDev    ok
     2016-11-08 20:19:32   aesKeyNbr       00
     2016-11-08 21:31:47   alive           yes
     2016-11-08 21:31:47   battery         ok
     2016-11-08 21:31:47   contact         open (to VCCU)
     2016-11-08 21:31:47   recentStateType info
     2016-11-08 21:31:47   sabotageError   off
     2016-11-08 21:31:47   state           open
     2016-11-06 19:10:45   trigDst_HM_Living noConfig
     2016-11-08 20:48:18   trigger_cnt     141
   Helper:
     HM_CMDNR   132
     cSnd       014242424E4CCC01050000000001,014242424E4CCC0108205C
     getCfgList all
     getCfgListNo ,4
     mId        00C7
     peerIDsRaw ,00000000
     rxType     28
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Io:
       newCh      1
       newChn     +4E4CCC,00,00,00
       nextSend   1478637107.56382
       rxt        2
       vccu       VCCU
       p:
         4E4CCC
         00
         00
         00
       prefIO:
         myHmUART
     Mrssi:
       mNo        84
       Io:
         myHmUART   -71
     Prt:
       bErr       0
       sProc      0
       sleeping   0
       Rspwait:
     Q:
       qReqConf
       qReqStat
     Role:
       chn        1
       dev        1
     Rpt:
       IO         myHmUART
       flg        A
       ts         1478637107.27201
       ack:
         HASH(0x24f0198)
         8480024242424E4CCC00
     Rssi:
       At_myhmuart:
         avg        -54.9128919860627
         cnt        287
         lst        -73
         max        -35
         min        -86
     Shadowreg:
       RegL_01.     08:01 20:6C 21:00 30:06 00:00
       RegL_04.HM_Living_WindowRec  01:01
     Tmpl:
   Nb:
     cnt        7
Attributes:
   IODev      myHmUART
   IOgrp      VCCU:myHmUART
   actCycle   002:50
   actStatus  alive
   autoReadReg 4_reqStatus
   expert     2_raw
   firmware   1.0
   model      HM-SEC-SCo
   peerIDs    00000000,
   room       Homematic
   serialNr   NEQ0943792
   subType    threeStateSensor
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 08 November 2016, 22:18:12
Kurze Zwischenfrage:
hast du das Paket  libcrypt-rijndael-perl installiert? der Fensterkontakt arbeitet mit AES, für AES braucht das HMUART  libcrypt-rijndael-perl.

Ansonsten sah prinzipiell auf den ersten Blick alles gut aus.

Gruß Otto
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 22:30:03
Wenn du mich so direkt fragst, nicht bewusst. Dann werde ich das direkt einmal nachholen.
Zu AES hatte ich gelesen, dass es nur bei manchen Geräten von Homematic benötigt wird, ist das richtig?
Demnach gehe ich davon aus, dass man es für das Teil benötigt. Aber mal eine ganz dumme Frage, wieso funktioniert es denn jetzt schon?
Oder hat das nur oberflächlich den Anschein, aber im Inneren sind nicht alle Funktionalitäten dadurch verfügbar?
Werde es direkt mal nachinstallieren :)
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 08 November 2016, 22:45:00
Zitat von: Gruvol am 08 November 2016, 22:30:03
Zu AES hatte ich gelesen, dass es nur bei manchen Geräten von Homematic benötigt wird, ist das richtig?
Demnach gehe ich davon aus, dass man es für das Teil benötigt. Aber mal eine ganz dumme Frage, wieso funktioniert es denn jetzt schon?
Ja, das ist so ein Ding. Also alle Geräte mit SEC im Namen, werden aktuell mit aktivierten AES ausgeliefert. War wohl früher auch mal anders.
Und es geht irgendwie ziemlich viel ohne, was genau alles, kann ich nicht sagen. Aber es geht eben dann nicht alles.

Gruß Otto
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 08 November 2016, 22:49:56
Danke für die Erklärung, war sehr hilfreich für mich.
Das heißt ich mache morgen nochmal folgendes:

Ich nutze den Befehl set <> getConfig und drücke noch einmal auf das Knöppchen, in der Hoffnung, dass es danach funktioniert.

Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 09 November 2016, 17:35:53
Servus,
ich wollte euch ein kurzes Update geben. Der Status hat sich noch immer nicht geändert.
Habe nochmal den Befehl ausgeführt und des Öfteren versucht mit Drücken den Status ändern zu können, ohne Erfolg.

Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: frank am 09 November 2016, 17:52:25
die beiden register sind im list nicht zu sehen. setze mal attr expert 251_anything, mach ein getconfig, kontrolliere, wiederhole eventuell die regSet, und poste erneut ein list.
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 09 November 2016, 18:07:33
Hi,

habe nochmal deine Schritte durchgeführt und dabei ist folgende list bei rausgekommen.


Internals:
   DEF        4E4CCC
   IODev      myHmUART
   LASTInputDev myHmUART
   MSGCNT     33
   NAME       HM_Garage
   NOTIFYDEV  global
   NR         126
   NTFY_ORDER 50-HM_Garage
   STATE      open
   TYPE       CUL_HM
   lastMsg    No:F7 - t:10 s:4E4CCC d:424242 0100000000
   myHmUART_MSGCNT 33
   myHmUART_RAWMSG 05010048F7A0104E4CCC4242420100000000
   myHmUART_RSSI -72
   myHmUART_TIME 2016-11-09 17:31:57
   protCmdPend 6 CMDs_pending
   protEvt_AESCom-ok 3 last_at:2016-11-09 16:24:57
   protLastRcv 2016-11-09 17:31:57
   protResnd  1 last_at:2016-11-09 16:24:28
   protSnd    30 last_at:2016-11-09 17:31:57
   protState  CMDs_pending
   rssi_at_myHmUART cnt:27 max:-67 lst:-72 min:-78 avg:-74.66
   Readings:
     2016-11-09 16:29:47   Activity        alive
     2016-11-09 16:24:57   CommandAccepted yes
     2016-11-09 16:29:47   D-firmware      1.0
     2016-11-09 16:29:47   D-serialNr      NEQ0943792
     2016-11-09 17:31:56   PairedTo        0x424242
     2016-11-06 18:57:58   R-HM_Living_WindowRec-expectAES set_off
     2016-11-06 18:57:58   R-HM_Living_WindowRec-peerNeedsBurst set_on
     2016-11-07 00:45:42   R-cyclicInfoMsg on
     2016-11-07 00:45:43   R-eventDlyTime  0 s
     2016-11-09 17:35:40   R-msgScPosA     set_closed
     2016-11-09 17:35:49   R-msgScPosB     set_open
     2016-11-09 16:25:19   R-pairCentral   0x424242
     2016-11-07 00:45:42   R-sabotageMsg   on
     2016-11-07 00:45:43   R-sign          on
     2016-11-07 00:45:42   R-transmDevTryMax 6
     2016-11-07 00:45:43   R-transmitTryMax 6
     2016-11-09 17:31:56   RegL_00.          02:01 09:01 0A:42 0B:42 0C:42 10:01 14:06 00:00
     2016-11-09 17:31:57   RegL_01.          08:01 20:9C 21:00 30:06
     2016-11-09 16:24:57   aesCommToDev    ok
     2016-11-09 16:24:57   aesKeyNbr       00
     2016-11-09 17:31:56   alive           yes
     2016-11-09 17:31:56   battery         ok
     2016-11-09 17:31:56   contact         open (to VCCU)
     2016-11-09 17:31:56   recentStateType info
     2016-11-09 17:31:56   sabotageError   off
     2016-11-09 17:31:56   state           open
     2016-11-06 19:10:45   trigDst_HM_Living noConfig
     2016-11-09 16:30:28   trigger_cnt     155
   cmdStack:
     ++A0014242424E4CCC01050000000001
     ++A0014242424E4CCC0108205C
     ++A0014242424E4CCC0106
     ++A0014242424E4CCC01050000000001
     ++A0014242424E4CCC0108206C
     ++A0014242424E4CCC0106
   Helper:
     HM_CMDNR   247
     cSnd       014242424E4CCC01040000000001,014242424E4CCC0103
     mId        00C7
     peerIDsRaw ,00000000
     rxType     28
     Expert:
       def        1
       det        1
       raw        1
       tpl        1
     Io:
       newCh      1
       newChn     +4E4CCC,02,00,00
       nextSend   1478709118.18181
       rxt        2
       vccu       VCCU
       p:
         4E4CCC
         00
         00
         00
       prefIO:
         myHmUART
     Mrssi:
       mNo        F7
       Io:
         myHmUART   -70
     Prt:
       bErr       0
       sProc      2
       sleeping   0
       try        1
       Rspwait:
     Q:
       qReqConf   00
       qReqStat
     Role:
       chn        1
       dev        1
     Rpt:
       IO         myHmUART
       flg        A
       ts         1478709117.8902
       ack:
         HASH(0x2897030)
         F780024242424E4CCC00
     Rssi:
       At_myhmuart:
         avg        -74.6666666666667
         cnt        27
         lst        -72
         max        -67
         min        -78
     Shadowreg:
       RegL_01.     08:01 20:6C 21:00 30:06 00:00
     Tmpl:
   Nb:
     cnt        2
Attributes:
   IODev      myHmUART
   IOgrp      VCCU:myHmUART
   actCycle   002:50
   actStatus  alive
   autoReadReg 4_reqStatus
   expert     251_anything
   firmware   1.0
   model      HM-SEC-SCo
   peerIDs    00000000,
   room       Homematic
   serialNr   NEQ0943792
   subType    threeStateSensor
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Otto123 am 09 November 2016, 18:28:08
Er kommuniziert nicht --> protCmdPend 6 CMDs_pending
Schwieriger Fall. Du kannst versuchen clear msgEvents zu machen und nochmal zu beginnen.
Batterie raus und wieder rein, hilft auch manchmal bei schwierigen Fällen.

Irgendwas klemmt.  :-[

Gruß Otto
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: frank am 09 November 2016, 18:38:21
Zitathabe nochmal deine Schritte durchgeführt und dabei ist folgende list bei rausgekommen.
du hast aber nach den regset auch das knöpchen entsprechend gedrückt? so, wie beim anlernen, dass der blinkcounttdown beginnt. wiederholen, bis kein pending cmd mehr erscheint.
tauchen fehler in fhem.log auf?
Titel: Antw:Homematic Fensterkontakt HM-SEC-SCo Status umdrehen (open soll closed sein)
Beitrag von: Gruvol am 09 November 2016, 20:06:22
Hallo ihr beiden,

ich habe es nun geschafft, wie? Das weiß ich leider auch nicht so richtig. Habe mal die Batterie herausgenommen, habe nochmal das regset neu gesetzt und das Knöppchen gedrückt. Irgendwann hat es dann geklappt.

Vielen lieben Dank für die Hilfe und vor allem die Zeit, die ihr euch für mich genommen habt.

Liebe Grüße
Gruvol