Neues Modul: 22_HOMEMODE.pm - grundlegende Automationen und mehr

Begonnen von DeeSPe, 07 Januar 2017, 15:59:43

Vorheriges Thema - Nächstes Thema

DeeSPe

Zitat von: darkness am 26 Januar 2017, 16:07:33
Hey,

ich habe heute mal ein wenig getestet.

Bei einem anderen HM-SEC-SCo habe ich folgende Attribute getestet:

event-on-change-reading * ist dort ebenfalls gesetzt.

War aber das gleiche Ergebnis. Die Meldung wurde mehr als 2 mal abgesetzt.

Gruß

Den Fehler habe ich nun auch gefunden und gefixt.
Blöd wenn man kurz vor VÖ nochmal eine Funktionerweiterung einbaut und die zu wenig testet.  :-[
Ich wollte nämlich dass eine Kontakt-Offen-Warnung wieder startet wenn HOMEMODE wieder auf einen mode wechselt bei dem gewarnt werden soll. Also z.B. wenn nachts das Fenster offen steht und man dann nach dem Aufstehen vergisst es zu schließen.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

darkness

#151
Ach. Bin zumindest froh, dass es nicht an mir lag  :o

Das führt mich aber zum nächsten Problem.

Ich habe die MotionSensoren mittels

TYPE=CUL_HM:FILTER=model=HM-SEN-MDIR-SM,TYPE=CUL_HM:FILTER=model=HM-Sen-MDIR-WM55:FILTER=chanNo=03

hinzugefügt.

Beiden Außen BM habe ich das Attribut

ZitatHomeModeAlarmActive armhome

hinzugefügt

Aktiviere ich nun in Homemode den Modus armhome erscheinen beide BM als alarmTriggered.

Event-on-change-reading * ist gesetzt.

Entsprechend für armway bei den BM flur.bw.oben_Motion and flur.bw.unten_Motion.




DeeSPe

Zitat von: darkness am 27 Januar 2017, 19:47:46
Ach. Bin zumindest froh, dass es nicht an mir lag  :o

Das führt mich aber zum nächsten Problem.

Ich habe die MotionSensoren mittels

TYPE=CUL_HM:FILTER=model=HM-SEN-MDIR-SM,TYPE=CUL_HM:FILTER=model=HM-Sen-MDIR-WM55:FILTER=chanNo=03

hinzugefügt.

Beiden Außen BM habe ich das Attribut

hinzugefügt

Aktiviere ich nun in Homemode den Modus armhome erscheinen beide BM als alarmTriggered.

Event-on-change-reading * ist gesetzt.

Entsprechend für armway bei den BM flur.bw.oben_Motion and flur.bw.unten_Motion.

Hast Du die entsprechenden Readings und Values vorgegeben (HomeSensorsMotionOpenTamperReadings + HomeSensorsMotionOpenTamperVal)?

Werden denn sonst (außer Alarm) die Bewegungen erkannt?

Das Attribut sollte so gesetzt werden.
attr <name> event-on-change-reading .*
Beachte den . vor dem * !!!

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

darkness

#153
Hallo Dan.

Danke für deine Geduld!

Beim Event-on-change-reading habe ich den Punkt.

HomeSensorsMotionOpenTamperReadings + HomeSensorsMotionOpenTamperVal habe ich nicht befüllt, da diese Readings bei den Sensoren nicht vorhanden sind.



DeeSPe

Zitat von: darkness am 28 Januar 2017, 11:51:38
Hallo Dan.

Danke für deine Geduld!

Beim Event-on-change-reading habe ich den Punkt.

HomeSensorsMotionOpenTamperReadings + HomeSensorsMotionOpenTamperVal habe ich nicht befüllt, da diese Readings bei den Sensoren nicht vorhanden sind.

Diese musst Du aber befüllen wenn sie vom Default abweichen! Sonst weiß doch das Modul nicht in welchen Readings und nach welchen Werten es schauen soll!

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

darkness

#155
Ähh, jetzt stehe ich auf dem Schlauch.

Ich möchte doch die Bewegung erkennen. Nicht die Sabotage.

Internals:
   DEF        4CD00C
   HMLAN1_MSGCNT 5
   HMLAN1_RAWMSG E4CD00C,0000,70F5F27C,FF,FF9C,24A0104CD00CBBA0AA0202010ABB0BA00CAA0000
   HMLAN1_RSSI -100
   HMLAN1_TIME 2017-01-28 11:58:41
   HMUSB_MSGCNT 37
   HMUSB_RAWMSG E4CD00C,0000,85CF5F02,FF,FFAE,27A6414CD00CBBA0AA01F43E70
   HMUSB_RSSI -82
   HMUSB_TIME 2017-01-28 12:17:59
   IODev      HMUSB
   LASTInputDev HMUSB
   MSGCNT     42
   NAME       aussen.bm.treppe
   NOTIFYDEV  global
   NR         196
   NTFY_ORDER 50-aussen.bm.treppe
   STATE      noMotion
   TYPE       CUL_HM
   lastMsg    No:27 - t:41 s:4CD00C d:BBA0AA 01F43E70
   protLastRcv 2017-01-28 12:17:59
   protSnd    68 last_at:2017-01-28 12:17:59
   protState  CMDs_done
   rssi_at_HMLAN1 min:-103 avg:-100.6 cnt:5 max:-98 lst:-100
   rssi_at_HMUSB avg:-83.43 min:-89 cnt:37 max:-81 lst:-82
   Readings:
     2016-12-02 13:39:58   D-firmware      1.6
     2016-12-02 13:39:58   D-serialNr      NEQ0416942
     2017-01-28 11:58:41   PairedTo        0xBBA0AA
     2016-11-20 12:53:16   R-brightFilter  7
     2016-11-20 12:53:16   R-captInInterval off
     2016-11-20 12:53:16   R-evtFltrNum    5
     2016-11-20 12:53:16   R-evtFltrPeriod 1 s
     2016-11-20 12:53:16   R-ledOnTime     0 s
     2016-11-20 12:53:16   R-minInterval   120
     2016-11-20 12:53:16   R-pairCentral   0xBBA0AA
     2016-11-20 12:53:16   R-sign          off
     2017-01-28 12:17:59   brightness      62
     2017-01-28 12:20:01   motion          off
     2017-01-28 12:17:59   motionCount     244_next:120s
     2017-01-28 12:20:01   motionDuration  122
     2017-01-28 12:20:01   state           noMotion
     2017-01-28 12:17:59   trigger_cnt     244
   Helper:
     HM_CMDNR   39
     cSnd       01BBA0AA4CD00C01040000000001,01BBA0AA4CD00C0103
     mId        004F
     peerIDsRaw ,00000000
     rxType     28
     supp_Pair_Rep 0
     Ack:
     Expert:
       def        1
       det        1
       raw        0
       tpl        0
     Io:
       newCh      1
       newChn     +4CD00C,00,01,00
       nextSend   1485602279.38161
       rxt        2
       vccu       vccu
       p:
         4CD00C
         00
         01
         00
       prefIO:
         HMUSB
     Mrssi:
       mNo        27
       Io:
         HMUSB      -80
     Prt:
       bErr       0
       sProc      0
       sleeping   0
       Rspwait:
     Q:
       qReqConf
       qReqStat
     Role:
       chn        1
       dev        1
     Rpt:
       IO         HMUSB
       flg        A
       ts         1485602279.28295
       ack:
         HASH(0xb3eab10)
         278002BBA0AA4CD00C01013E00
         HASH(0xb3eab10)
         278002BBA0AA4CD00C00
     Rssi:
       At_hmlan1:
         avg        -100.6
         cnt        5
         lst        -100
         max        -98
         min        -103
       At_hmusb:
         avg        -83.4324324324324
         cnt        37
         lst        -82
         max        -81
         min        -89
     Shadowreg:
     Tmpl:
Attributes:
   HomeModeAlarmActive armhome
   HomeSensorLocation outside
   IODev      HMLAN1
   IOgrp      vccu:HMUSB
   autoReadReg 4_reqStatus
   event-on-change-reading .*
   expert     1_allReg
   firmware   1.6
   model      HM-SEN-MDIR-SM
   peerIDs    00000000,
   room       aussen
   serialNr   NEQ0416942
   subType    motionDetector
   userattr   HomeModeAlarmActive HomeOpenTamperReadings HomeOpenTamperVal HomeSensorLocation:inside,outside


ZitatHomeOpenTamperReadings
2 space separated readings for motion sensors open/closed state and tamper alert
this is the device setting which will override the global setting from attribute HomeSensorsMotionOpenTamperReadings from the HOMEMODE device
default: state sabotageError


Edit:
Ah, jetzt verstanden.

HomeSensorsMotionOpenTamperReadings
Dabei werden beide Werte erfasst. Einmal der für die Bewegung und dann der für Sabotage.

HomeSensorsMotionOpenTamperVal
Die jeweiligen Werte


DeeSPe

Zitat von: darkness am 28 Januar 2017, 13:05:15
Ähh, jetzt stehe ich auf dem Schlauch.

Ich möchte doch die Bewegung erkennen. Nicht die Sabotage.

Das sind kombinierte Attribute!
ZitatHomeSensorsMotionOpenTamperReadings
2 space separated readings for motion sensors open/closed state and tamper alert
this is the global setting, you can also set these readings in each motion sensor individually in attribute HomeOpenTamperReadings once they are added to the HOMEMODE device
default: state sabotageError

HomeSensorsMotionOpenTamperVal
regex of open and tamper values for motion sensors
this is the global setting, you can also set these values in each contact sensor individually in attribute HomeOpenTamperVal once they are added to the HOMEMODE device
default: open|on

Ich nehme an dass das Reading für MotionOpen (state) schon mal mit dem default übereinstimmt.
Als Wert sehe ich laut list gerade "noMotion". Was steht denn bei Bewegung drin? motion oder Motion? Das muss dann bei HomeSensorsMotionOpenTamperVal an erste Stelle.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

darkness

#157
Ja, nach dem dritten mal lesen habe ich es auch gesehen  :P

Mich hatte das Wort "Tamper" verwirrt.

Für die Nachwelt:

So muss es dann aussehen:
HomeOpenTamperVal motion


DeeSPe

Zitat von: darkness am 28 Januar 2017, 13:13:56
Ja, nach dem dritten mal lesen habe ich es auch gesehen  :P

Mich hatte das Wort "Tamper" verwirrt.

Für die Nachwelt:

So muss es dann aussehen:
HomeOpenTamperVal motion

Wenn es bei allen bzw. der Mehrzahl der Sensoren gleich ist, dann kannst Du das auch bequem in "HomeSensorsMotionOpenTamperVal" setzen. Bei denen wo es dann abweicht kannst Du es direkt im Device mit "HomeOpenTamperVal" setzen und damit überschreiben.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

binford6000

Hi Dan,

ich möchte morgens eine Pushnachricht mit FHEM-Updates geschickt bekommen.
Habe das so gelöst:

attr Wohnung HomeCMDdaytime-morning {
  my $a = `wget -qO - http://fhem.de/fhemupdate4/svn/controls_fhem.txt | cat - FHEM/controls_fhem.txt | sort | uniq -u | cut -d " " -f 4 | uniq`."-";; fhem ("set fhemBot msg Folgende Updates sind vorhanden: $a")
}


Allerdings wird nichts ausgelöst. Verwende ich jedoch HomeCMDdnd-on

attr Wohnung HomeCMDdnd-on {
  my $a = `wget -qO - http://fhem.de/fhemupdate4/svn/controls_fhem.txt | cat - FHEM/controls_fhem.txt | sort | uniq -u | cut -d " " -f 4 | uniq`."-";; fhem ("set fhemBot msg Folgende Updates sind vorhanden: $a")
}


bekomme ich eine Nachricht. Was mache ich falsch?

VG Sebastian

ComputerZOO

Moin, scheint das selbe, bzw. ein ähnliches Problem zu sein, das ich mit den Locations habe. Den Fehler hat Dan im Post #148 bestätigt. Er sollte wohl mit dem nächsten Update behoben sein. (Ich warte auch schon sehnsüchtig darauf).

binford6000

Zitat von: ComputerZOO am 29 Januar 2017, 11:26:29
Moin, scheint das selbe, bzw. ein ähnliches Problem zu sein, das ich mit den Locations habe. Den Fehler hat Dan im Post #148 bestätigt. Er sollte wohl mit dem nächsten Update behoben sein. (Ich warte auch schon sehnsüchtig darauf).
Danke für die Info!
VG Sebastian



Gesendet von iPad mit Tapatalk

DeeSPe

Zitat von: binford6000 am 29 Januar 2017, 11:21:25
Hi Dan,

ich möchte morgens eine Pushnachricht mit FHEM-Updates geschickt bekommen.
Habe das so gelöst:

attr Wohnung HomeCMDdaytime-morning {
  my $a = `wget -qO - http://fhem.de/fhemupdate4/svn/controls_fhem.txt | cat - FHEM/controls_fhem.txt | sort | uniq -u | cut -d " " -f 4 | uniq`."-";; fhem ("set fhemBot msg Folgende Updates sind vorhanden: $a")
}


Allerdings wird nichts ausgelöst. Verwende ich jedoch HomeCMDdnd-on

attr Wohnung HomeCMDdnd-on {
  my $a = `wget -qO - http://fhem.de/fhemupdate4/svn/controls_fhem.txt | cat - FHEM/controls_fhem.txt | sort | uniq -u | cut -d " " -f 4 | uniq`."-";; fhem ("set fhemBot msg Folgende Updates sind vorhanden: $a")
}


bekomme ich eine Nachricht. Was mache ich falsch?

VG Sebastian

Das müsste funktionieren!
Wird denn das Reading daytime richtig aktualisiert?
Ich habe leider feststellen müssen dass manchmal (ich weiß noch nicht warum und analysiere das noch) die Update Funktion offensichtlich stehen bleibt. Das äußert sich darin dass eben das Reading daytime und auch state sowie das devStateIcon nicht aktualisiert werden und dementsprechend auch die HomeCMDdaytime Attribute nicht ausgeführt werden.
Nach einem "set <HOMEMODE> updateInternalsForce" bzw. "shutdown restart" sollte es wieder (eine Weile) laufen. ;)

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

binford6000

Okay ich werde es mal beobachten.
VG Sebastian


Gesendet von iPad mit Tapatalk

DeeSPe

Ich denke die aktualisierte Version wäre bereit für Euch!
Nun traue ich mich gar nicht recht die hochzuladen, es gibt einige Veränderungen und ich weiß noch nicht ob die wirklich gut sind!
Vielleicht sollte ich nochmal eine Nacht drüber schlafen und vor allem noch einen Tag länger im Live System testen.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe