FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: desmoloch am 20 Januar 2016, 09:30:30

Titel: DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 20 Januar 2016, 09:30:30
Hallo,

ich versuche derzeit die desired-temp an meiner Homematic Steuerung (TC) an die Heizung weiterzugeben. (Hintergrund: Wenn ich peere, wird die Ist Temp der Steuerung genommen. Das möchte ich nicht)
Daher versuche ich gerade die Temperatur per DOIF zu setzen. Die aktuelle Temperatur der Steuerung wird in einen dummy geschrieben:
define FL_Steuerung_desiredTemp_di DOIF ([FL_Steuerung_Climate:?desired-temp] != [FL_Steuerung_desiredTemp_dummy:state])
(set FL_Steuerung_desiredTemp_dummy [FL_Steuerung_Climate:desired-temp],
set AZ_Heizung_Clima desired-temp [FL_Steuerung_desiredTemp_dummy:state])

Das Attribut DO steht auf ALWAYS. Das SET der desired-temp sollte ja nur ausgeführen werden, wenn die desired-temp und mein dummy nicht mehr identisch sind (es hat also jemand die Steuerung betätigt).
Was passiert: Mein dummy wird immer auf den korrekten STATE gesetzt (19.0, 18,5 ect...). Allerdings wird das SET auch alle paar Minuten ausgeführt:
2016.01.17 23:11:07 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:11:07 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:12:28 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:12:38 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:14:42 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:17:03 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0

Verstehe nur leider nicht warum?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: juergen012 am 20 Januar 2016, 09:50:29
hallo, ich sende die desiredTemperature eines MAX! Wandthermostaten an meine HM Heizungsthermostaten:
([MAX_04c0ea:desiredTemperature]) (set HM_422A9A_Clima desired-temp [MAX_04c0ea:desiredTemperature])

damit nur die Änderungen gesendet werden habe ich beim Wandthermostaten  attr MAX_04c0ea event-on-change-reading state
eingetragen
Gruß
Jürgen K.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 20 Januar 2016, 10:20:52
Habe ich auch an meiner Steuerung eingestellt:
event-on-change-reading
battery,batteryLevel,desired-temp,measured-temp,state


Aber ich möchte die desired-temp ja nicht ständig an meine Heizung senden, nur bei Änderungen. Daher das DOIF.

Kurze Frage zu deiner Einrichtung: Warum hast du nur state in deinem event-on-change-reading? Bei dir wird wahrscheinlich alle paar Minuten ein set ausgeführt? Genau das möchte ich ja nicht, da unsinnig.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 21 Januar 2016, 10:20:59
Hat vielleicht noch jemand eine Idee?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 21 Januar 2016, 10:59:42
Zitat von: desmoloch am 20 Januar 2016, 09:30:30
Hallo,

ich versuche derzeit die desired-temp an meiner Homematic Steuerung (TC) an die Heizung weiterzugeben. (Hintergrund: Wenn ich peere, wird die Ist Temp der Steuerung genommen. Das möchte ich nicht)
Daher versuche ich gerade die Temperatur per DOIF zu setzen. Die aktuelle Temperatur der Steuerung wird in einen dummy geschrieben:
define FL_Steuerung_desiredTemp_di DOIF ([FL_Steuerung_Climate:?desired-temp] != [FL_Steuerung_desiredTemp_dummy:state])
(set FL_Steuerung_desiredTemp_dummy [FL_Steuerung_Climate:desired-temp],
set AZ_Heizung_Clima desired-temp [FL_Steuerung_desiredTemp_dummy:state])

Das Attribut DO steht auf ALWAYS. Das SET der desired-temp sollte ja nur ausgeführen werden, wenn die desired-temp und mein dummy nicht mehr identisch sind (es hat also jemand die Steuerung betätigt).
Was passiert: Mein dummy wird immer auf den korrekten STATE gesetzt (19.0, 18,5 ect...). Allerdings wird das SET auch alle paar Minuten ausgeführt:
2016.01.17 23:11:07 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:11:07 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:12:28 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:12:38 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:14:42 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0
2016.01.17 23:17:03 3: CUL_HM set AZ_Heizung_Clima desired-temp 19.0

Verstehe nur leider nicht warum?

Du benutzt hier mit [FL_Steuerung_Climate:?desired-temp] ein Ereignis, das ist immer nur logisch "wahr" oder "falsch", daher wird bei jedem Ereignis getriggert, denn die Dummytemperatur ist immer ungleich "wahr" oder "falsch". Du müsstest das Reading "desired-temp" abfragen, s. http://fhem.de/commandref_DE.html#DOIF_Zeitintervalle_Readings_und_Stati_ohne_Trigger vergleiche http://fhem.de/commandref_DE.html#DOIF_Ereignissteuerung_ueber_Auswertung_von_Events , also so  [?FL_Steuerung_Climate:desired-temp]
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 23 Januar 2016, 19:16:53
Zitat von: Ellert am 21 Januar 2016, 10:59:42
Du benutzt hier mit [FL_Steuerung_Climate:?desired-temp] ein Ereignis, das ist immer nur logisch "wahr" oder "falsch", daher wird bei jedem Ereignis getriggert, denn die Dummytemperatur ist immer ungleich "wahr" oder "falsch". Du müsstest das Reading "desired-temp" abfragen, s. http://fhem.de/commandref_DE.html#DOIF_Zeitintervalle_Readings_und_Stati_ohne_Trigger vergleiche http://fhem.de/commandref_DE.html#DOIF_Ereignissteuerung_ueber_Auswertung_von_Events , also so  [?FL_Steuerung_Climate:desired-temp]

Ah ok super danke. Mit ? ist immer das Event gemeint. Ich wollte aber das Reading. Hier mein DOIF:
define FL_Steuerung_desiredTemp_di DOIF ([FL_Steuerung_Climate:desired-temp] != [FL_Steuerung_desiredTemp_dummy:state])
(set FL_Steuerung_desiredTemp_dummy [FL_Steuerung_Climate:desired-temp],
set AZ_Heizung_Clima desired-temp [FL_Steuerung_desiredTemp_dummy:state])

Einfach nur ? weglassen, dann klappt es.
Nur was ich jetzt noch nicht verstehe: Was willst du mir mit [?FL_Steuerung_Climate:desired-temp] sagen? Das Fragezeichen vorne bedeutet laut commandref:
Angaben in eckigen Klammern, die mit einem Fragezeichen beginnen, führen zu keiner Triggerung des Moduls, sie dienen lediglich der Abfrage.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 23 Januar 2016, 20:28:29
ZitatWas willst du mir mit [?FL_Steuerung_Climate:desired-temp] sagen?
Das war als Hinweis gedacht, falls Du mit [FL_Steuerung_Climate:?desired-temp] nicht triggern wolltest, dann müsstest Du [?FL_Steuerung_Climate:desired-temp] benutzen.

Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 23 Januar 2016, 20:52:51
Zitat von: Ellert am 23 Januar 2016, 20:28:29
Das war als Hinweis gedacht, falls Du mit [FL_Steuerung_Climate:?desired-temp] nicht triggern wolltest, dann müsstest Du [?FL_Steuerung_Climate:desired-temp] benutzen.

hm ok. Müsste es dann aber nicht [?FL_Steuerung_Climate:?desired-temp] sein wenn ich das Event nicht triggern lassen will? [?FL_Steuerung_Climate:desired-temp] würde das Reading abfragen (ohne das es triggert), sofern ich das recht verstehe.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 24 Januar 2016, 13:23:42
ZitatMüsste es dann aber nicht [?FL_Steuerung_Climate:?desired-temp] sein wenn ich das Event nicht triggern lassen will?
Meinst Du das ist sinnvoll?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 24 Januar 2016, 16:35:13
Zitat von: Ellert am 24 Januar 2016, 13:23:42
Meinst Du das ist sinnvoll?
Nein das will ich auch nicht, ist ja nicht sinnvoll. Versuche nur deinen Hinweis zu verstehen. Du sagtest ich könnte [?FL_Steuerung_Climate:desired-temp] statt [FL_Steuerung_Climate:?desired-temp] benutzen, wenn ich nicht triggern möchte. Wäre nicht aber [?FL_Steuerung_Climate:?desired-temp] korrekt?

Gruß
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 24 Januar 2016, 17:31:54
Zitat[?FL_Steuerung_Climate:?desired-temp]
bedeutet: "Triggere nicht auf einen Event" und das ist, in diesem
Zitat[FL_Steuerung_Climate:?desired-temp] != [FL_Steuerung_desiredTemp_dummy:state]
Zusammenhang, Unsinn.

1. Fragezeichen bedeutet: nicht triggern
2. Fragezeichen bedeutet: trigger auf ein Event
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 06 Februar 2016, 18:13:40
Leider bekommt mein dummy nicht immer die richtige Temp gesetzt. Auch wenn die Desiredtemp ungleich ist, schlägt das DOIF anscheinend nicht richtig zu. State hat dann oft den falschen wert. Kann ich das DOIF irgendwie protokollieren?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 07 Februar 2016, 06:53:26
Der Grund könnte darin liegen, dass
ZitatBei Devices, die mit Zwischenzuständen arbeiten, insbesondere HM-Komponenten (Zwischenzustand: set_on, set_off), sollte die Definition möglichst genau formuliert werden, um unerwünschte Effekte zu vermeiden
nicht beachtet wird, s. http://fhem.de/commandref_DE.html#DOIF_Zu_beachten
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 07 Februar 2016, 09:20:25
Hm verstehe ich nicht warum es daran liegen soll. Die desired-temp hat ja nie ein set_on oder set_off. Das set wird im State des Thermostates hinterlegt, ich Frage ja das Reading desired-temp ab. Selbst wenn,  die Abfrage im DOIF ist ja ob mein dummy ungleich desired-temp ist. Ein Fehler von wegen not a Number oder in der Richtung gibt es im Log nicht.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 07 Februar 2016, 12:10:11
Aber set_<Wert> und das ist nicht numerisch.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 07 Februar 2016, 18:04:08
Zitat von: Ellert am 07 Februar 2016, 12:10:11
Aber set_<Wert> und das ist nicht numerisch.

Und wann sollte set_<Wert> in meiner DOIF Abfrage vorkommen? Ich frage das Reading ab, dort gibt es das nicht. Was ist denn deiner Meinung nach falsch an meinem DOIF?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 07 Februar 2016, 18:21:50
Poste mal ein Listing der beteiligten Geräte.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 07 Februar 2016, 20:44:47
Zitat von: Ellert am 07 Februar 2016, 18:21:50
Poste mal ein Listing der beteiligten Geräte.

List AZ_Heizung:

Internals:
   CHANGED
   DEF        22C67F
   HMLAN1_MSGCNT 10317
   HMLAN1_RAWMSG E22C67F,0000,6B9A9DAA,FF,FFCF,84861022C67F0000000A9CD10C0662
   HMLAN1_RSSI -49
   HMLAN1_TIME 2016-02-07 20:34:49
   IODev      HMLAN1
   LASTInputDev HMLAN1
   MSGCNT     10317
   NAME       AZ_Heizung
   NR         55
   NTFY_ORDER 50-AZ_Heizung
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 AZ_Heizung_Weather
   channel_02 AZ_Heizung_Climate
   channel_03 AZ_Heizung_WindowRec
   channel_04 AZ_Heizung_Clima
   channel_05 AZ_Heizung_ClimaTeam
   channel_06 AZ_Heizung_remote
   lastMsg    No:84 - t:10 s:22C67F d:000000 0A9CD10C0662
   protCondBurst on
   protLastRcv 2016-02-07 20:34:49
   protResnd  1 last_at:2016-01-21 12:00:31
   protSnd    236 last_at:2016-02-07 16:48:56
   protState  CMDs_done
   rssi_at_HMLAN1 cnt:10317 min:-66 avg:-47.56 lst:-49 max:-41
   Readings:
     2016-01-20 23:56:36   Activity        alive
     2016-02-07 16:48:56   CommandAccepted yes
     2014-12-14 12:11:45   D-firmware      1.1
     2014-12-14 12:11:45   D-serialNr      KEQ0730132
     2016-01-16 00:20:06   PairedTo        0x2573A2
     2014-12-14 12:06:37   R-backOnTime    10 s
     2016-01-16 00:20:06   R-burstRx       on
     2014-12-14 18:12:50   R-cyclicInfoMsg on
     2014-12-14 18:12:50   R-cyclicInfoMsgDis 0
     2014-12-14 18:12:50   R-pairCentral   0x2573A2
     2016-01-18 06:38:17   RegL_00.        01:01 02:01 09:01 0A:25 0B:73 0C:A2 0E:0A 0F:00 11:00 12:15 16:00 18:00 19:00 1A:00 00:00
     2016-01-16 14:47:57   RegL_07.
     2016-02-07 20:34:49   actuator        6
     2016-02-07 20:34:49   battery         ok
     2016-02-07 20:34:49   batteryLevel    2.7
     2016-02-07 16:25:29   controlMode     manual
     2016-02-07 20:34:49   desired-temp    19.5
     2016-02-07 20:34:49   measured-temp   20.9
     2016-02-07 20:34:49   motorErr        ok
     2016-02-07 16:48:56   state           CMDs_done
     2016-02-07 10:05:10   time-request    -
   Helper:
     HM_CMDNR   132
     PONtest    1
     cSnd       112573A222C67F860427,112573A222C67F860427
     mId        0095
     rxType     140
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Io:
       newChn     +22C67F,00,00,00
       nextSend   1454873689.8322
       prefIO
       rxt        2
       vccu
       p:
         22C67F
         00
         00
         00
     Mrssi:
       mNo        84
       Io:
         HMLAN1     -47
     Prt:
       awake      0
       bErr       0
       brstWu     0
       sProc      0
       sleeping   1
       Rspwait:
     Q:
       qReqConf
       qReqStat
     Role:
       dev        1
       prs        1
     Rssi:
       At_hmlan1:
         avg        -47.562275855384
         cnt        10317
         lst        -49
         max        -41
         min        -66
     Shregw:
       07         04
     Shadowreg:
Attributes:
   IODev      HMLAN1
   actCycle   000:10
   actStatus  alive
   alias      Heizung Arbeitszimmer
   autoReadReg 4_reqStatus
   burstAccess 1_auto
   event-on-change-reading battery,batteryLevel,desired-temp,measured-temp,motorErr,actuator,state
   expert     2_full
   firmware   1.1
   model      HM-CC-RT-DN
   room       Arbeitszimmer
   serialNr   KEQ0730132
   subType    thermostat
   webCmd     getConfig:clear msgEvents:burstXmit 


List FL_Steuerung_Climate:
ternals:
   CHANGED
   DEF        31420702
   NAME       FL_Steuerung_Climate
   NR         75
   NTFY_ORDER 50-FL_Steuerung_Climate
   STATE      T: 19.2 desired: 19.5
   TYPE       CUL_HM
   chanNo     02
   device     FL_Steuerung
   peerList   SZ_Heizung_Climate,KZ_Heizung_Climate,
   Readings:
     2016-02-05 21:49:16   CommandAccepted yes
     2015-03-01 21:56:33   R-dayTemp       21 C
     2015-03-01 21:56:33   R-daylightSaveTime on
     2015-03-01 21:56:33   R-heatCool      heating
     2015-03-01 21:56:33   R-hyst2point    0.4 C
     2015-03-01 21:56:33   R-modePrioManu  all
     2015-03-01 21:56:33   R-modePrioParty all
     2015-03-01 21:56:33   R-nightTemp     17 C
     2015-03-01 21:56:33   R-noMinMax4Manu off
     2016-01-15 17:21:04   R-sendWeatherData on
     2016-01-15 17:21:04   R-showHumidity  tempHum
     2015-03-01 21:56:33   R-showInfo      time
     2016-01-15 17:21:04   R-showSetTemp   actTemp
     2016-01-12 14:17:12   R-sign          off
     2016-01-15 17:21:04   R-tempOffset    0.0K
     2015-03-01 21:56:33   R-weekPrgSel    prog1
     2015-03-01 21:56:33   R-winOpnBoost   off
     2016-01-17 17:40:59   R_P1_0_tempListSat 06:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_1_tempListSun 06:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_2_tempListMon 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_3_tempListTue 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_4_tempListWed 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_5_tempListThu 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_6_tempListFri 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_tempList_State verified
     2016-01-17 17:41:03   R_P2_0_tempListSat 24:00 17.0
     2016-01-17 17:41:03   R_P2_1_tempListSun 24:00 17.0
     2016-01-17 17:41:03   R_P2_2_tempListMon 24:00 17.0
     2016-01-17 17:41:03   R_P2_3_tempListTue 24:00 17.0
     2016-01-17 17:41:03   R_P2_4_tempListWed 24:00 17.0
     2016-01-17 17:41:03   R_P2_5_tempListThu 24:00 17.0
     2016-01-17 17:41:03   R_P2_6_tempListFri 24:00 17.0
     2016-01-17 17:41:03   R_P2_tempList_State verified
     2016-01-17 17:41:07   R_P3_0_tempListSat 24:00 17.0
     2016-01-17 17:41:07   R_P3_1_tempListSun 24:00 17.0
     2016-01-17 17:41:07   R_P3_2_tempListMon 24:00 17.0
     2016-01-17 17:41:07   R_P3_3_tempListTue 24:00 17.0
     2016-01-17 17:41:07   R_P3_4_tempListWed 24:00 17.0
     2016-01-17 17:41:07   R_P3_5_tempListThu 24:00 17.0
     2016-01-17 17:41:07   R_P3_6_tempListFri 24:00 17.0
     2016-01-17 17:41:07   R_P3_tempList_State verified
     2016-01-17 17:40:55   RegL_01.        08:00 00:00
     2016-01-17 17:40:59   RegL_07.        01:2A 02:22 03:09 04:3D 05:00 06:00 07:00 08:00 09:C7 0A:30 0B:00 0C:00 0D:00 0E:01 0F:04 10:00 11:00 12:09 13:00 14:44 15:48 16:55 17:08 18:45 19:20 1A:45 1B:20 1C:45 1D:20 1E:45 1F:20 20:45 21:20 22:45 23:20 24:45 25:20 26:45 27:20 28:45 29:20 2A:45 2B:20 2C:45 2D:20 2E:44 2F:48 30:55 31:08 32:45 33:20 34:45 35:20 36:45 37:20 38:45 39:20 3A:45 3B:20 3C:45 3D:20 3E:45 3F:20 40:45 41:20 42:45 43:20 44:45 45:20 46:45 47:20 48:44 49:48 4A:54 4B:6C 4C:44 4D:CC 4E:55 4F:08 50:45 51:20 52:45 53:20 54:45 55:20 56:45 57:20 58:45 59:20 5A:45 5B:20 5C:45 5D:20 5E:45 5F:20 60:45 61:20 62:44 63:48 64:54 65:6C 66:44 67:CC 68:55 69:08 6A:45 6B:20 6C:45 6D:20 6E:45 6F:20 70:45 71:20 72:45 73:20 74:45 75:20 76:45 77:20 78:45 79:20 7A:45 7B:20 7C:44 7D:48 7E:54 7F:6C 80:44 81:CC 82:55 83:08 84:45 85:20 86:45 87:20 88:45 89:20 8A:45 8B:20 8C:45 8D:20 8E:45 8F:20 90:45 91:20 92:45 93:20 94:45 95:20 96:44 97:48 98:54 99:6C 9A:44 9B:CC 9C:55 9D:08 9E:45 9F:20 A0:45 A1:20 A2:45 A3:20 A4:45 A5:20 A6:45 A7:20 A8:45 A9:20 AA:45 AB:20 AC:45 AD:20 AE:45 AF:20 B0:44 B1:48 B2:54 B3:6C B4:44 B5:CC B6:55 B7:08 B8:45 B9:20 BA:45 BB:20 BC:45 BD:20 BE:45 BF:20 C0:45 C1:20 C2:45 C3:20 C4:45 C5:20 C6:45 C7:20 C8:45 C9:20 CA:00 CB:00 CC:00 CD:00 CE:00 CF:00 00:00
     2016-01-17 17:41:03   RegL_08.        01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 0A:00 0B:00 0C:00 0D:00 0E:00 0F:00 10:00 11:00 12:00 13:00 14:45 15:20 16:45 17:20 18:45 19:20 1A:45 1B:20 1C:45 1D:20 1E:45 1F:20 20:45 21:20 22:45 23:20 24:45 25:20 26:45 27:20 28:45 29:20 2A:45 2B:20 2C:45 2D:20 2E:45 2F:20 30:45 31:20 32:45 33:20 34:45 35:20 36:45 37:20 38:45 39:20 3A:45 3B:20 3C:45 3D:20 3E:45 3F:20 40:45 41:20 42:45 43:20 44:45 45:20 46:45 47:20 48:45 49:20 4A:45 4B:20 4C:45 4D:20 4E:45 4F:20 50:45 51:20 52:45 53:20 54:45 55:20 56:45 57:20 58:45 59:20 5A:45 5B:20 5C:45 5D:20 5E:45 5F:20 60:45 61:20 62:45 63:20 64:45 65:20 66:45 67:20 68:45 69:20 6A:45 6B:20 6C:45 6D:20 6E:45 6F:20 70:45 71:20 72:45 73:20 74:45 75:20 76:45 77:20 78:45 79:20 7A:45 7B:20 7C:45 7D:20 7E:45 7F:20 80:45 81:20 82:45 83:20 84:45 85:20 86:45 87:20 88:45 89:20 8A:45 8B:20 8C:45 8D:20 8E:45 8F:20 90:45 91:20 92:45 93:20 94:45 95:20 96:45 97:20 98:45 99:20 9A:45 9B:20 9C:45 9D:20 9E:45 9F:20 A0:45 A1:20 A2:45 A3:20 A4:45 A5:20 A6:45 A7:20 A8:45 A9:20 AA:45 AB:20 AC:45 AD:20 AE:45 AF:20 B0:45 B1:20 B2:45 B3:20 B4:45 B5:20 B6:45 B7:20 B8:45 B9:20 BA:45 BB:20 BC:45 BD:20 BE:45 BF:20 C0:45 C1:20 C2:45 C3:20 C4:45 C5:20 C6:45 C7:20 C8:45 C9:20 CA:00 CB:00 CC:00 CD:00 CE:00 CF:00 00:00
     2016-01-17 17:41:07   RegL_09.        01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 0A:00 0B:00 0C:00 0D:00 0E:00 0F:00 10:00 11:00 12:00 13:00 14:45 15:20 16:45 17:20 18:45 19:20 1A:45 1B:20 1C:45 1D:20 1E:45 1F:20 20:45 21:20 22:45 23:20 24:45 25:20 26:45 27:20 28:45 29:20 2A:45 2B:20 2C:45 2D:20 2E:45 2F:20 30:45 31:20 32:45 33:20 34:45 35:20 36:45 37:20 38:45 39:20 3A:45 3B:20 3C:45 3D:20 3E:45 3F:20 40:45 41:20 42:45 43:20 44:45 45:20 46:45 47:20 48:45 49:20 4A:45 4B:20 4C:45 4D:20 4E:45 4F:20 50:45 51:20 52:45 53:20 54:45 55:20 56:45 57:20 58:45 59:20 5A:45 5B:20 5C:45 5D:20 5E:45 5F:20 60:45 61:20 62:45 63:20 64:45 65:20 66:45 67:20 68:45 69:20 6A:45 6B:20 6C:45 6D:20 6E:45 6F:20 70:45 71:20 72:45 73:20 74:45 75:20 76:45 77:20 78:45 79:20 7A:45 7B:20 7C:45 7D:20 7E:45 7F:20 80:45 81:20 82:45 83:20 84:45 85:20 86:45 87:20 88:45 89:20 8A:45 8B:20 8C:45 8D:20 8E:45 8F:20 90:45 91:20 92:45 93:20 94:45 95:20 96:45 97:20 98:45 99:20 9A:45 9B:20 9C:45 9D:20 9E:45 9F:20 A0:45 A1:20 A2:45 A3:20 A4:45 A5:20 A6:45 A7:20 A8:45 A9:20 AA:45 AB:20 AC:45 AD:20 AE:45 AF:20 B0:45 B1:20 B2:45 B3:20 B4:45 B5:20 B6:45 B7:20 B8:45 B9:20 BA:45 BB:20 BC:45 BD:20 BE:45 BF:20 C0:45 C1:20 C2:45 C3:20 C4:45 C5:20 C6:45 C7:20 C8:45 C9:20 CA:00 CB:00 CC:00 CD:00 CE:00 CF:00 00:00
     2016-01-12 14:04:29   battery         ok
     2016-02-07 19:21:27   boostTime       -
     2016-02-07 19:21:27   commReporting   off
     2016-02-07 19:21:27   controlMode     manual
     2016-02-07 20:41:33   desired-temp    19.5
     2016-02-07 20:41:33   humidity        52
     2016-02-07 20:41:33   measured-temp   19.2
     2016-01-20 23:56:36   peerList        SZ_Heizung_Climate,KZ_Heizung_Climate,
     2016-02-05 21:49:16   recentStateType ack
     2016-02-07 20:41:33   state           T: 19.2 desired: 19.5
     2016-02-07 19:21:27   winOpenReporting off
   Helper:
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Role:
       chn        1
     Shregr:
       07         00
     Shadowreg:
Attributes:
   event-on-change-reading humidity
   model      HM-TC-IT-WM-W-EU
   peerIDs    00000000,23C4D202,23C5B502,
   room       !Heizungen,Flur
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 08 Februar 2016, 08:30:40
Es fehlt "FL_Steuerung_desiredTemp_dummy" um mir ein komplettes Bild machen zu können. Es wäre schön, wenn Du das Listing nach reichst.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 08 Februar 2016, 21:36:18
Gerne aber das ist unspektakulär :)

Internals:
   NAME       FL_Steuerung_desiredTemp_dummy
   NR         97
   STATE      19.5
   TYPE       dummy
   Readings:
     2016-02-07 16:48:55   state           19.5
Attributes:
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 09 Februar 2016, 10:07:51
Mit diesen Werten
ZitatFL_Steuerung_desiredTemp_dummy = 19.5
FL_Steuerung_Climate:measured-temp = 19.2

und wenn das Dein aktuelles DOIF ist
define FL_Steuerung_desiredTemp_di DOIF ([FL_Steuerung_Climate:desired-temp] != [FL_Steuerung_desiredTemp_dummy:state])
   (set FL_Steuerung_desiredTemp_dummy [FL_Steuerung_Climate:desired-temp],
   set AZ_Heizung_Clima desired-temp [FL_Steuerung_desiredTemp_dummy:state])

kann eigentlich kein
ZitatFehler von wegen not a Number
entstehen.

Das habe ich wohl irgendwie überlesen
ZitatKann ich das DOIF irgendwie protokollieren?
das DOIF kannst Du loggen mit
notify FL_Steuerung_desiredTemp_di {Log 1, "notify, Name: $NAME, Event: $EVENT"}

und den Befehlszweig des DOIF kannst Du so ändern
(set FL_Steuerung_desiredTemp_dummy [FL_Steuerung_Climate:desired-temp],
   set AZ_Heizung_Clima desired-temp [FL_Steuerung_desiredTemp_dummy:state], ({Log 1, "DOIF: $DEVICE, $EVENT\n   FL_Steuerung_Climate:desired-temp = [FL_Steuerung_Climate:desired-temp]\n   FL_Steuerung_desiredTemp_dummy:state = [FL_Steuerung_desiredTemp_dummy:state]\n   AZ_Heizung_Clima desired-temp = [AZ_Heizung_Clima desired-temp]"}))

Damit hast Du einige Informationen zur Fehlersuche.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 15 Februar 2016, 21:52:13
Vielen Dank!
Anscheinend hab ich den Fehler entdeckt, wobei ich mit nicht erklären kann woran das liegt:
Mein DOIF hat ein eigenes Reading "e_FL_Steuerung_Climate_desired-temp". Dieses stimmt manchmal nicht mit "FL_Steuerung_Climate_desired-temp" überein. Daher wird das doif auch nicht ausgelöst.
Gerade hat zum Beispiel das DOIF Reading 19.5, die desired-temp an der Steuerung aber 19.0.
Wie kann das denn sein und noch viel spannender: Was kann ich dagegen tun?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 16 Februar 2016, 10:41:16
Sieh mal in der Commandref unter "do always" nach.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 16 Februar 2016, 11:25:18
Zitat von: Ellert am 16 Februar 2016, 10:41:16
Sieh mal in der Commandref unter "do always" nach.
Do always ist gesetzt.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 16 Februar 2016, 12:56:03
Die Steuerung sendet zyklisch an FHEM, daher die Abweichung, vielleicht kannst Du in der Steuerung ein Burstmodus einstellen, damit desired-temp sofort übertragen wird.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 16 Februar 2016, 15:41:19
Zitat von: Ellert am 16 Februar 2016, 12:56:03
Die Steuerung sendet zyklisch an FHEM, daher die Abweichung, vielleicht kannst Du in der Steuerung ein Burstmodus einstellen, damit desired-temp sofort übertragen wird.

Danke Ellert. Wir reden hier aber leider aneinander vorbei. Mein Problem ist nicht das zeitnahe setzen der Temp. Die Heizungen haben den Burst mode gesetzt. Die Temp wird also fast realtime gesetzt.
Mein Problem: Das DOIF löst nicht aus. Warum? Weil das "DOIF eigene" Reading e_ nicht die desired-temp von der Flur Steuerung hat. Die Frage: wie kann das sein? Beispiel: die desired-temp der Flur Steuerung steht auf 19.0. Im DOIF hat das Reading mit e_ allerdings 19.5. Da der dummy auch (noch) auf 19.5 sitzt, passiert nichts. Soweit korrekt, nur das das Reading nicht korrekt ist.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 16 Februar 2016, 18:21:00
Wenn Du die Detailansicht des DOIF geöffnet hast, werden nicht alle Readings aktualisiert dargestellt. Das ändert sich wenn Du die Seite neu lädst.

Sonst mach mal ein "list FL_Steuerung_(Climate|desiredTemp_di)" vom Fehlerfall und poste es.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 16 Februar 2016, 20:51:12
Zitat von: Ellert am 16 Februar 2016, 18:21:00
Wenn Du die Detailansicht des DOIF geöffnet hast, werden nicht alle Readings aktualisiert dargestellt. Das ändert sich wenn Du die Seite neu lädst.

Sonst mach mal ein "list FL_Steuerung_(Climate|desiredTemp_di)" vom Fehlerfall und poste es.
Refresh bringt da nichts.
Hier die beiden listings:
Internals:
   DEF        ([FL_Steuerung_Climate:desired-temp] != [FL_Steuerung_desiredTemp_dummy:state])
(set FL_Steuerung_desiredTemp_dummy [FL_Steuerung_Climate:desired-temp],
set AZ_Heizung_Clima desired-temp [FL_Steuerung_desiredTemp_dummy:state])
   NAME       FL_Steuerung_desiredTemp_di
   NR         96
   NTFY_ORDER 50-FL_Steuerung_desiredTemp_di
   STATE      cmd_1
   TYPE       DOIF
   Readings:
     2016-02-16 17:46:06   Device          FL_Steuerung_Climate
     2016-02-16 07:55:01   cmd_event       FL_Steuerung_Climate
     2016-02-16 07:55:01   cmd_nr          1
     2016-02-16 17:46:06   e_FL_Steuerung_Climate_desired-temp 19.5
     2016-02-16 07:55:01   e_FL_Steuerung_desiredTemp_dummy_state 19.5
     2016-02-16 07:55:01   state           cmd_1
   Condition:
     0          ReadingValDoIf('FL_Steuerung_Climate','desired-temp','') != ReadingValDoIf('FL_Steuerung_desiredTemp_dummy','state','')
   Devices:
     0           FL_Steuerung_Climate FL_Steuerung_desiredTemp_dummy
     all         FL_Steuerung_Climate FL_Steuerung_desiredTemp_dummy
   Do:
     0:
       0          set FL_Steuerung_desiredTemp_dummy [FL_Steuerung_Climate:desired-temp], set AZ_Heizung_Clima desired-temp [FL_Steuerung_desiredTemp_dummy:state]
     1:
   Helper:
     globalinit 1
     last_timer 0
     sleeptimer -1
   Internals:
   Itimer:
   Readings:
     0           FL_Steuerung_Climate:desired-temp FL_Steuerung_desiredTemp_dummy:state
     all         FL_Steuerung_Climate:desired-temp FL_Steuerung_desiredTemp_dummy:state
   State:
   Timerfunc:
   Trigger:
Attributes:
   disable    0
   do         always


Und hier die Steuerung:

Internals:
   CHANGED
   DEF        31420702
   NAME       FL_Steuerung_Climate
   NR         75
   NTFY_ORDER 50-FL_Steuerung_Climate
   STATE      T: 19.4 desired: 19.0
   TYPE       CUL_HM
   chanNo     02
   device     FL_Steuerung
   peerList   SZ_Heizung_Climate,KZ_Heizung_Climate,
   Readings:
     2016-02-16 20:42:40   CommandAccepted yes
     2015-03-01 21:56:33   R-dayTemp       21 C
     2015-03-01 21:56:33   R-daylightSaveTime on
     2015-03-01 21:56:33   R-heatCool      heating
     2015-03-01 21:56:33   R-hyst2point    0.4 C
     2015-03-01 21:56:33   R-modePrioManu  all
     2015-03-01 21:56:33   R-modePrioParty all
     2015-03-01 21:56:33   R-nightTemp     17 C
     2015-03-01 21:56:33   R-noMinMax4Manu off
     2016-01-15 17:21:04   R-sendWeatherData on
     2016-01-15 17:21:04   R-showHumidity  tempHum
     2015-03-01 21:56:33   R-showInfo      time
     2016-01-15 17:21:04   R-showSetTemp   actTemp
     2016-01-12 14:17:12   R-sign          off
     2016-01-15 17:21:04   R-tempOffset    0.0K
     2015-03-01 21:56:33   R-weekPrgSel    prog1
     2015-03-01 21:56:33   R-winOpnBoost   off
     2016-01-17 17:40:59   R_P1_0_tempListSat 06:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_1_tempListSun 06:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_2_tempListMon 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_3_tempListTue 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_4_tempListWed 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_5_tempListThu 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_6_tempListFri 06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0
     2016-01-17 17:40:59   R_P1_tempList_State verified
     2016-01-17 17:41:03   R_P2_0_tempListSat 24:00 17.0
     2016-01-17 17:41:03   R_P2_1_tempListSun 24:00 17.0
     2016-01-17 17:41:03   R_P2_2_tempListMon 24:00 17.0
     2016-01-17 17:41:03   R_P2_3_tempListTue 24:00 17.0
     2016-01-17 17:41:03   R_P2_4_tempListWed 24:00 17.0
     2016-01-17 17:41:03   R_P2_5_tempListThu 24:00 17.0
     2016-01-17 17:41:03   R_P2_6_tempListFri 24:00 17.0
     2016-01-17 17:41:03   R_P2_tempList_State verified
     2016-01-17 17:41:07   R_P3_0_tempListSat 24:00 17.0
     2016-01-17 17:41:07   R_P3_1_tempListSun 24:00 17.0
     2016-01-17 17:41:07   R_P3_2_tempListMon 24:00 17.0
     2016-01-17 17:41:07   R_P3_3_tempListTue 24:00 17.0
     2016-01-17 17:41:07   R_P3_4_tempListWed 24:00 17.0
     2016-01-17 17:41:07   R_P3_5_tempListThu 24:00 17.0
     2016-01-17 17:41:07   R_P3_6_tempListFri 24:00 17.0
     2016-01-17 17:41:07   R_P3_tempList_State verified
     2016-01-17 17:40:55   RegL_01.        08:00 00:00
     2016-01-17 17:40:59   RegL_07.        01:2A 02:22 03:09 04:3D 05:00 06:00 07:00 08:00 09:C7 0A:30 0B:00 0C:00 0D:00 0E:01 0F:04 10:00 11:00 12:09 13:00 14:44 15:48 16:55 17:08 18:45 19:20 1A:45 1B:20 1C:45 1D:20 1E:45 1F:20 20:45 21:20 22:45 23:20 24:45 25:20 26:45 27:20 28:45 29:20 2A:45 2B:20 2C:45 2D:20 2E:44 2F:48 30:55 31:08 32:45 33:20 34:45 35:20 36:45 37:20 38:45 39:20 3A:45 3B:20 3C:45 3D:20 3E:45 3F:20 40:45 41:20 42:45 43:20 44:45 45:20 46:45 47:20 48:44 49:48 4A:54 4B:6C 4C:44 4D:CC 4E:55 4F:08 50:45 51:20 52:45 53:20 54:45 55:20 56:45 57:20 58:45 59:20 5A:45 5B:20 5C:45 5D:20 5E:45 5F:20 60:45 61:20 62:44 63:48 64:54 65:6C 66:44 67:CC 68:55 69:08 6A:45 6B:20 6C:45 6D:20 6E:45 6F:20 70:45 71:20 72:45 73:20 74:45 75:20 76:45 77:20 78:45 79:20 7A:45 7B:20 7C:44 7D:48 7E:54 7F:6C 80:44 81:CC 82:55 83:08 84:45 85:20 86:45 87:20 88:45 89:20 8A:45 8B:20 8C:45 8D:20 8E:45 8F:20 90:45 91:20 92:45 93:20 94:45 95:20 96:44 97:48 98:54 99:6C 9A:44 9B:CC 9C:55 9D:08 9E:45 9F:20 A0:45 A1:20 A2:45 A3:20 A4:45 A5:20 A6:45 A7:20 A8:45 A9:20 AA:45 AB:20 AC:45 AD:20 AE:45 AF:20 B0:44 B1:48 B2:54 B3:6C B4:44 B5:CC B6:55 B7:08 B8:45 B9:20 BA:45 BB:20 BC:45 BD:20 BE:45 BF:20 C0:45 C1:20 C2:45 C3:20 C4:45 C5:20 C6:45 C7:20 C8:45 C9:20 CA:00 CB:00 CC:00 CD:00 CE:00 CF:00 00:00
     2016-01-17 17:41:03   RegL_08.        01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 0A:00 0B:00 0C:00 0D:00 0E:00 0F:00 10:00 11:00 12:00 13:00 14:45 15:20 16:45 17:20 18:45 19:20 1A:45 1B:20 1C:45 1D:20 1E:45 1F:20 20:45 21:20 22:45 23:20 24:45 25:20 26:45 27:20 28:45 29:20 2A:45 2B:20 2C:45 2D:20 2E:45 2F:20 30:45 31:20 32:45 33:20 34:45 35:20 36:45 37:20 38:45 39:20 3A:45 3B:20 3C:45 3D:20 3E:45 3F:20 40:45 41:20 42:45 43:20 44:45 45:20 46:45 47:20 48:45 49:20 4A:45 4B:20 4C:45 4D:20 4E:45 4F:20 50:45 51:20 52:45 53:20 54:45 55:20 56:45 57:20 58:45 59:20 5A:45 5B:20 5C:45 5D:20 5E:45 5F:20 60:45 61:20 62:45 63:20 64:45 65:20 66:45 67:20 68:45 69:20 6A:45 6B:20 6C:45 6D:20 6E:45 6F:20 70:45 71:20 72:45 73:20 74:45 75:20 76:45 77:20 78:45 79:20 7A:45 7B:20 7C:45 7D:20 7E:45 7F:20 80:45 81:20 82:45 83:20 84:45 85:20 86:45 87:20 88:45 89:20 8A:45 8B:20 8C:45 8D:20 8E:45 8F:20 90:45 91:20 92:45 93:20 94:45 95:20 96:45 97:20 98:45 99:20 9A:45 9B:20 9C:45 9D:20 9E:45 9F:20 A0:45 A1:20 A2:45 A3:20 A4:45 A5:20 A6:45 A7:20 A8:45 A9:20 AA:45 AB:20 AC:45 AD:20 AE:45 AF:20 B0:45 B1:20 B2:45 B3:20 B4:45 B5:20 B6:45 B7:20 B8:45 B9:20 BA:45 BB:20 BC:45 BD:20 BE:45 BF:20 C0:45 C1:20 C2:45 C3:20 C4:45 C5:20 C6:45 C7:20 C8:45 C9:20 CA:00 CB:00 CC:00 CD:00 CE:00 CF:00 00:00
     2016-01-17 17:41:07   RegL_09.        01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 0A:00 0B:00 0C:00 0D:00 0E:00 0F:00 10:00 11:00 12:00 13:00 14:45 15:20 16:45 17:20 18:45 19:20 1A:45 1B:20 1C:45 1D:20 1E:45 1F:20 20:45 21:20 22:45 23:20 24:45 25:20 26:45 27:20 28:45 29:20 2A:45 2B:20 2C:45 2D:20 2E:45 2F:20 30:45 31:20 32:45 33:20 34:45 35:20 36:45 37:20 38:45 39:20 3A:45 3B:20 3C:45 3D:20 3E:45 3F:20 40:45 41:20 42:45 43:20 44:45 45:20 46:45 47:20 48:45 49:20 4A:45 4B:20 4C:45 4D:20 4E:45 4F:20 50:45 51:20 52:45 53:20 54:45 55:20 56:45 57:20 58:45 59:20 5A:45 5B:20 5C:45 5D:20 5E:45 5F:20 60:45 61:20 62:45 63:20 64:45 65:20 66:45 67:20 68:45 69:20 6A:45 6B:20 6C:45 6D:20 6E:45 6F:20 70:45 71:20 72:45 73:20 74:45 75:20 76:45 77:20 78:45 79:20 7A:45 7B:20 7C:45 7D:20 7E:45 7F:20 80:45 81:20 82:45 83:20 84:45 85:20 86:45 87:20 88:45 89:20 8A:45 8B:20 8C:45 8D:20 8E:45 8F:20 90:45 91:20 92:45 93:20 94:45 95:20 96:45 97:20 98:45 99:20 9A:45 9B:20 9C:45 9D:20 9E:45 9F:20 A0:45 A1:20 A2:45 A3:20 A4:45 A5:20 A6:45 A7:20 A8:45 A9:20 AA:45 AB:20 AC:45 AD:20 AE:45 AF:20 B0:45 B1:20 B2:45 B3:20 B4:45 B5:20 B6:45 B7:20 B8:45 B9:20 BA:45 BB:20 BC:45 BD:20 BE:45 BF:20 C0:45 C1:20 C2:45 C3:20 C4:45 C5:20 C6:45 C7:20 C8:45 C9:20 CA:00 CB:00 CC:00 CD:00 CE:00 CF:00 00:00
     2016-01-12 14:04:29   battery         ok
     2016-02-16 20:43:38   boostTime       -
     2016-02-16 20:43:38   commReporting   off
     2016-02-16 20:43:38   controlMode     manual
     2016-02-16 20:47:45   desired-temp    19.0
     2016-02-16 20:47:45   humidity        47
     2016-02-16 20:47:45   measured-temp   19.4
     2016-01-20 23:56:36   peerList        SZ_Heizung_Climate,KZ_Heizung_Climate,
     2016-02-16 20:42:40   recentStateType ack
     2016-02-16 20:47:45   state           T: 19.4 desired: 19.0
     2016-02-16 20:43:38   winOpenReporting off
   Helper:
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Role:
       chn        1
     Shregr:
       07         00
     Shadowreg:
Attributes:
   event-on-change-reading humidity
   model      HM-TC-IT-WM-W-EU
   peerIDs    00000000,23C4D202,23C5B502,
   room       !Heizungen,Flur


Die desired-temp im DOIF ist "veraltet". Was kann ich tun?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 16 Februar 2016, 23:25:40
Mit event-on-change-reading humidity wird nur ein Event erzeugt, wenn die Feuchte sich ändert. Hast Du Dir das nicht einmal selbst angesehen?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 17 Februar 2016, 05:39:42
Zitat von: Ellert am 16 Februar 2016, 23:25:40
Mit event-on-change-reading humidity wird nur ein Event erzeugt, wenn die Feuchte sich ändert. Hast Du Dir das nicht einmal selbst angesehen?

Ja. Die desired-temp logge ich direkt über FL_Steuerung und nicht im Climate Kanal. Dort nur die Humidity.
Warum sollte das aber der Fehler sein? Mein Verständnis: Ich habe mein DOIF auf dem Reading. Nicht auf dem Event. Würde es daran liegen, würde mein DOIF ja niemals funktionieren. Es funktioniert aber teilweise.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 17 Februar 2016, 09:36:48
Probier es aus und lösche das Attribut oder ergänze desired-temp, vorher kannst Du Dir über den Event-Monitor die derzeitigen Events von "FL_Steuerung_Climate" ansehen, dann weisst Du warum es teilweise funktioniert.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Wuppi68 am 17 Februar 2016, 13:36:21
hmmmm,

verdrehe am Thermostat die Temperatur --> setzte via FHEM wieder zurück ...

ich würde einfach im Thermostaten ein ButtonLock setzen, dann gibt es kein Verstellen mehr an der "Hardware"
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 17 Februar 2016, 13:36:49
Zitat von: Ellert am 17 Februar 2016, 09:36:48
Probier es aus und lösche das Attribut oder ergänze desired-temp, vorher kannst Du Dir über den Event-Monitor die derzeitigen Events von "FL_Steuerung_Climate" ansehen, dann weisst Du warum es teilweise funktioniert.
Ich werde es mal mit "FL_Steuerung" versuchen. Dort gibt es auch die desired-temp und dort habe ich das Reading in den Attributen.
Was mich aber fuchst: Wird das DOIF durch das Event oder durch ständiges auslesen des Readings getriggert? Events werden doch mit ? (Mittlerweile ja nur noch per regex) abgefragt. So wie ich das eingestellt habe, gehe ich doch auf das Reading. Dann ist dich das Event Attribut egal oder?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 17 Februar 2016, 13:39:27
Zitat von: Wuppi68 am 17 Februar 2016, 13:36:21
hmmmm,

verdrehe am Thermostat die Temperatur --> setzte via FHEM wieder zurück ...

ich würde einfach im Thermostaten ein ButtonLock setzen, dann gibt es kein Verstellen mehr an der "Hardware"

Button lock ist gesetzt, ich will ja genau nicht mehr an der Heizung drehen :) ich habe eine Steuerung und da leider bei einem ClimaTeam nicht die Temperatur von der Heizung genommen wird, habe ich die Heizung aus dem ClimaTeam entfernt. Nun möchte ich aber trotzdem beim Drehen am der Steuerung die Heizung anpassen. Dafür das DOIF. Es funktioniert nur leider nicht zuverlässig :(
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Wuppi68 am 17 Februar 2016, 14:14:46
okay,

nur noch einmal zum Verständnis

Du hast mehrere Heizkörperthermostate mit einem Raumthermosttat gepeert (wie im Wiki beschrieben)?

oder

Mehrere Thermostate als Team mit einander gepeert?
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Damian am 17 Februar 2016, 14:21:00
Zitat von: desmoloch am 17 Februar 2016, 13:36:49
Ich werde es mal mit "FL_Steuerung" versuchen. Dort gibt es auch die desired-temp und dort habe ich das Reading in den Attributen.
Was mich aber fuchst: Wird das DOIF durch das Event oder durch ständiges auslesen des Readings getriggert? Events werden doch mit ? (Mittlerweile ja nur noch per regex) abgefragt. So wie ich das eingestellt habe, gehe ich doch auf das Reading. Dann ist dich das Event Attribut egal oder?

Wenn du ein Reading im DOIF-Modul abfragst, dann wird die Abfrage dann ausgewertet, wenn das Device des Readings irgendein Event auslöst. Wenn das Modul nicht auf die Events reagieren soll, so muss die Reading-Abfrage mit einem Fragezeichen beginnen [?<Device>:<Reading>]

Gruß

Damian
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: Ellert am 17 Februar 2016, 14:26:51
Zitat von: desmoloch am 17 Februar 2016, 13:36:49
Ich werde es mal mit "FL_Steuerung" versuchen. Dort gibt es auch die desired-temp und dort habe ich das Reading in den Attributen.
Was mich aber fuchst: Wird das DOIF durch das Event oder durch ständiges auslesen des Readings getriggert? Events werden doch mit ? (Mittlerweile ja nur noch per regex) abgefragt. So wie ich das eingestellt habe, gehe ich doch auf das Reading. Dann ist dich das Event Attribut egal oder?

ZitatWird das DOIF durch das Event oder durch ständiges auslesen des Readings getriggert?
Readings werden nur gelesen wenn es ein Event des Gerätes gibt, das steht in der Commandref:
ZitatGetriggert wird das Modul durch Zeitangaben bzw. durch Ereignisse ausgelöst durch die in der Bedingung angegebenen Devices.

ZitatDann ist dich das Event Attribut egal oder?
Nein, denn du beschränkst die Events, die zum Lesen des Readings desired-temp notwendig sind. DOIF pollt nicht. Woher soll DOIF wissen, dass sich ein Reading ändert, wie in FHEM üblich durch Ereignisse.
Wenn das Gerät ein Ereignis liefert, weil humidity sich ändert, schaut DOIF auch bei desired-temp nach. Eine Änderung von desired-temp bemerkt DOIF nicht, wenn es kein Geräteereignis gibt.
Titel: Antw:DOIF: Desired Temp per dummy setzen
Beitrag von: desmoloch am 17 Februar 2016, 16:44:32
Zitat von: Wuppi68 am 17 Februar 2016, 14:14:46
okay,

nur noch einmal zum Verständnis

Du hast mehrere Heizkörperthermostate mit einem Raumthermosttat gepeert (wie im Wiki beschrieben)?

oder

Mehrere Thermostate als Team mit einander gepeert?

Ja beides. ClimaTeam um manuelle Dreher an alle Heizungen zu verteilen und gepeert mit der Steuerung um von da die Heizungen zentral zu steuern. Leider wird aber durch das peeren immer die Ist-Temp von der Steuerung übernommen, daher das DOIF.

Zitat von: Damian am 17 Februar 2016, 14:21:00
Wenn du ein Reading im DOIF-Modul abfragst, dann wird die Abfrage dann ausgewertet, wenn das Device des Readings irgendein Event auslöst. Wenn das Modul nicht auf die Events reagieren soll, so muss die Reading-Abfrage mit einem Fragezeichen beginnen [?<Device>:<Reading>]

Gruß

Damian


Danke nun wird es klarer :)

Zitat von: Ellert am 17 Februar 2016, 14:26:51
Readings werden nur gelesen wenn es ein Event des Gerätes gibt, das steht in der Commandref: Nein, denn du beschränkst die Events, die zum Lesen des Readings desired-temp notwendig sind. DOIF pollt nicht. Woher soll DOIF wissen, dass sich ein Reading ändert, wie in FHEM üblich durch Ereignisse.
Wenn das Gerät ein Ereignis liefert, weil humidity sich ändert, schaut DOIF auch bei desired-temp nach. Eine Änderung von desired-temp bemerkt DOIF nicht, wenn es kein Geräteereignis gibt.

Danke. Damit ist klar warum es manchmal funktionierte: Die Humidity hatte sich geändert, somit gab es ein Event.

Danke euch allen. Ich steuere das nicht aus, nehme das richtige Gerät (FL_Steuerung) und dann sollte mein DOIF auch klappen :)