FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: FFHEM am 12 Februar 2022, 18:19:34

Titel: [HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: FFHEM am 12 Februar 2022, 18:19:34
Hallo, Guten Abend,

bei meinem HM-Sen-MDIR-WM55 (an Debmatic) habe ich als statedatapoint gewählt: "3.MOTION". Funktioniert prima.
Wenn aber FHEM neu gestartet wird (natürlich vorher SAVE angeklickt), ist das Attribut wieder verschwunden, was dann natürlich nicht so richtig ist - nach meinem Verständnis ;-)
Liegt es daran, dass das Device als HMCCUDEV angelegt wurde/besser die einzelnen Kanäle angelegt werden sollten?

Vielen Dank,
Gruß,
Friedhelm

Internals:
   DEF        OEQ0536140
   FUUID      61ed6a84-f33f-26cd-2308-48f75bc45dd51b34
   IODev      d_ccu
   NAME       PIRI3
   NR         1154
   STATE      noMotion
   TYPE       HMCCUDEV
   ccuaddr    OEQ0536140
   ccudevstate active
   ccuif      BidCos-RF
   ccuname    PIRI3
   ccurolectrl KEY
   ccurolestate MOTION_DETECTOR
   ccusubtype HM-Sen-MDIR-WM55
   ccutype    HM-Sen-MDIR-WM55
   firmware   1.2
   readonly   no
   receiver   ccu:HM-RCV-50 BidCoS-RF [RECEIVER_BROKEN]
   OLDREADINGS:
   READINGS:
     2022-02-12 18:06:29   1.INSTALL_TEST  1
     2022-02-12 18:06:29   1.PRESS_SHORT   pressed
     2022-02-12 18:06:29   3.INSTALL_TEST  1
     2022-02-12 18:06:29   brightness      80
     2022-02-12 18:06:29   control         pressed
     2022-02-12 18:06:29   devstate        ok
     2022-02-12 18:06:29   hmstate         noMotion
     2022-02-12 18:06:29   motion          noMotion
     2022-02-12 18:06:29   pressed         pressed
     2022-02-12 18:06:29   state           noMotion
   hmccu:
     channels   4
     detect     3
     devspec    OEQ0536140
     forcedev   0
     nodefaults 1
     role       0:MAINTENANCE,1:KEY,2:KEY,3:MOTION_DETECTOR
     setDefaults 0
     cmdlist:
       get       
       set        press:noArg pressLong:noArg on:noArg off:noArg
     control:
       chn        1
       dpt        PRESS_SHORT
     dp:
       1.INSTALL_TEST:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      1
           OVAL       1
           SVAL       1
           VAL        1
       1.PRESS_SHORT:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      pressed
           OVAL       1
           SVAL       pressed
           VAL        1
       3.BRIGHTNESS:
         VALUES:
           NVAL       80
           ONVAL      80
           OSVAL      80
           OVAL       80
           SVAL       80
           VAL        80
       3.INSTALL_TEST:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      1
           OVAL       1
           SVAL       1
           VAL        1
       3.MOTION:
         VALUES:
           NVAL       0
           ONVAL      0
           OSVAL      noMotion
           OVAL       0
           SVAL       noMotion
           VAL        0
     roleCmds:
       get:
       set:
         off:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      off
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         on:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      on
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         press:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      press
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         pressLong:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_LONG:1
           usage      pressLong
           subcmd:
             000:
               args       1
               dpt        PRESS_LONG
               fnc       
               max        1
               min        0
               parname    PRESS_LONG
               partype    3
               ps         VALUES
               scn        000
               unit       
     state:
       chn        3
       dpt        MOTION
Attributes:
   cmdIcon    press:taster
   devStateIcon motion:people_sensor noMotion:message_presence
   group      motionDetector
   icon       motion_detector
   room       Alarmanlage,Bewegungsmelder
   statedatapoint 3.MOTION
   webCmd     :
Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: zap am 13 Februar 2022, 08:23:05
Machst Du bitte mal ein list nach dem Neustart, also wenn statedatapoint verschwunden ist?
Und bitte im IO Device einmal "get detectDev" für den Melder ausführen
Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: FFHEM am 13 Februar 2022, 10:03:17
Hallo zap,

hier das "detectDev" VOR dem FHEM-Neustart:
{
  controlRole={
    1={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    },
    2={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    }
  },
  controlRoleCount=2,
  defAdd=OEQ0536140,
  defCCh=1,
  defCDP=1.PRESS_SHORT,
  defMod=HMCCUDEV,
  defSCh=1,
  defSDP=1.PRESS_SHORT,
  level=3,
  rolePatternCount=0,
  stateRole={
    1={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    },
    2={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    },
    3={
      datapoint=MOTION,
      priority=1,
      role=MOTION_DETECTOR
    }
  },
  stateRoleCount=3,
  uniqueControlRoleCount=1,
  uniqueStateRoleCount=2
}



Evtl. wichtig: Direkt nach einem einfachen FHEM-Neustart ("shutdown restart") (also kein kompletter Shutdown mit Stromlosmachen) ist das Attribut noch vorhanden:
Internals:
   DEF        OEQ0536140
   FUUID      61ed6a84-f33f-26cd-2308-48f75bc45dd51b34
   IODev      d_ccu
   NAME       PIRI3
   NR         1154
   STATE      noMotion
   TYPE       HMCCUDEV
   ccuaddr    OEQ0536140
   ccudevstate active
   ccuif      BidCos-RF
   ccuname    PIRI3
   ccusubtype HM-Sen-MDIR-WM55
   ccutype    HM-Sen-MDIR-WM55
   firmware   1.2
   readonly   no
   receiver   ccu:HM-RCV-50 BidCoS-RF [RECEIVER_BROKEN]
   READINGS:
     2022-02-12 18:06:29   1.INSTALL_TEST  1
     2022-02-12 18:06:29   1.PRESS_SHORT   pressed
     2022-02-13 09:35:23   3.INSTALL_TEST  1
     2022-02-13 09:44:17   IODev           d_ccu
     2022-02-13 09:45:11   activity        alive
     2022-02-13 09:45:11   battery         ok
     2022-02-13 09:45:11   brightness      133
     2022-02-12 18:06:29   control         pressed
     2022-02-13 09:45:11   devstate        ok
     2022-02-13 09:45:11   hmstate         noMotion
     2022-02-13 09:45:11   motion          noMotion
     2022-02-12 18:06:29   pressed         pressed
     2022-02-13 09:45:11   rssidevice      -255
     2022-02-13 09:45:11   rssipeer        -88
     2022-02-13 09:45:11   sign            off
     2022-02-13 09:45:11   state           noMotion
   hmccu:
     channels   4
     detect     3
     devspec    OEQ0536140
     forcedev   0
     nodefaults 1
     role       0:MAINTENANCE,1:KEY,2:KEY,3:MOTION_DETECTOR
     setDefaults 0
     cmdlist:
       get       
       set        press:noArg on:noArg pressLong:noArg off:noArg press:noArg on:noArg pressLong:noArg off:noArg
     control:
     dp:
       0.AES_KEY:
         VALUES:
           NVAL       0
           ONVAL      0
           OSVAL      off
           OVAL       0
           SVAL       off
           VAL        0
       0.CONFIG_PENDING:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      false
           OVAL       false
           SVAL       false
           VAL        false
       0.DEVICE_IN_BOOTLOADER:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      false
           OVAL       false
           SVAL       false
           VAL        false
       0.LOWBAT:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      ok
           OVAL       false
           SVAL       ok
           VAL        false
       0.RSSI_DEVICE:
         VALUES:
           NVAL       -255
           ONVAL      -255
           OSVAL      -255
           OVAL       1
           SVAL       -255
           VAL        1
       0.RSSI_PEER:
         VALUES:
           NVAL       -88
           ONVAL      -88
           OSVAL      -88
           OVAL       168
           SVAL       -88
           VAL        168
       0.STICKY_UNREACH:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      false
           OVAL       false
           SVAL       false
           VAL        false
       0.UNREACH:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      alive
           OVAL       false
           SVAL       alive
           VAL        false
       0.UPDATE_PENDING:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      false
           OVAL       false
           SVAL       false
           VAL        false
       3.BRIGHTNESS:
         VALUES:
           NVAL       133
           ONVAL      133
           OSVAL      133
           OVAL       133
           SVAL       133
           VAL        133
       3.MOTION:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      noMotion
           OVAL       false
           SVAL       noMotion
           VAL        false
     roleCmds:
       get:
       set:
         off:
           channel    ?
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      off
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         on:
           channel    ?
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      on
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         press:
           channel    ?
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      press
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         pressLong:
           channel    ?
           role       KEY
           subcount   1
           syntax     V:PRESS_LONG:1
           usage      pressLong
           subcmd:
             000:
               args       1
               dpt        PRESS_LONG
               fnc       
               max        1
               min        0
               parname    PRESS_LONG
               partype    3
               ps         VALUES
               scn        000
               unit       
     state:
       chn        3
       dpt        MOTION
Attributes:
   cmdIcon    press:taster
   devStateIcon motion:people_sensor noMotion:message_presence
   group      motionDetector
   icon       motion_detector
   room       Alarmanlage,Bewegungsmelder
   statedatapoint 3.MOTION
   webCmd     :


Aber nach einem Kaltstart des Raspi ist das Attribut verschwunden, und nach dem Drücken der Taster erscheint als Status dementsprechend auch "pressed" als state:

Internals:
   DEF        OEQ0536140
   FUUID      61ed6a84-f33f-26cd-2308-48f75bc45dd51b34
   IODev      d_ccu
   NAME       PIRI3
   NR         1154
   STATE      pressed
   TYPE       HMCCUDEV
   ccuaddr    OEQ0536140
   ccudevstate active
   ccuif      BidCos-RF
   ccuname    PIRI3
   ccurolectrl KEY
   ccurolestate KEY
   ccusubtype HM-Sen-MDIR-WM55
   ccutype    HM-Sen-MDIR-WM55
   firmware   1.2
   readonly   no
   receiver   ccu:HM-RCV-50 BidCoS-RF [RECEIVER_BROKEN]
   READINGS:
     2022-02-13 09:57:44   1.INSTALL_TEST  1
     2022-02-13 09:57:44   1.PRESS_SHORT   pressed
     2022-02-13 09:57:52   2.INSTALL_TEST  1
     2022-02-13 09:57:52   2.PRESS_SHORT   pressed
     2022-02-13 09:57:42   3.BRIGHTNESS    140
     2022-02-13 09:57:42   3.INSTALL_TEST  1
     2022-02-13 09:57:42   3.MOTION        motion
     2022-02-13 09:54:09   IODev           d_ccu
     2022-02-13 09:35:23   brightness      133
     2022-02-13 09:57:44   control         pressed
     2022-02-13 09:57:52   devstate        ok
     2022-02-13 09:57:52   hmstate         pressed
     2022-02-13 09:36:33   motion          noMotion
     2022-02-13 09:57:44   pressed         pressed
     2022-02-13 09:57:44   state           pressed
   hmccu:
     channels   4
     detect     3
     devspec    OEQ0536140
     forcedev   0
     nodefaults 1
     role       0:MAINTENANCE,1:KEY,2:KEY,3:MOTION_DETECTOR
     setDefaults 0
     cmdlist:
       get       
       set        press:noArg on:noArg pressLong:noArg off:noArg
     control:
       chn        1
       dpt        PRESS_SHORT
     dp:
       1.INSTALL_TEST:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      1
           OVAL       1
           SVAL       1
           VAL        1
       1.PRESS_SHORT:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      pressed
           OVAL       1
           SVAL       pressed
           VAL        1
       2.INSTALL_TEST:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      1
           OVAL       1
           SVAL       1
           VAL        1
       2.PRESS_SHORT:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      pressed
           OVAL       1
           SVAL       pressed
           VAL        1
       3.BRIGHTNESS:
         VALUES:
           NVAL       140
           ONVAL      140
           OSVAL      140
           OVAL       140
           SVAL       140
           VAL        140
       3.INSTALL_TEST:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      1
           OVAL       1
           SVAL       1
           VAL        1
       3.MOTION:
         VALUES:
           NVAL       1
           ONVAL      1
           OSVAL      motion
           OVAL       1
           SVAL       motion
           VAL        1
     roleCmds:
       get:
       set:
         off:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      off
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         on:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      on
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         press:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_SHORT:1
           usage      press
           subcmd:
             000:
               args       1
               dpt        PRESS_SHORT
               fnc       
               max        1
               min        0
               parname    PRESS_SHORT
               partype    3
               ps         VALUES
               scn        000
               unit       
         pressLong:
           channel    1
           role       KEY
           subcount   1
           syntax     V:PRESS_LONG:1
           usage      pressLong
           subcmd:
             000:
               args       1
               dpt        PRESS_LONG
               fnc       
               max        1
               min        0
               parname    PRESS_LONG
               partype    3
               ps         VALUES
               scn        000
               unit       
     state:
       chn        1
       dpt        PRESS_SHORT
Attributes:
   cmdIcon    press:taster
   devStateIcon motion:people_sensor noMotion:message_presence
   group      motionDetector
   icon       motion_detector
   room       Alarmanlage,Bewegungsmelder
   webCmd     :


Und noch einmal ein "get detectDev" in diesem Zustand:

{
  controlRole={
    1={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    },
    2={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    }
  },
  controlRoleCount=2,
  defAdd=OEQ0536140,
  defCCh=1,
  defCDP=1.PRESS_SHORT,
  defMod=HMCCUDEV,
  defSCh=1,
  defSDP=1.PRESS_SHORT,
  level=3,
  rolePatternCount=0,
  stateRole={
    1={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    },
    2={
      datapoint=PRESS_SHORT,
      priority=1,
      role=KEY
    },
    3={
      datapoint=MOTION,
      priority=1,
      role=MOTION_DETECTOR
    }
  },
  stateRoleCount=3,
  uniqueControlRoleCount=1,
  uniqueStateRoleCount=2
}


Es reicht also kein einfacher FHEM-Neustart aus, um den Effekt zu provozieren.

Vielen Dank!
Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: zap am 14 Februar 2022, 10:29:27
Ich habe ne Vermutung, was da schiefläuft.

Bis ich das gefixt habe: Lege einfach ein HMCCUCHN an:

define PIRI3_Bewegung HMCCUCHN OEQ0536140:3

Du brauchst Dann kein statedatapoint zu setzen.

Wenn Du die Tastendrücke benötigst, kannst Du dafür das vorhandene HMCCUDEV behalten oder Du legst ebenfalls HMCCUCHNs an:

define PIRI3_Taste1 HMCCUCHN OEQ0536140:1
define PIRI3_Taste2 HMCCUCHN OEQ0536140:2



Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: FFHEM am 14 Februar 2022, 18:08:31
Hallo zap,

vielen Dank für den Workaround und schon jetzt für das Fixen!

Gruß,
Friedhelm
Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: FFHEM am 02 Oktober 2022, 15:54:48
Hallo zap,

habe heute einmal das FHEM-Update mit HMCCU gemacht, kann es sein, dass der obige Fehler dabei noch nicht repariert ist?
Nach einem Kaltstart des Raspberry verschwindet das Attribut immer noch.

Gruß,
Friedhelm
Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: zap am 02 Oktober 2022, 16:04:02
Nein, ist noch nicht behoben. Ich kann den Fehler nicht reproduzieren, daher weiß ich noch nicht, woran es liegt.
Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: FFHEM am 02 Oktober 2022, 16:06:22
Danke für die schnelle Antwort!
Bitte melde Dich, falls ich Infos geben kann!
Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: zap am 03 Oktober 2022, 14:24:55
Kannst Du mal schauen, ob im FHEM Log folgende Meldung steht, wenn das Attribut verschwindet:

Invalid value ... for attribute statedatapoint

Titel: Antw:[HMCCU]: Attribut "statedatapoint" von HM-Sen-MDIR-WM55 automatisch gelöscht
Beitrag von: FFHEM am 03 Oktober 2022, 14:37:16
Ja, kommt vor!
Zum Beispiel (habe die Zeile davor noch mit ausgegeben, vielleicht bedeutet dies ja auch etwas!)

2022.10.02 12:21:57 3:  HMCCUDEV [PIRI3] Cannot detect IO device, maybe CCU not ready or device doesn't exist on CCU
2022.10.02 12:21:57 3:  HMCCUDEV [PIRI3] Invalid value 3.MOTION for attribute statedatapoint


Zur Erinnerung: das Attribut verschwindet nur, wenn ich einen Hardwarereset mache (also den Pi neu starte).

Bei einem einfachen FHEM-"shutdown restart" bleibt das Attribut erhalten!