Mit HomematicIP weiter machen

Begonnen von ronzo, 15 Oktober 2020, 12:40:30

Vorheriges Thema - Nächstes Thema

pcbastler

Ich dachte an ein notify (siehe unten), welches bei Änderung des Alarmstate eine Mail schickt. Blöderweise werden die Reading trotz ccuGetVars=60 nicht aktualisiert.


list water_alarm:

Internals:
   CFGFN     
   DEF        HmIP_SWD_00189BE98FF266:.ALARMSTATE:.*
{
my $alarmstate = ReadingsVal( "HmIP_SWD_00189BE98FF266", "ALARMSTATE","0");
my $feuchte = ReadingsVal("HmIP_SWD_00189BE98FF266", "MOISTURE_DETECTED","0");
my $wasser = ReadingsVal("HmIP_SWD_00189BE98FF266", "WATERLEVEL_DETECTED",0);
DebianMail('frank@xxx.yyy',"Alarm vom FHEM System","Alarmstatus: $alarmstate, Feuchte: $feuchte, Wasser: $wasser","");}
   FUUID      5fa174be-f33f-6cf2-a6a9-dc0382992e13d8b0
   NAME       water_alarm
   NOTIFYDEV  HmIP_SWD_00189BE98FF266
   NR         72048
   NTFY_ORDER 50-water_alarm
   REGEXP     HmIP_SWD_00189BE98FF266:.ALARMSTATE:.*
   STATE      active
   TYPE       notify
   Helper:
     DBLOG:
       state:
         logdb:
           TIME       1604428061.85105
           VALUE      active
   READINGS:
     2020-11-03 19:27:41   state           active
Attributes:


Christoph Morrison

Und jetzt noch ein list von HmIP_SWD_00189BE98FF266, bitte.

pcbastler

#32
aber gern: (vorsicht, ist länger)

Internals:
   DEF        00189BE98FF266
   FUUID      5fa046dc-f33f-6cf2-65e5-2a1efb872527c5d9
   IODev      d_ccu
   NAME       HmIP_SWD_00189BE98FF266
   NR         226
   STATE      ???
   TYPE       HMCCUDEV
   ccuaddr    00189BE98FF266
   ccudevstate active
   ccuif      HmIP-RF
   ccuname    HmIP-SWD 00189BE98FF266
   ccutype    HmIP-SWD
   channels   3
   statevals  devstate
   Helper:
     DBLOG:
       0.CONFIG_PENDING:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       0.DUTY_CYCLE:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       0.ERROR_CODE:
         logdb:
           TIME       1604428634.17115
           VALUE      0
       0.ERROR_NON_FLAT_POSITIONING:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       0.INSTALL_TEST:
         logdb:
           TIME       1604428634.17115
           VALUE      true
       0.LOW_BAT:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       0.OPERATING_VOLTAGE:
         logdb:
           TIME       1604428634.17115
           VALUE      0.000000
       0.OPERATING_VOLTAGE_STATUS:
         logdb:
           TIME       1604428634.17115
           VALUE      0
       0.RSSI_DEVICE:
         logdb:
           TIME       1604428634.17115
           VALUE      0
       0.RSSI_PEER:
         logdb:
           TIME       1604428634.17115
           VALUE      0
       0.UNREACH:
         logdb:
           TIME       1604428634.17115
           VALUE      true
       0.UPDATE_PENDING:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       1.ALARMSTATE:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       1.MOISTURE_DETECTED:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       1.WATERLEVEL_DETECTED:
         logdb:
           TIME       1604428634.17115
           VALUE      false
       hmstate:
         logdb:
           TIME       1604428634.17115
           VALUE      unreachable
   READINGS:
     2020-11-03 19:37:14   0.CONFIG_PENDING false
     2020-11-03 19:37:14   0.DUTY_CYCLE    false
     2020-11-03 19:37:14   0.ERROR_CODE    0
     2020-11-03 19:37:14   0.ERROR_NON_FLAT_POSITIONING false
     2020-11-03 19:37:14   0.INSTALL_TEST  true
     2020-11-03 19:37:14   0.LOW_BAT       false
     2020-11-03 19:37:14   0.OPERATING_VOLTAGE 0.000000
     2020-11-03 19:37:14   0.OPERATING_VOLTAGE_STATUS 0
     2020-11-03 19:37:14   0.RSSI_DEVICE   0
     2020-11-03 19:37:14   0.RSSI_PEER     0
     2020-11-03 19:37:14   0.UNREACH       true
     2020-11-03 19:37:14   0.UPDATE_PENDING false
     2020-11-03 19:37:14   1.ALARMSTATE    false
     2020-11-03 19:37:14   1.MOISTURE_DETECTED false
     2020-11-03 19:37:14   1.WATERLEVEL_DETECTED false
     2020-11-03 19:37:14   hmstate         unreachable
   hmccu:
     devspec    00189BE98FF266
     dp:
       0.CONFIG_PENDING:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.DUTY_CYCLE:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.ERROR_CODE:
         OSVAL      0
         OVAL       0
         SVAL       0
         VAL        0
       0.ERROR_NON_FLAT_POSITIONING:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.INSTALL_TEST:
         OSVAL      true
         OVAL       true
         SVAL       true
         VAL        true
       0.LOW_BAT:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.OPERATING_VOLTAGE:
         OSVAL      0.000000
         OVAL       0.000000
         SVAL       0.000000
         VAL        0.000000
       0.OPERATING_VOLTAGE_STATUS:
         OSVAL      0
         OVAL       0
         SVAL       0
         VAL        0
       0.RSSI_DEVICE:
         OSVAL      0
         OVAL       0
         SVAL       0
         VAL        0
       0.RSSI_PEER:
         OSVAL      0
         OVAL       0
         SVAL       0
         VAL        0
       0.UNREACH:
         OSVAL      true
         OVAL       true
         SVAL       true
         VAL        true
       0.UPDATE_PENDING:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       1.ALARMSTATE:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       1.MOISTURE_DETECTED:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       1.WATERLEVEL_DETECTED:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
Attributes:
   IODev      d_ccu
   room       CCU_HM


EDIT: ein manuelles "get update" liefert sofort Werte.

pcbastler

Folgender Workaround hat mit jetzt weitergeholfen:
- Auf der CCU eine Systemvariable "Wasseralarm" definieren
- auf der CCU ein Programm zusammenklicken dass bei Änderung die Variable setzt (wahr/falsch)
- Die Variable wird durch FHEM korrekt im Minutentakt (ccugetvars=60) korrekt ausgelesen, darauf kann jetzt getriggert werden

Evtl. hilft das auch anderen bei Problemen mit HmIP-Geräten...

jhohmann

Dein notify greift auf folgendes zu: HmIP_SWD_00189BE98FF266:.ALARMSTATE:.*
Aber das Reading heißt doch: 1.ALARMSTATE
Damit wird dein notify nie getriggert. Gleiches gilt dann auch für deine ReadingsVal, oder?
Raspberry Pi 4 - bookworm / EnOcean - Rollo+Licht, deCONZ - Licht+Sensoren, ZWave - CO Messung, HMCCU mit piVCCU - Heizung+Rollo
plus dovecot, minidlna

zap

Zitat von: pcbastler am 03 November 2020, 19:35:12
Ich dachte an ein notify (siehe unten), welches bei Änderung des Alarmstate eine Mail schickt. Blöderweise werden die Reading trotz ccuGetVars=60 nicht aktualisiert.

Wenn die Readings nicht aktualisiert werden, ist
- Der RPC Server nicht (richtig) konfiguriert
- Der RPC Server nicht gestartet
- ccureadingfilter falsch gesetzt

ccuGetVars ist nur für das regelmäßige Auslesen der CCU Systemvariablen gedacht.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB