Templist wird nicht angewandt? HM-CC-TC

Begonnen von eldrik, 05 Januar 2014, 16:54:16

Vorheriges Thema - Nächstes Thema

UdoG

Jetzt nach einer längeren Zeit hat's endlich im Clima-Kanal die daten aktualisiert. Im Thermostat stehen aber bei List immer noch keine Templist mehr.

## 12.01.2014 19:20 OG_SA_Climate

Internals:
   DEF        1ADC0502
   NAME       OG_SA_Climate
   NR         187
   STATE      0 %
   TYPE       CUL_HM
   chanNo     02
   device     OG_SA_Heizung
   peerList   CUL_HM_thermostat_1AD6D8,
   Readings:
     2014-01-01 15:13:56   CommandAccepted yes
     2014-01-12 17:38:51   R-controlMode   auto
     2014-01-12 17:38:51   R-day-temp      21 C
     2013-08-11 23:31:01   R-decalHr       11 h
     2013-08-11 23:31:01   R-decalMin      0 min
     2014-01-12 17:38:51   R-decalcDay     Sat
     2014-01-12 17:38:51   R-displayMode   temp-only
     2014-01-12 17:38:51   R-displayTemp   actual
     2014-01-12 17:38:51   R-displayTempUnit celsius
     2014-01-12 17:38:51   R-mdTempValve   auto
     2014-01-12 17:38:51   R-night-temp    17 C
     2014-01-12 17:38:51   R-party-temp    17 C
     2014-01-10 22:02:52   R-partyEndDay   0 d
     2014-01-10 22:02:29   R-partyEndHr    22 h
     2014-01-10 22:02:29   R-partyEndMin   30 min
     2014-01-12 17:38:51   RegL_05:        01:08 02:13 03:2A 04:22 05:18 06:22 07:00 08:58 09:00 0A:00 0B:33 0C:14 0D:7B 0E:2C 0F:90 10:14 11:90 12:22 13:90 14:28 15:90 16:28 17:90 18:28 19:90 1A:28 1B:90 1C:28 1D:90 1E:28 1F:90 20:28 21:90 22:28 23:90 24:28 25:90 26:28 27:90 28:28 29:90 2A:28 2B:90 2C:28 2D:90 2E:28 2F:90 30:28 31:90 32:28 33:90 34:28 35:90 36:28 37:90 38:28 39:90 3A:28 3B:36 3C:14 3D:7B 3E:2C 3F:90 40:16 41:90 42:22 43:90 44:28 45:90 46:28 47:90 48:28 49:90 4A:28 4B:90 4C:28 4D:90 4E:28 4F:90 50:28 51:90 52:28 53:90 54:28 55:90 56:28 57:90 58:28 59:90 5A:28 5B:90 5C:28 5D:90 5E:28 5F:90 60:28 61:90 62:28 63:90 64:28 65:90 66:28 67:90 68:28 69:90 6A:28 6B:21 6C:14 6D:2A 6E:2A 6F:5A 70:24 71:78 72:2A 73:90 74:14 75:90 76:28 77:90 78:28 79:90 7A:28 7B:90 7C:28 7D:90 7E:28 7F:90 80:28 81:90 82:28 83:90 84:28 85:90 86:28 87:90 88:28 89:90 8A:28 8B:90 8C:28 8D:90 8E:28 8F:90 90:28 91:90 92:28 93:90 94:28 95:90 96:28 97:90 98:28 99:90 9A:28 9B:21 9C:14 9D:2A 9E:2A 9F:4E A0:24 A1:78 A2:2A A3:90 A4:14 A5:90 A6:28 A7:90 A8:28 A9:90 AA:28 AB:90 AC:28 AD:90 AE:28 AF:90 B0:28 B1:90 B2:28 B3:90 B4:28 B5:90 B6:28 B7:90 B8:28 B9:90 BA:28 BB:90 BC:28 BD:90 BE:28 BF:90 C0:28 C1:90 C2:28 C3:90 C4:28 C5:90 C6:28 C7:90 C8:28 C9:90 CA:28 CB:21 CC:14 CD:2A CE:2A CF:5A D0:24 D1:78 D2:2A D3:90 D4:14 D5:90 D6:28 D7:90 D8:28 D9:90 DA:28 DB:90 DC:28 DD:90 DE:28 DF:90 E0:28 E1:90 E2:28 E3:90 E4:28 E5:90 E6:28 E7:90 E8:28 E9:90 EA:28 EB:90 EC:28 ED:90 EE:28 EF:90 F0:28 F1:90 F2:28 F3:90 F4:28 F5:90 F6:28 F7:90 F8:28 F9:90 FA:28 00:00
     2014-01-12 17:38:53   RegL_06:        01:21 02:14 03:2A 04:2A 05:54 06:24 07:78 08:2A 09:90 0A:14 0B:90 0C:28 0D:90 0E:28 0F:90 10:28 11:90 12:28 13:90 14:28 15:90 16:28 17:90 18:28 19:90 1A:28 1B:90 1C:28 1D:90 1E:28 1F:90 20:28 21:90 22:28 23:90 24:28 25:90 26:28 27:90 28:28 29:90 2A:28 2B:90 2C:28 2D:90 2E:28 2F:90 30:28 31:21 32:14 33:2A 34:2A 35:4E 36:24 37:78 38:2A 39:90 3A:14 3B:90 3C:28 3D:90 3E:28 3F:90 40:28 41:90 42:28 43:90 44:28 45:90 46:28 47:90 48:28 49:90 4A:28 4B:90 4C:28 4D:90 4E:28 4F:90 50:28 51:90 52:28 53:90 54:28 55:90 56:28 57:90 58:28 59:90 5A:28 5B:90 5C:28 5D:90 5E:28 5F:90 60:28 00:00
     2014-01-11 20:30:02   desired-temp    10.0
     2013-10-20 22:19:03   desired-temp-manu 10.0
     2014-01-12 18:54:16   peerList        CUL_HM_thermostat_1AD6D8,
     2014-01-11 20:30:02   recentStateType info
     2014-01-12 19:20:02   state           0 %
     2014-01-12 17:38:53   tempListFri     05:30 10.0 07:00 21.0 13:00 18.0 20:00 21.0 24:00 10.0
     2014-01-12 17:38:53   tempListMon     05:30 10.0 07:00 21.0 15:00 18.0 20:00 21.0 24:00 10.0
     2014-01-12 17:38:53   tempListSat     08:30 10.0 20:30 22.0 24:00 10.0
     2014-01-12 17:38:53   tempListSun     09:00 10.0 20:30 22.0 24:00 11.0
     2014-01-12 17:38:53   tempListThu     05:30 10.0 07:00 21.0 14:00 18.0 20:00 21.0 24:00 10.0
     2014-01-12 17:38:53   tempListTue     05:30 10.0 07:00 21.0 13:00 18.0 20:00 21.0 24:00 10.0
     2014-01-12 17:38:53   tempListWed     05:30 10.0 07:00 21.0 15:00 18.0 20:00 21.0 24:00 10.0
     2014-01-12 17:38:53   tempList_State  verified
   Helper:
     Role:
       chn        1
Attributes:
   autoReadReg 1
   expert     2_full
   model      HM-CC-TC
   peerIDs    00000000,1AD6D801,
   room       Zi_Saskia
   
## OG_SA_Heizung
Internals:
   DEF        1ADC05
   HMLAN1_MSGCNT 20
   HMLAN1_RAWMSG E1ADC05,0000,0A617065,FF,FFBB,E0A2581ADC051AD6D80000
   HMLAN1_RSSI -69
   HMLAN1_TIME 2014-01-12 19:20:02
   IODev      HMLAN1
   LASTInputDev HMLAN1
   MSGCNT     20
   NAME       OG_SA_Heizung
   NR         172
   STATE      T: 23.6 H: 49
   TYPE       CUL_HM
   channel_01 CUL_HM_thermostat_1ADC05_Weather
   channel_02 OG_SA_Climate
   channel_03 CUL_HM_thermostat_1ADC05_WindowRec
   lastMsg    No:E0 - t:58 s:1ADC05 d:1AD6D8 0000
   protLastRcv 2014-01-12 19:20:02
   rssi_at_HMLAN1 avg:-71.75 min:-74 max:-69 lst:-69 cnt:20
   Readings:
     2014-01-12 18:54:16   Activity        alive
     2013-12-08 16:09:48   Activity:       alive
     2014-01-12 17:38:46   CommandAccepted yes
     2013-10-18 18:17:20   PairedTo        0x2C5F92
     2013-10-18 18:17:20   R-backlOnMode   2
     2013-08-11 23:31:04   R-backlOnTime   1 s
     2013-10-18 18:17:20   R-btnLock       unlock
     2013-10-18 18:17:20   R-intKeyVisib   invisib
     2013-10-18 18:17:20   R-pairCentral   0x2C5F92
     2013-10-18 18:17:20   RegL_00:        01:00 02:01 05:81 0A:2C 0B:5F 0C:92 0F:00 00:00
     2014-01-12 19:20:02   actuator        0 %
     2014-01-11 20:30:02   battery         ok
     2014-01-12 17:38:53   controlMode     auto
     2014-01-12 17:38:53   day-temp        21 C
     2014-01-12 17:38:53   decalcDay       Sat
     2014-01-11 20:30:02   desired-temp    10.0
     2014-01-12 17:38:53   displayMode     temp-only
     2014-01-12 17:38:53   displayTemp     actual
     2014-01-12 17:38:53   displayTempUnit celsius
     2014-01-12 19:19:42   humidity        49
     2014-01-12 19:19:42   measured-temp   23.6
     2014-01-12 17:38:53   night-temp      17 C
     2014-01-12 17:38:53   party-temp      17 C
     2014-01-12 19:19:42   state           T: 23.6 H: 49
     2014-01-11 00:00:51   time-request    -
   Helper:
     mId        0039
     rxType     140
     Io:
       nextSend   1389550802.19796
     Prt:
       bErr       0
       sProc      0
       sleeping   1
       Rspwait:
     Q:
       qReqConf   
       qReqStat   
     Role:
       chn        1
       dev        1
     Rssi:
       At_hmlan1:
         avg        -71.75
         cnt        20
         lst        -69
         max        -69
         min        -74
Attributes:
   actCycle   000:10
   actStatus  alive
   autoReadReg 1
   expert     2_full
   firmware   2.1
   model      HM-CC-TC
   peerIDs   
   room       Zi_Saskia
   serialNr   JEQ0138371
   subType    thermostat   

Gruß Udo
3x Raspi 2 / FHEM aktuelle Version (2x Echtsystem, 1x Testsystem)

HM-CFG-LAN, HM-CC-TC, HM-LC-Sw2-FM, HM-LC-Sw4-DR, HM-CC-VD

martinp876

hi,

ZitatIm Thermostat stehen aber bei List immer noch keine Templist mehr.
???
   DEF        1ADC0502
   NAME       OG_SA_Climate
....
     2014-01-12 17:38:53   tempListWed     05:30 10.0 07:00 21.0 15:00 18.0 20:00 21.0 24:00 10.0
     2014-01-12 17:38:53   tempList_State  verified

so soll es sein

ZitatDEF        1ADC05
NAME       OG_SA_Heizung
keine templist - warum auch?

ich kann das Problem nicht sehen.

was mich aber interessiert ist der Ablauf. Die Messages sind zu schnell gesendet worden - es ist noch einmal gut gegangen... aber es passt nicht wirklich. Du hast sicher die aktuelle SW?

Gruss Martin

UdoG

Hallo Martin,

ich habe jetzt nochmal das mit den Versionen geprüft. Dabei ist mir aufgefallen die Daten welche bei "version" gezeigt werden weichen von den Dateien auf der Fritzbox ab.

# $Id: fhem.pl 4603 2014-01-10 12:28:58Z rudolfkoenig $
# $Id: 10_CUL_HM.pm 4610 2014-01-10 19:19:54Z martinp876 $
# $Id: 01_FHEMWEB.pm 4605 2014-01-10 14:33:50Z rudolfkoenig $
# $Id: 92_FileLog.pm 4607 2014-01-10 15:01:13Z rudolfkoenig $
# $Id: 00_HMLAN.pm 4562 2014-01-05 15:22:54Z martinp876 $
# $Id: 99_MyUtils.pm 1932 2013-03-09 23:15 udo grun $
# $Id: 99_SUNRISE_EL.pm 4537 2014-01-03 08:28:59Z rudolfkoenig $
# $Id: 98_SVG.pm 4606 2014-01-10 14:59:39Z rudolfkoenig $
# $Id: 99_Utils.pm 3595 2013-08-05 05:38:48Z tobiasfaust $
# $Id: 59_Weather.pm 4321 2013-12-03 20:13:08Z borisneubert $
# $Id: 98_autocreate.pm 4234 2013-11-17 10:19:41Z rudolfkoenig $
# $Id: 98_dummy.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 91_notify.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 98_telnet.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 98_weblink.pm 3770 2013-08-23 13:29:58Z rudolfkoenig $

z.B. # $Id: 99_MyUtils.pm 1932 2013-03-09 23:15 udo grun $ wird angezeigt aber in wirklichkeit liegt eine Datei vom 13.01.2014 11:19 auf der Fritzbox in \fhem\FHEM

Dies ist auch bei anderen Dateien so. Woher nimmt der Befehl "version" seine Informationen.  Was wird im verzeichnis \fhem\FHEM\FhemUtils gespeichert?

Ich hatte von einer alten Installation noch das Verzeichnis \fhem.OLD auf der Fritzbox. Dieses habe ich inzwischen komplett gelöscht und die FritzBox neu gestartet (mit Strom AUS / AN).

Gruß Udo
3x Raspi 2 / FHEM aktuelle Version (2x Echtsystem, 1x Testsystem)

HM-CFG-LAN, HM-CC-TC, HM-LC-Sw2-FM, HM-LC-Sw4-DR, HM-CC-VD

UdoG

#18
Habe jetzt eine Erklärung für meine Anzeige mit "version" gefunden. Ich muss in die Datei rein schauen in die Kopfzeile und nicht auf das Dateidatum. Da hatte bisher was falsch gemacht.
Werde jetzt mal alles prüfen.

Udo

Jetzt geprüft auf der Fritzbox liegen die Dateien mit den Versionen wie beim Abruf

# $Id: fhem.pl 4603 2014-01-10 12:28:58Z rudolfkoenig $
# $Id: 10_CUL_HM.pm 4617 2014-01-11 08:35:29Z martinp876 $
# $Id: 01_FHEMWEB.pm 4605 2014-01-10 14:33:50Z rudolfkoenig $
# $Id: 92_FileLog.pm 4607 2014-01-10 15:01:13Z rudolfkoenig $
# $Id: 00_HMLAN.pm 4562 2014-01-05 15:22:54Z martinp876 $
# $Id: 99_MyUtils.pm 1932 2014-01-13 14:30 udo grun $
# $Id: 99_SUNRISE_EL.pm 4537 2014-01-03 08:28:59Z rudolfkoenig $
# $Id: 98_SVG.pm 4606 2014-01-10 14:59:39Z rudolfkoenig $
# $Id: 99_Utils.pm 3595 2013-08-05 05:38:48Z tobiasfaust $
# $Id: 59_Weather.pm 4321 2013-12-03 20:13:08Z borisneubert $
# $Id: 98_autocreate.pm 4234 2013-11-17 10:19:41Z rudolfkoenig $
# $Id: 98_backup.pm 3391 2013-07-08 06:05:52Z rudolfkoenig $
# $Id: 98_dummy.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 98_fheminfo.pm 3775 2013-08-24 08:31:39Z rudolfkoenig $
# $Id: 98_notice.pm 2647 2013-02-04 21:43:52Z mfr69bs $
# $Id: 91_notify.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 98_telnet.pm 3738 2013-08-18 14:13:59Z rudolfkoenig $
# $Id: 98_update.pm 4070 2013-10-19 11:22:17Z rudolfkoenig $
# $Id: 98_weblink.pm 3770 2013-08-23 13:29:58Z rudolfkoenig $
3x Raspi 2 / FHEM aktuelle Version (2x Echtsystem, 1x Testsystem)

HM-CFG-LAN, HM-CC-TC, HM-LC-Sw2-FM, HM-LC-Sw4-DR, HM-CC-VD

UdoG

Hallo,

jetzt scheint es wieder zu funktionieren. Habe "reload 99_MyUtils.pm", "{SetTempList_OG_SA}" und "set OG_SA_Heizung getConfig" durchgeführt und geänderte Werte nach einiger zeit zurück bekommen.
Gibt es eine Möglichkeit das ganze nach einem Ändern der TemList für verschiedene TC's in einem Rutsch auszulösen?

Udo
3x Raspi 2 / FHEM aktuelle Version (2x Echtsystem, 1x Testsystem)

HM-CFG-LAN, HM-CC-TC, HM-LC-Sw2-FM, HM-LC-Sw4-DR, HM-CC-VD

martinp876

Hallo Udo,
ZitatGibt es eine Möglichkeit das ganze nach einem Ändern der TemList für verschiedene TC's in einem Rutsch auszulösen?

die Frage klingt seltsam für mich. Du willst n verschiedene TCs mit m verschiedenen templisten füttern und das soll automatisiert ablaufen?
was soll wann automatisiert werden? wo sollen die Werte herkommen? Irgendetwas musst du schon vorgeben.

Es gibt möglichkeiten komplette registersätze zu schreiben - low level. Man kann sie auch vorher lesen... und so konfigurationen "tauschen". Aber ich bin nicht sicher, was du vor hast.

Gruss Martin



UdoG

Hallo Martin,

da habe ich mich etwas falsch ausgedrückt. In meiner 99_MyUtils.pm stehen für 8 Zimmer für den jeweiligen TC die Heizzeiten für Mo-So drin. Wenn ich jetzt dort mehrere Zimmer anpasse (jedes Zimmer hat seinen eigenen Eintrag), dann wollte ich mit einem Befehl erreichen das alle TC's nacheinander aktualisiert werden. Vieleicht mache ich es zur Zeit auch falsch da ich es nicht besser kann. Aber der Aufwand erst reload 99_MyUtilspm durchführen und dann jeweils für jeden TC die Templiste mit "{SetTempList_OG_SA}" (Name natürlich für jeden TC anders) einzeln auslösen ist mir ein wenig aufwendig. Auch habe ich festgestellt ohne getconfig kommen keine aktuellen Werte zurück. Warscheinlich ist alles nur ein Bedienproblem.

Gruß Udo
3x Raspi 2 / FHEM aktuelle Version (2x Echtsystem, 1x Testsystem)

HM-CFG-LAN, HM-CC-TC, HM-LC-Sw2-FM, HM-LC-Sw4-DR, HM-CC-VD

martinp876

Hallo Udo,

ich würde  es so machen:
1) Attribut autoReadReg auf 5 setzen. Aktuell würde automatisch 4 gesetzt werden. 5 soll erreichen. die templisten immer aktuallisiert werden - wenn es schief geht wird nach 30min noch einmal nachgefragt. Das dauert lange, aber es soll "sanft" sein, also das IO device nicht überlasten.

2) prüfen kannst du, ob die register-listen gelesen sind mit HMInfo configCheck.

3) du solltest etwas ergonomischer vorgehen nutze "prep" und "exec"
   { fhem ("set WZ_Term_Climate tempListMon prep 04:30 17.0 07:00 22.0 12:00 20.0 20:30 22.0 24:00 17.0")};
   { fhem ("set WZ_Term_Climate tempListTue prep 04:30 17.0 07:00 22.0 12:00 20.0 20:30 22.0 24:00 17.0")};
   { fhem ("set WZ_Term_Climate tempListWed prep 04:30 17.0 07:00 22.0 12:00 20.0 20:30 22.0 24:00 17.0")};
   { fhem ("set WZ_Term_Climate tempListThu prep 04:30 17.0 07:00 22.0 12:00 20.0 20:30 22.0 24:00 17.0")};
   { fhem ("set WZ_Term_Climate tempListFri prep 04:30 17.0 07:00 22.0 12:00 20.0 20:30 22.0 24:00 17.0")};
   { fhem ("set WZ_Term_Climate tempListSat prep 07:00 17.0 21:00 22.0 24:00 17.0")};
   { fhem ("set WZ_Term_Climate tempListSun exec 08:00 17.0 21:00 22.0 24:00 17.0")};

4) schreiben alle templisten in eine subroutine.
a) es sollte immer eine aktuelle registerliste vorliegen siehe 1) und b)
b) wenn der aktuelle Wert in FHEM dem des TC entspricht, es sich also nichts ändert wird sowieso nichts geschrieben - macht also nichts
c) da du keinen burst nutzt wird das senden gestaffelt abgearbeitet - immer wenn ein device aufwacht wird geschrieben. Das vermeidet (auf gewisser zufallsbasis.. ) peak-loads.

5)Prüfung Teil 1
du kannst vor dem senden den protokol-stack und die gesammelten Fehler löschen
   { fhem ("set du_Term clear msgEvents")}; 
{ fhem ("set du_Term_Climate tempListMon prep 09:00 11.0 14:00 10.0 17:00 10.0 18:00 10.0 20:00 10.0 24:00 10.0")};
....
damit ist es einfacher nach dem Ausführen (also 10-20 min danach - bedenke die TC verzögerung...) ein HMInfo "set hm protoEvents short" prüfen, ob alles übertragen wurde - ggf kannst du kontrolieren.

6) Prüfung Teil 2
HMInfo
set hm configChech
sollte anzeigen, dass wieder alle Register in FHEM vorliegen, komplett gelesen wurden

7) Prüfung Teil 3
wenn ich es des öfteren ändern würde  würde ich einen check einbauen. Also
my $WZ_Term_Mo = "04:30 17.0 07:00 22.0 12:00 20.0 20:30 22.0 24:00 17.0"
setzen mit
   { fhem ("set WZ_Term_Climate tempListMon prep  $WZ_Term_Mo")};
prüfen mit
if (ReadingsVal("WZ_Term_Climate","tempListMon","") ne $WZ_Term_Mo).... aktion...


Gruss Martin



martinp876

Hi Udo,

da ich prinzipiell auch das Problem der Verwaltung von temperaturlisten sehe, habe ich in HMInfo eine support-funktion eingebaut.

wenn du HMInfo definiert hast
define hm HMInfo

kannst du mit
set hm tempList save <filename>
set hm tempList verify <filename>
set hm tempList restore <filename>

du kannst somit
- aktuelle templisten in ein File schreiben
- die files editieren, wenn du willst
- die readings gegen die Files vergleichen
- den Inhalt der files/des files an die thermostate schicken

würde mich freuen, wenn du - und wer sonst interesse hat -  es probierst.
Der default-filename ist "tempList.cfg"

Gruss Martin


UdoG

Hallo Martin,

danke für den Tipp. Ich werde es bei nächster Gelegenheit mal austesten. Eventuell bietet es auch die Möglichkeit die Listen automatisch zu tauschen in den TC's. Dies würde bei Schichtarbeitern eventuell Sinn machen, wo ja die Heizzeiten wechseln können mal soll es Früh warm sein und mal Abends. Schichtpläne sind bei vielen nach gleichen Abläufen und einer Regelmäßigkeit aufgebaut.

Gruß Udo
3x Raspi 2 / FHEM aktuelle Version (2x Echtsystem, 1x Testsystem)

HM-CFG-LAN, HM-CC-TC, HM-LC-Sw2-FM, HM-LC-Sw4-DR, HM-CC-VD

martinp876

Hi Udo

ZitatEventuell bietet es auch die Möglichkeit die Listen automatisch zu tauschen
sicher. Du kannst beliebig viele konfig files definieren.
Da ich bei automatischen setzen von Registern immer noch vorsichtig bin würde ich einen test einbauen.
also high level

set hm tempList save file1
schedule verify after 10min
  set hm tempList verify file1
  if not ok set hm tempList save file1 again


Gruss Martin