FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: the ratman am 17 August 2016, 11:26:28

Titel: simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: the ratman am 17 August 2016, 11:26:28
derzeit bastel ich mir grade div. "regenschutz"-aktionen zusammen.
dazu will ich ganz simpel ein doif verwenden und zwar dieses:
## Kein Regen

(
   [?06:00-22:00]
   and
   [SR_Regen_Terrasse_Regen] eq "dry"
   and
   [Hitzeschutz_OnOff] eq "off"
)

(
   set SZ_Terrasse_Rollo pct 98;
)



DOELSEIF ## Rollo Schlafzimmer bei Regen schließen wenn Schiebetüre offen

(
   [SR_Regen_Terrasse_Regen] eq "rain"
   and
   [MK_Schlafzimmer_Fenster:sabotageError] eq "on"
)

(
   set SZ_Terrasse_Rollo on;
)


so, wenn es regnet funzt alles - also cmd_2 ist kein problem.
allerdings will er mir bei trockenheit partout nicht mit cmd_1 beginnen.
die bedienungen Hitzeschutz_OnOff   off   dummy
MK_Schlafzimmer_Fenster   open   CUL_HM (anm.: auch der passt, weil hier der state dargestellt wird, aber ich ja den sabo-kontakt für verwende)
SR_Regen_Terrasse_Regen   dry   CUL_HM
SZ_Terrasse_Rollo   on   CUL_HM
stimmen alle, aber es passiert einfach mal gar nix.
einziger weiterer eintrag wäre ein cmdpuause gewesen, den ich aber jetzt sogar schon draussen hab.
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: rubbertail am 17 August 2016, 12:30:50
Klappts denn beim Wechsel von nass auf trocken?

Soweit ich verstanden habe, brauchts auch bei DOIF nen Event... und wenn du zB nur Events-on-change-reading gesetzt haben solltest und der Status bei DOIF-Definition schon "trocken" ist, triggerts halt nicht.

Ich frag so doof, weil mir das schonmal so passiert ist - vermutlich ZU doof... bei mir half dann ein

attr <DoIfName> do always

Aber vielleicht denk ich grad zu simpel.
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: the ratman am 17 August 2016, 13:31:11
vielleicht auch nicht *g*
ich hab jetzt mal auf do alwas gestellt und halt cmdpause wieder mit eingebaut - mal gucken.

nö, auch ein do alwas mit oder ohne cmdpause machts ....
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: kumue am 17 August 2016, 13:40:12
vielleicht mal ein list vom DOIF posten...
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: the ratman am 17 August 2016, 13:48:01
hab ich doch oben - gut, kein list, aber ich hab auch nix unterschlagen


jetzt kommt übrigens der gag: wenn ich dem regensensor seine readings lösche und selbige neu einlesen, dann gehts.
ich krieg echt noch die kreise, wei lheute vormittag hat er nix getan.

nachtrag: nochmal getestet - ich glaubs nicht:
1) lösch ich im regensensor die readings und les sie neu ein --> funzt
2) mach ich den sensor nass und lass ihn trocken --> 0 reaktion
ich hab mir extra noch ein doif gemacht, dass mit regen/trocken sagt, das funzt
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: errazzor am 17 August 2016, 13:54:15
Kann es an dem "?" liegen in "[?06:00-22:00]" ?

Probier es mal ohne.
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: kumue am 17 August 2016, 13:57:16
Zitat von: errazzor am 17 August 2016, 13:54:15
Kann es an dem "?" liegen in "[?06:00-22:00]" ?

Probier es mal ohne.

denke ich nicht...


irgendwelche event-.... Attribute beim Regensensor gesetzt ?
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: the ratman am 17 August 2016, 14:05:33
nix - das macht mich ja so fertig - ich probier eben die event_on_xxx aus.
ich merk übrigens grade: auch die heizung des sensors schaltet per doif brav beim regen mit

zur sicherheit der sensor mal ..
der sensor selber:Internals:
   DEF        24E49C
   HMLan_MSGCNT 164
   HMLan_RAWMSG E24E49C,0000,3DD165C0,FF,FFC1,1BA04124E49C24F603010700
   HMLan_RSSI -63
   HMLan_TIME 2016-08-17 13:59:50
   HMUSB_MSGCNT 138
   HMUSB_RAWMSG E24E49C,0000,5628FBF5,FF,FFB6,1BA04124E49C24F603010700
   HMUSB_RSSI -74
   HMUSB_TIME 2016-08-17 13:59:50
   IODev      HMLan
   LASTInputDev HMUSB
   MSGCNT     302
   NAME       SR_Regen_Terrasse
   NOTIFYDEV  global
   NR         521
   NTFY_ORDER 50-SR_Regen_Terrasse
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 SR_Regen_Terrasse_Regen
   channel_02 SR_Regen_Terrasse_Heizung
   lastMsg    No:1B - t:41 s:24E49C d:24F603 010700
   protLastRcv 2016-08-17 13:59:50
   protResnd  3 last_at:2016-08-17 11:03:00
   protSnd    66 last_at:2016-08-17 13:56:47
   protState  CMDs_done
   rssi_HMLan max:-48 avg:-50.5 cnt:6 lst:-54 min:-54
   rssi_at_HMLan lst:-63 min:-64 max:-50 avg:-58.81 cnt:164
   rssi_at_HMUSB max:-56 avg:-67.28 cnt:138 lst:-74 min:-77
   Readings:
     2016-08-17 08:23:53   Activity        alive
     2016-06-22 17:17:03   CommandAccepted yes
     2016-06-22 16:37:28   D-firmware      1.4
     2016-06-22 16:37:28   D-serialNr      KEQ1070642
     2016-08-09 08:05:54   PairedTo        0x322433
     2016-06-22 16:37:47   R-pairCentral   0x322433
     2016-08-09 08:05:54   RegL_00.        02:01 0A:32 0B:24 0C:33 14:06 18:00 00:00
     2016-08-16 11:46:10   powerOn         2016-08-16 11:46:10
     2016-08-17 13:56:47   state           CMDs_done
   Helper:
     HM_CMDNR   27
     cSnd       0132243324E49C010424F61A0104,1132243324E49C0202C80000
     mId        00A7
     rxType     1
     Ack:
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Io:
       newChn     +24E49C,00,00,00
       nextSend   1471435190.1175
       rxt        0
       vccu       HomeMatic
       p:
         24E49C
         00
         00
         00
       prefIO:
         HMLan
     Mrssi:
       mNo        1B
       Io:
         HMLan      -61
         HMUSB      -74
     Prt:
       bErr       0
       sProc      0
       Rspwait:
     Q:
       qReqConf
       qReqStat
     Role:
       dev        1
     Rssi:
       Hmlan:
         avg        -50.5
         cnt        6
         lst        -54
         max        -48
         min        -54
       At_hmlan:
         avg        -58.8170731707317
         cnt        164
         lst        -63
         max        -50
         min        -64
       At_hmusb:
         avg        -67.2898550724638
         cnt        138
         lst        -74
         max        -56
         min        -77
     Tmpl:
Attributes:
   IODev      HMLan
   IOgrp      HomeMatic:HMLan
   actCycle   028:00
   actStatus  alive
   alias      Terrasse Sensor (Regen)
   autoReadReg 4_reqStatus
   expert     2_raw
   firmware   1.4
   group      HW
   icon       IcoMoon/im_droplet
   model      HM-Sen-RD-O
   room       HomeMatic
   serialNr   KEQ1070642
   subType    sensRain
   webCmd     getConfig:clear msgEvents
der regen-aktorInternals:
   DEF        24E49C01
   NAME       SR_Regen_Terrasse_Regen
   NOTIFYDEV  global
   NR         522
   NTFY_ORDER 50-SR_Regen_Terrasse_Regen
   STATE      dry
   TYPE       CUL_HM
   chanNo     01
   device     SR_Regen_Terrasse
   peerList   24F5FA01,24F60301,24F61A01,
   Readings:
     2016-08-17 13:53:29   R-24F5FA01-expectAES off
     2016-08-17 13:53:29   R-24F5FA01-peerNeedsBurst off
     2016-08-17 13:53:30   R-24F60301-expectAES off
     2016-08-17 13:53:30   R-24F60301-peerNeedsBurst off
     2016-08-17 13:53:30   R-24F61A01-expectAES off
     2016-08-17 13:53:30   R-24F61A01-peerNeedsBurst off
     2016-08-17 13:53:28   R-sign          off
     2016-08-17 13:53:28   RegL_01.          08:00 22:64 23:00 30:06 87:0B 88:54 8B:0B 8C:22  8F:3C 91:82 00:00
     2016-08-17 13:53:29   RegL_04.24F5FA01   01:00 00:00
     2016-08-17 13:53:30   RegL_04.24F60301   01:00 00:00
     2016-08-17 13:53:30   RegL_04.24F61A01   01:00 00:00
     2016-08-17 13:59:59   lastRain        2016-08-17 13:56:47
     2016-08-17 13:53:29   peerList        24F5FA01,24F60301,24F61A01,
     2016-08-17 13:59:59   recentStateType info
     2016-08-17 13:59:59   state           dry
     2016-08-17 13:59:59   timedOn         off
     2016-08-17 13:59:58   trigger         7:dry (to 24F603)
     2016-08-17 13:59:58   trigger_cnt     7
   Helper:
     peerIDsRaw ,24F61A01,24F5FA01,24F60301,00000000
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Role:
       chn        1
     Shadowreg:
     Tmpl:
Attributes:
   alias      Regensensor Terrasse Regenanzeige
   devStateIcon dry:dry@gray rain:humidity@blue .*:Zsvg/settings@orange
   fp_Grundriss 133,11,0,SR_Regen_Terrasse_Regen,
   fp_Quer    17,32,0,SR_Regen_Terrasse_Regen,
   fp_QuerWetter 40,1852,1,Regen?,
   fp_Terrasse 155,272,0,SR_Regen_Terrasse_Regen,
   fp_handy   563,762,0,SR_Regen_Terrasse_Regen,
   group      Sensor
   icon       IcoMoon/im_droplet
   model      HM-Sen-RD-O
   peerIDs    00000000,24F5FA01,24F60301,24F61A01,
   room       HomeMatic



nachtrag: ich glaub, ich habs gefunden
mit einem "event-on-update-reading 1" funzt die sache - allerdings frag ich mich warum ich das auf einmal brauch? ich hab kein einziges doif am laufen, in dem ich den befehl aktiv hab.
ich bin grad stark verwirrt - vor allem, weil dry/rain in 2 anderen doif's problemlos triggert
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: kumue am 17 August 2016, 14:43:24
Zitat von: the ratman am 17 August 2016, 14:05:33

nachtrag: ich glaub, ich habs gefunden
mit einem "event-on-update-reading 1" funzt die sache - allerdings frag ich mich warum ich das auf einmal brauch? ich hab kein einziges doif am laufen, in dem ich den befehl aktiv hab.
ich bin grad stark verwirrt - vor allem, weil dry/rain in 2 anderen doif's problemlos triggert

"event-on-update-reading 1" heißt ja nicht, 1 = gesetzt, 0 = nicht gesetzt...
Die "1" wäre ja das Reading

Aus commandref
Zitat
event-on-update-reading
Wenn nicht gesetzt, erzeugt jede Veränderung eines "readings" ein Ereignis, welches z.B. von notify oder FileLog berücksichtigt wird. Wenn gesetzt erzeugen nur Aktualisierungen der eingetragenen "readings" ein Ereignis.
Titel: Antw:simples doif mag nicht funktionieren - was übersehe ich?
Beitrag von: the ratman am 17 August 2016, 14:48:41
drum ja auch mein "stark verwirrt"