Hallo,
mit ist es gelungen den Z-Wave-Eurotronic Spirit Thermostat zu includieren.
https://wiki.fhem.de/wiki/Z-Wave-Eurotronic_Spirit_Thermostat (https://wiki.fhem.de/wiki/Z-Wave-Eurotronic_Spirit_Thermostat)
Nun wollte ich ihn wie Homematic durch Weekprofile steuern, aber das Device wird nicht unterstützt. Hätte ich mal vorher gelesen. Aber nun habe ich 4 Stück davon.
https://wiki.fhem.de/wiki/Weekprofile (https://wiki.fhem.de/wiki/Weekprofile)
Welche Heizungssteuerung werwendet Ihr für die z-Wave Thermostate?
Dankeschön
ich verwende akt. drei Spirit-Z via weekdaytimer ...
und damit es komplizierter wird - habe ich je einen Heizplan fuer 'normal' und einen zweiten fuer 'Feiertage'.
funktioniert fuer meine Idee von Steuerung recht OK.
Hallo,
ich verwende für meine Spirit auch WeekdayTimer in
Zusammenarbeit mit PID20.
Bin soweit sehr Zufrieden mit dieser Lösung!
Gruß
Hans-Jürgen
Hallo,
Dankeschön für die Antworten.
meins sieht jetzt so aus:
defmod HZ_Moe WeekdayTimer ZWave_THERMOSTAT_MOE de \
1|09:00|20 1|13:00|20 1|18:00|18 1|22:00|18 \
2|09:00|22 2|13:00|22 2|18:00|18 2|22:00|18 \
3|09:00|20 3|13:00|20 3|18:00|18 3|22:00|18 \
4|09:00|22 4|13:00|22 4|18:00|18 4|22:00|18 \
5|09:00|20 5|13:00|20 5|18:00|18 5|22:00|18 \
6|09:00|18 6|13:00|18 6|18:00|18 6|22:00|18 \
0|09:00|18 0|13:00|18 0|18:00|18 0|22:00|18 \
set $NAME desired-temp $EVENT
attr HZ_Moe commandTemplate set $NAME desired-temp $EVENT
attr HZ_Moe comment https://wiki.fhem.de/wiki/WeekdayTimer
attr HZ_Moe room Heizung
das Profil aber:
Profil 0: Sonntag 13:00:00 18, 18:00:00 18, 22:00:00 18
Profil 1: Montag 13:00:00 20, 18:00:00 18, 22:00:00 18
Profil 2: Dienstag 13:00:00 22, 18:00:00 18, 22:00:00 18
Profil 3: Mittwoch 13:00:00 20, 18:00:00 18, 22:00:00 18
Profil 4: Donnerstag 13:00:00 22, 18:00:00 18, 22:00:00 18
Profil 5: Freitag 13:00:00 20, 18:00:00 18, 22:00:00 18
Profil 6: Samstag 13:00:00 18, 18:00:00 18, 22:00:00 18
wo ist der 9:00 Uhr-Schalter? Ich bekomme es nicht hin.
hier nochmal ein List:
Internals:
CFGFN
COMMAND
set $NAME desired-temp $EVENT
CONDITION
DEF ZWave_THERMOSTAT_MOE de
1|09:00|20 1|13:00|20 1|18:00|18 1|22:00|18
2|09:00|22 2|13:00|22 2|18:00|18 2|22:00|18
3|09:00|20 3|13:00|20 3|18:00|18 3|22:00|18
4|09:00|22 4|13:00|22 4|18:00|18 4|22:00|18
5|09:00|20 5|13:00|20 5|18:00|18 5|22:00|18
6|09:00|18 6|13:00|18 6|18:00|18 6|22:00|18
0|09:00|18 0|13:00|18 0|18:00|18 0|22:00|18
set $NAME desired-temp $EVENT
DEVICE ZWave_THERMOSTAT_MOE
FUUID 5dca481f-f33f-6033-a5b6-d98f2ac17d6b27bd
GlobalDaylistSpec
LANGUAGE de
NAME HZ_Moe
NR 114408
Profil 0: Sonntag 13:00:00 18, 18:00:00 18, 22:00:00 18
Profil 1: Montag 13:00:00 20, 18:00:00 18, 22:00:00 18
Profil 2: Dienstag 13:00:00 22, 18:00:00 18, 22:00:00 18
Profil 3: Mittwoch 13:00:00 20, 18:00:00 18, 22:00:00 18
Profil 4: Donnerstag 13:00:00 22, 18:00:00 18, 22:00:00 18
Profil 5: Freitag 13:00:00 20, 18:00:00 18, 22:00:00 18
Profil 6: Samstag 13:00:00 18, 18:00:00 18, 22:00:00 18
STATE active
STILLDONETIME 0
TYPE WeekdayTimer
READINGS:
2019-11-12 08:16:59 currValue 18
2019-11-12 08:16:59 nextUpdate 2019-11-12 13:00:00
2019-11-12 08:16:59 nextValue 22
2019-11-12 08:16:54 state active
SWITCHINGTIMES:
1|09:00|20
1|13:00|20
1|18:00|18
1|22:00|18
2|09:00|22
2|13:00|22
2|18:00|18
2|22:00|18
3|09:00|20
3|13:00|20
3|18:00|18
3|22:00|18
4|09:00|22
4|13:00|22
4|18:00|18
4|22:00|18
5|09:00|20
5|13:00|20
5|18:00|18
5|22:00|18
6|09:00|18
6|13:00|18
6|18:00|18
6|22:00|18
0|09:00|18
0|13:00|18
0|18:00|18
0|22:00|18
TIMER:
HZ_Moe_1:
HASH HZ_Moe
MODIFIER 1
NAME HZ_Moe_1
HZ_Moe_10:
HASH HZ_Moe
MODIFIER 10
NAME HZ_Moe_10
HZ_Moe_11:
HASH HZ_Moe
MODIFIER 11
NAME HZ_Moe_11
HZ_Moe_12:
HASH HZ_Moe
MODIFIER 12
NAME HZ_Moe_12
HZ_Moe_13:
HASH HZ_Moe
MODIFIER 13
NAME HZ_Moe_13
HZ_Moe_14:
HASH HZ_Moe
MODIFIER 14
NAME HZ_Moe_14
HZ_Moe_15:
HASH HZ_Moe
MODIFIER 15
NAME HZ_Moe_15
HZ_Moe_16:
HASH HZ_Moe
MODIFIER 16
NAME HZ_Moe_16
HZ_Moe_17:
HASH HZ_Moe
MODIFIER 17
NAME HZ_Moe_17
HZ_Moe_18:
HASH HZ_Moe
MODIFIER 18
NAME HZ_Moe_18
HZ_Moe_19:
HASH HZ_Moe
MODIFIER 19
NAME HZ_Moe_19
HZ_Moe_2:
HASH HZ_Moe
MODIFIER 2
NAME HZ_Moe_2
HZ_Moe_20:
HASH HZ_Moe
MODIFIER 20
NAME HZ_Moe_20
HZ_Moe_21:
HASH HZ_Moe
MODIFIER 21
NAME HZ_Moe_21
HZ_Moe_22:
HASH HZ_Moe
MODIFIER 22
NAME HZ_Moe_22
HZ_Moe_23:
HASH HZ_Moe
MODIFIER 23
NAME HZ_Moe_23
HZ_Moe_24:
HASH HZ_Moe
MODIFIER 24
NAME HZ_Moe_24
HZ_Moe_25:
HASH HZ_Moe
MODIFIER 25
NAME HZ_Moe_25
HZ_Moe_26:
HASH HZ_Moe
MODIFIER 26
NAME HZ_Moe_26
HZ_Moe_27:
HASH HZ_Moe
MODIFIER 27
NAME HZ_Moe_27
HZ_Moe_28:
HASH HZ_Moe
MODIFIER 28
NAME HZ_Moe_28
HZ_Moe_3:
HASH HZ_Moe
MODIFIER 3
NAME HZ_Moe_3
HZ_Moe_4:
HASH HZ_Moe
MODIFIER 4
NAME HZ_Moe_4
immerSchalten 1
HZ_Moe_5:
HASH HZ_Moe
MODIFIER 5
NAME HZ_Moe_5
HZ_Moe_6:
HASH HZ_Moe
MODIFIER 6
NAME HZ_Moe_6
HZ_Moe_7:
HASH HZ_Moe
MODIFIER 7
NAME HZ_Moe_7
HZ_Moe_8:
HASH HZ_Moe
MODIFIER 8
NAME HZ_Moe_8
HZ_Moe_9:
HASH HZ_Moe
MODIFIER 9
NAME HZ_Moe_9
HZ_Moe_SetTimerOfDay:
HASH HZ_Moe
MODIFIER SetTimerOfDay
NAME HZ_Moe_SetTimerOfDay
SETTIMERATMIDNIGHT 1
HZ_Moe_delayed:
HASH HZ_Moe
MODIFIER delayed
NAME HZ_Moe_delayed
dayNumber:
!$we 8
$we 7
di 2
do 4
fr 5
mi 3
mo 1
sa 6
so 0
helper:
daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
SWITCHINGTIME:
0:
13:00:00 18
18:00:00 18
22:00:00 18
1:
13:00:00 20
18:00:00 18
22:00:00 18
2:
13:00:00 22
18:00:00 18
22:00:00 18
3:
13:00:00 20
18:00:00 18
22:00:00 18
4:
13:00:00 22
18:00:00 18
22:00:00 18
5:
13:00:00 20
18:00:00 18
22:00:00 18
6:
13:00:00 18
18:00:00 18
22:00:00 18
WEDAYS:
4 1
5 1
longDays:
de:
Sonntag
Montag
Dienstag
Mittwoch
Donnerstag
Freitag
Samstag
Wochenende
Werktags
en:
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
weekend
weekdays
fr:
Dimanche
Lundi
Mardi
Mercredi
Jeudi
Vendredi
Samedi
weekend
jours de la semaine
profil:
1:
EPOCH 1573545600
PARA 20
TIME 09:00
TAGE:
10:
EPOCH 1573560000
PARA 20
TIME 13:00
TAGE:
3
11:
EPOCH 1573578000
PARA 18
TIME 18:00
TAGE:
3
12:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
3
13:
EPOCH 1573545600
PARA 22
TIME 09:00
TAGE:
14:
EPOCH 1573560000
PARA 22
TIME 13:00
TAGE:
4
15:
EPOCH 1573578000
PARA 18
TIME 18:00
TAGE:
4
16:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
4
17:
EPOCH 1573545600
PARA 20
TIME 09:00
TAGE:
18:
EPOCH 1573560000
PARA 20
TIME 13:00
TAGE:
5
19:
EPOCH 1573578000
PARA 18
TIME 18:00
TAGE:
5
2:
EPOCH 1573560000
PARA 20
TIME 13:00
TAGE:
1
20:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
5
21:
EPOCH 1573545600
PARA 18
TIME 09:00
TAGE:
22:
EPOCH 1573560000
PARA 18
TIME 13:00
TAGE:
6
23:
EPOCH 1573578000
PARA 18
TIME 18:00
TAGE:
6
24:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
6
25:
EPOCH 1573545600
PARA 18
TIME 09:00
TAGE:
26:
EPOCH 1573560000
PARA 18
TIME 13:00
TAGE:
0
27:
EPOCH 1573578000
PARA 18
TIME 18:00
TAGE:
0
28:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
0
3:
EPOCH 1573578000
PARA 18
TIME 18:00
TAGE:
1
4:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
1
5:
EPOCH 1573545600
PARA 22
TIME 09:00
TAGE:
6:
EPOCH 1573560000
PARA 22
TIME 13:00
TAGE:
2
7:
EPOCH 1573578000
PARA 18
TIME 18:00
TAGE:
2
8:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
2
9:
EPOCH 1573545600
PARA 20
TIME 09:00
TAGE:
profile_IDX:
0:
13:00:00 26
18:00:00 27
22:00:00 28
1:
13:00:00 2
18:00:00 3
22:00:00 4
2:
13:00:00 6
18:00:00 7
22:00:00 8
3:
13:00:00 10
18:00:00 11
22:00:00 12
4:
13:00:00 14
18:00:00 15
22:00:00 16
5:
13:00:00 18
18:00:00 19
22:00:00 20
6:
13:00:00 22
18:00:00 23
22:00:00 24
shortDays:
de:
so
mo
di
mi
do
fr
sa
$we
!$we
en:
su
mo
tu
we
th
fr
sa
$we
!$we
fr:
di
lu
ma
me
je
ve
sa
$we
!$we
Attributes:
commandTemplate set $NAME desired-temp $EVENT
comment https://wiki.fhem.de/wiki/WeekdayTimer
room Heizung
Wo habe ich ein Brett vorm Kopf?
Dankeschön
Hallo,
mal auf die Schnelle ein List von einem
Zimmer WeekdayTimer falls es hilft.....
Internals:
COMMAND {fhem("set $NAME desired $EVENT")}
CONDITION
DEF pidregler_buero mo,di,mi,do,fr,$we|07:08|18 mo,di,mi,do,fr,$we|22:00|18 {fhem("set $NAME desired $EVENT")}
DEVICE pidregler_buero
FUUID 5d480a24-f33f-cca1-4a4c-10e388dc3913348b
GlobalDaylistSpec
LANGUAGE de
NAME wdtimer_buero
NR 322
Profil 0: Sonntag 07:08:00 18, 22:00:00 18
Profil 1: Montag 07:08:00 18, 22:00:00 18
Profil 2: Dienstag 07:08:00 18, 22:00:00 18
Profil 3: Mittwoch 07:08:00 18, 22:00:00 18
Profil 4: Donnerstag 07:08:00 18, 22:00:00 18
Profil 5: Freitag 07:08:00 18, 22:00:00 18
Profil 6: Samstag 07:08:00 18, 22:00:00 18
Profil 7: Wochenende 07:08:00 18, 22:00:00 18
STATE 18
STILLDONETIME 0
TYPE WeekdayTimer
READINGS:
2019-11-12 07:08:00 currValue 18
2019-11-06 19:41:31 disabled 0
2019-11-12 07:08:00 nextUpdate 2019-11-12 22:00:00
2019-11-12 07:08:00 nextValue 18
2019-11-12 07:08:00 state 18
SWITCHINGTIMES:
mo,di,mi,do,fr,$we|07:08|18
mo,di,mi,do,fr,$we|22:00|18
TIMER:
wdtimer_buero_1:
HASH wdtimer_buero
MODIFIER 1
NAME wdtimer_buero_1
wdtimer_buero_2:
HASH wdtimer_buero
MODIFIER 2
NAME wdtimer_buero_2
wdtimer_buero_SetTimerOfDay:
HASH wdtimer_buero
MODIFIER SetTimerOfDay
NAME wdtimer_buero_SetTimerOfDay
SETTIMERATMIDNIGHT 1
dayNumber:
!$we 8
$we 7
di 2
do 4
fr 5
mi 3
mo 1
sa 6
so 0
helper:
daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
SWITCHINGTIME:
0:
07:08:00 18
22:00:00 18
1:
07:08:00 18
22:00:00 18
2:
07:08:00 18
22:00:00 18
3:
07:08:00 18
22:00:00 18
4:
07:08:00 18
22:00:00 18
5:
07:08:00 18
22:00:00 18
6:
07:08:00 18
22:00:00 18
7:
07:08:00 18
22:00:00 18
WEDAYS:
4 1
5 1
longDays:
de:
Sonntag
Montag
Dienstag
Mittwoch
Donnerstag
Freitag
Samstag
Wochenende
Werktags
en:
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
weekend
weekdays
fr:
Dimanche
Lundi
Mardi
Mercredi
Jeudi
Vendredi
Samedi
weekend
jours de la semaine
profil:
1:
EPOCH 1573538880
PARA 18
TIME 07:08
TAGE:
1
2
3
4
5
7
2:
EPOCH 1573592400
PARA 18
TIME 22:00
TAGE:
1
2
3
4
5
7
profile_IDX:
0:
07:08:00 1
22:00:00 2
1:
07:08:00 1
22:00:00 2
2:
07:08:00 1
22:00:00 2
3:
07:08:00 1
22:00:00 2
4:
07:08:00 1
22:00:00 2
5:
07:08:00 1
22:00:00 2
6:
07:08:00 1
22:00:00 2
7:
07:08:00 1
22:00:00 2
shortDays:
de:
so
mo
di
mi
do
fr
sa
$we
!$we
en:
su
mo
tu
we
th
fr
sa
$we
!$we
fr:
di
lu
ma
me
je
ve
sa
$we
!$we
Attributes:
DbLogExclude .*
alias Heizzeiten_Büro
commandTemplate set $NAME $EVENT
disable 0
group Heizung und Temperatur
icon sani_heating_automatic
room Wohnung->Büro
sortby 2
switchInThePast 1
Gruß
Hans-Jürgen
Zitat von: FHEM-User22 am 12 November 2019, 08:24:18
wo ist der 9:00 Uhr-Schalter? Ich bekomme es nicht hin.
Der WDT kannte bisher keine Zeilenumbrüche in der DEF.
Mit dem angehängten Code sollte das dann auch gehen:
Hallo Beta-User,
habs probiert, leider keine Änderungen. Ich habe die 98_WeekdayTimer.pm nach /opt/fhem/FHEM kopiert und shutdown restart gemacht.
Der Zeilenumbruch klappte ja vorhin schon, nur die erste Zeit (09:00) fehlte in jeder Zeile bei den Profilen.
Ich könnte sie ja einfach 2 mal eintragen, aber das ist ja keine Lösung des Problems.
Dankeschön.
Vorab mal Danke für's Testen. Es liegt wohl schon an den Zeilenumbrüchen, leider hatte ich heute morgen nicht alle relevanten Stellen erwischt (die eigentliche Einrichtung passiert erst nach $init_done...). Mit der Version hier jetzt sollte das besser sein (reload sollte genügen, aber shutdown restart ist in jedem Fall sicher.)
Hallo Beta-User,
Super, jetzt klappts.
Dankeschön und schönen Feierabend
PS: wenn es jetzt noch etwas WAF-Freundlicher zu bedienen wäre....
Danke für's Testen und die Rückmeldung!
Du bist lustig... Ich habe den Code nur "vertretungsweise geerbt" und bin froh, wenn ich die richtigen Stellschrauben identifizieren kann...
GUI-Gestaltung (sollte man wohl in javascript machen) ist leider terra incognita :( .
Moin,
Zitat von: Beta-User am 12 November 2019, 18:03:01
Du bist lustig... Ich habe den Code nur "vertretungsweise geerbt" und bin froh, wenn ich die richtigen Stellschrauben identifizieren kann...
GUI-Gestaltung (sollte man wohl in javascript machen) ist leider terra incognita :( .
Sorry, war nicht für Dich persönlich gemeint. Mehr so in die Runde.....
Ich war Homematic gewöhnt, aber in dem Haus jetzt brauche ich die Repeaterfunktion von Z-Wave. Somit suchte ich etwas ähnliches wie Weekprofile https://wiki.fhem.de/wiki/Weekprofile (https://wiki.fhem.de/wiki/Weekprofile) zum Heizungsregeln.
Dankeschön nochmals und einen schönen Tag.
Kein Ding...
Habe mir weekprofile grade mal angesehen. Spontane Idee war, dass man das eventuell direkt als Frontend nutzen könnte. Da scheinen die Daten/Schaltzeiten in einer externen file abgelegt zu werden.
An sich sollte es möglich sein, diese Daten einzulesen, eventuell müßte man noch etwas Schnittstellenarbeit leisten, aber grundsätzlich...
Ablauf könnte so sein: weekprofile erstellt das jeweilige Profil, das wird dann gespeichert und an WeekdayTimer übergeben (ein einfaches "set enable"?), der sendet dann die Schaltbefehle (zur richtigen Zeit) an sein (HK-) Device.
Dann müßte man nur die define-Anweisung so ändern, dass man z.B. "weekprofile:<Devicename>" statt der Schaltzeiten angibt, so dass der WDT dann die Zeiten aus dem file liest.
Dafür sollte allerdings erst der WDT repariert werden (es sind ein oder zwei bugs da drin), und dann würden Tester benötigt... Vielleicht kann ja jemand den Parser für das Lesen der JSON-Struktur erstellen? Dann ginge das uU. auch parallel.
Hallo,
habe von Programmierung nur totale Glatze aber
ZitatIch war Homematic gewöhnt, aber in dem Haus jetzt brauche ich die Repeaterfunktion von Z-Wave. Somit suchte ich etwas ähnliches wie Weekprofile https://wiki.fhem.de/wiki/Weekprofile zum Heizungsregeln.
wenn die Betonung auf ähnliches liegt bietet sich vielleicht auch das Modul Timer an ??
Nutze es für meine WW Zirkulation und Morgeninfo.
Gruß
Hans-Jürgen
Bin grade zufällig wieder hier gelandet ;D .
@FHEM-User22: Es gibt eine Testversion von WeekdayTimer, die (bisher rudimentär) mit weekprofile umgehen kann, Danke für die Anregung, das geht auf deine Kappe ;) .
Details und weitere Diskussion bitte hier: https://forum.fhem.de/index.php/topic,105521.0.html
Für vollständige Integration wäre neben weiterer Tests v.a. noch etwas Anpassung in weekprofile nötig.
Hallo Beta-User,
dankeschön. Ich werde mich damit befassen. Wenn ich was ausprobieren kann, sage Bescheid.
Ich habe zur Zeit leider ein anderes Problem, mein Thermostat regelt nicht, wo Könnte ich etwas umschalten? Es ging die ersten Tage super, plötzlich nicht mehr. Er reagiert weder auf das Setzen der Desired-Temp noch auf: setpointTemp 21.0 C heating.
Die Temperatur im Raum bleibt 18 Grad.
Hat das was mit dem ThermostatMode zu tun? Wenn ja, wie kann ich umstellen?
Hier das List:
Internals:
DEF f712869a 11
FUUID 5dc989e1-f33f-6033-dc03-648c5c9df484b790
IMAGE /fhem/deviceimages/zwave/ZC10-17095777
IODev ZWDongle_0
NAME ZWave_THERMOSTAT_MOE
NR 214
STATE <div style='color:blue'>desired-temp 20,<div style='color:green'> <b><b>IST: 17.96 C </b></b></div><div style='color:black'>21.0 C heating</b>
STILLDONETIME 0
TYPE ZWave
ZWaveSubDevice no
cmdsPending 0
homeId f712869a
isWakeUp
lastMsgSent 1574261991.25691
nodeIdHex 0b
Helper:
DBLOG:
state:
LogDB:
TIME 1574261991.26008
VALUE desired-temp 20
READINGS:
2019-11-11 17:18:42 SECURITY DISABLED (Networkkey not found)
2019-11-11 17:18:55 SEND_DATA failed:00
2019-11-11 17:35:10 alarm System: Event cleared: unknown event 0
2019-11-11 17:29:57 assocGroup_1 Max 1 Nodes ZWDongle_0
2019-11-11 17:29:57 assocGroups 1
2019-11-11 17:45:22 configBacklight BacklightEnabled
2019-11-15 08:36:13 configBatteryReport SendOnceADay
2019-11-11 17:45:22 configLCDInvert Normal
2019-11-11 17:45:23 configLCDTimeout 0
2019-11-11 17:45:23 configMeasuredTemperatureOffset 0
2019-11-11 17:45:23 configOpenWindowDetection MediumSensibility
2019-11-11 17:45:23 configTemperatureReportThreshold 5
2019-11-11 17:45:23 configValveOpeningPercentageReport 0
2019-11-11 17:18:44 model EUROtronic EUR_SPIRITZ Wall Radiator Thermostat
2019-11-11 17:18:44 modelConfig eurotronic/eur_spiritz.xml
2019-11-11 17:18:44 modelId 0148-0003-0001
2019-11-15 15:00:51 neighborList ZWave_ST_01 ZWave_0SWITCH_Haus ZWave_0SWITCH_Buero
2019-11-15 15:44:31 neighborUpdate done
2019-11-13 15:45:15 setpointTemp 21.0 C heating
2019-11-20 15:59:51 state desired-temp 20
2019-11-15 03:49:58 temperature 17.96 C
2019-11-15 08:36:33 thermostatMode heating
2019-11-20 15:59:52 timeToAck 1.419
2019-11-20 15:59:52 transmit OK
2019-11-15 08:36:46 zwavePlusInfo version:01 role:SleepingListeningSlave node:Z-Wave+Node installerIcon:1200 userIcon:1200
Attributes:
DbLogInclude (temperature|state|setpointTemp)
IODev ZWDongle_0
classes ZWAVEPLUS_INFO ASSOCIATION ASSOCIATION_GRP_INFO VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY PROTECTION SENSOR_MULTILEVEL SWITCH_MULTILEVEL THERMOSTAT_MODE THERMOSTAT_SETPOINT BATTERY CONFIGURATION ALARM POWERLEVEL SECURITY SECURITY_S2 TRANSPORT_SERVICE SUPERVISION FIRMWARE_UPDATE_MD
comment https://wiki.fhem.de/wiki/Z-Wave-Eurotronic_Spirit_Thermostat
https://forum.fhem.de/index.php?topic=97292.0
https://wiki.fhem.de/wiki/WeekdayTimer
neighborListPos 609.36,78.58
room Heizung,ZWave
stateFormat <div style='color:blue'>state,<div style='color:green'> <b><b>IST: temperature </b></b></div><div style='color:black'>setpointTemp</b>
vclasses ALARM:8 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 BATTERY:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:3 MANUFACTURER_SPECIFIC:1 POWERLEVEL:1 PROTECTION:1 SECURITY:1 SECURITY_S2:1 SENSOR_MULTILEVEL:5 SWITCH_MULTILEVEL:1 THERMOSTAT_MODE:3 THERMOSTAT_SETPOINT:3 TRANSPORT_SERVICE:2 VERSION:2 ZWAVEPLUS_INFO:2
Dankeschön.
Sorry, habe es mit Englisch nicht so, falls die CommandRef mehr dazu aussagt...
Du kannst das gerne Testen, einfach die File aus dem anderen Thread nehmen, die in fhem/FHEM-Verzeichnis vorhandene ersetzen und reload ausführen. Dann sind die neuen Optionen verfügbar, mehr Doku als in dem anderen Thread vorhanden gibt es bislang nicht...
Was den Thermostat angeht, kann ich leider nicht helfen, ich habe den nicht.
Hallo FHEM-User22
mal ein List von einem Spirit
Internals:
DEF e769ab5c 18
FUUID 5cbcf1af-f33f-cca1-1bcd-833d326325a81db1
IODev ZWDongle_0
LASTInputDev ZWDongle_0
MSGCNT 68
NAME KUECHE_ZW_THERMOSTAT
NR 303
STATE dim 23
TYPE ZWave
ZWDongle_0_MSGCNT 68
ZWDongle_0_RAWMSG 001381000092
ZWDongle_0_TIME 2019-11-20 21:01:36
ZWaveSubDevice no
cmdsPending 0
homeId e769ab5c
isWakeUp
lastMsgSent 1574280095.03287
nodeIdHex 12
READINGS:
2019-10-21 23:20:43 SEND_DATA failed:00
2019-07-24 22:43:32 alarmTypeSupported PowerManagement System
2019-04-22 00:46:45 assocGroup_1 Max 1 Nodes ZWDongle_0
2019-04-22 00:46:45 assocGroups 1
2019-11-20 17:39:45 battery 35 %
2019-11-20 17:39:45 batteryLevel 100
2019-11-20 17:39:45 batteryPercent 35
2019-11-20 17:39:45 batteryState ok
2019-07-25 22:21:33 configBacklight BacklightEnabled
2019-07-25 22:21:33 configBatteryReport SendBatteryStatusUnsolicitedOnce1
2019-07-25 22:21:33 configLCDInvert LCDContentNormal
2019-07-25 22:21:33 configLCDTimeout 0
2019-07-25 22:21:33 configMeasuredTemperatureOffset 0
2019-07-25 22:21:34 configMeasuredTemperatureReport 5
2019-07-25 22:21:34 configValveOpeningPercentageReport 1
2019-07-25 22:21:34 configWindowOpenDetection OpenWindowDetectionDisabled
2019-07-24 22:22:34 config_12 0
2019-07-24 22:30:30 fwMd fwMdManId: 0148, fwMdFwId_0: 0301, fwMdChkSum_0: 7f13, fwMdUpgradeable: ff, fwMdNrTarg: 01, fwMdFrqSize: 0028, fwMdFwId_1: 0001
2019-08-10 09:12:21 model EUROtronic EUR_SPIRITZ Wall Radiator Thermostat
2019-08-10 09:12:21 modelConfig eurotronic/eur_spiritz.xml
2019-08-10 09:12:21 modelId 0148-0003-0001
2019-07-24 22:49:10 neighborList ZWDongle_0 SZ_DECKE_ZW_DIM WOH_ZW_THERMOSTAT_OST Thermostat1_UG_WZ ZWave_SWITCH_BINARY_10 Steckd_POPP Thermostat_Bad ZWave_SWITCH_BINARY_16
2019-07-24 22:46:04 neighborUpdate done
2019-07-25 11:32:17 reportedState dim 99
2019-11-20 21:01:36 state dim 23
2019-11-20 18:48:49 temperature 22.64 C
2019-07-25 11:36:17 thermostatMode manual
2019-11-20 21:01:36 timeToAck 1.473
2019-11-20 21:01:36 transmit OK
Attributes:
DbLogExclude .*
IODev ZWDongle_0
WNMI_delay 2.0
alias Thermostat Küche
classes ZWAVEPLUS_INFO ASSOCIATION ASSOCIATION_GRP_INFO VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY PROTECTION SENSOR_MULTILEVEL SWITCH_MULTILEVEL THERMOSTAT_MODE THERMOSTAT_SETPOINT BATTERY CONFIGURATION ALARM POWERLEVEL SECURITY SECURITY_S2 TRANSPORT_SERVICE SUPERVISION FIRMWARE_UPDATE_MD
group Heizung und Temperatur
icon hc_wht_regler
room Wohnung->Küche,ZWave
sortby 1
userReadings batteryLevel:batteryPercent.* {ReadingsVal("Thermostat_Buero","batteryPercent",0)}
vclasses ALARM:8 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 BATTERY:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:3 MANUFACTURER_SPECIFIC:1 POWERLEVEL:1 PROTECTION:1 SECURITY:1 SECURITY_S2:1 SENSOR_MULTILEVEL:5 SUPERVISION:1 SWITCH_MULTILEVEL:1 THERMOSTAT_MODE:3 THERMOSTAT_SETPOINT:3 TRANSPORT_SERVICE:2 VERSION:2 ZWAVEPLUS_INFO:2
umstellen ginge z.B. mit dem set Befehl tmManual ist eigentlich auch dokumentiert ?
Sieht so bei mir nach her aus.
Gruß
Hans-Jürgen
Hallo Beta-User,
unerfahren wie ich bin habe ich Deine Umsetzung mal kurz
anprobiert, sieht sehr interessant aus, bei mehr Zeit geht es weiter.
Trotzdem DANKE für die Mühe!
Gruß
Hans-Jürgen
Zitat von: Deckoffizier am 20 November 2019, 21:34:11
Hallo FHEM-User22
mal ein List von einem Spirit
umstellen ginge z.B. mit dem set Befehl tmManual ist eigentlich auch dokumentiert ?
Guten Morgen Hans-Jürgen,
hatte ich hier: https://forum.fhem.de/index.php/topic,105272.msg994908.html#msg994908 (https://forum.fhem.de/index.php/topic,105272.msg994908.html#msg994908)
Von Deinem Bildschirmfoto würde mich die DropDown-Liste EG-Küche-Wunschtemp-Temporär sowie die Anzeige wdtimer_Küche und eventuell der pidregler_kueche interessieren....
Dankeschön
Zitat von: Deckoffizier am 20 November 2019, 21:55:55
Hallo Beta-User,
unerfahren wie ich bin habe ich Deine Umsetzung mal kurz
anprobiert, sieht sehr interessant aus, bei mehr Zeit geht es weiter.
Trotzdem DANKE für die Mühe!
Gruß
Hans-Jürgen
Die Idee ist tatsächlich von FHEM-User22 (Danke nochmal an der Stelle!), und dass das so "nahtlos" klappt, hat mich auch positiv überrascht.
Danke jedenfalls auch für diese positive Rückmeldung :) ; weiteres feedback dazu bitte in den anderen Thread (wenn du zum Testen kommst...). (Würde mich auch interessieren, was mit "Unerfahren wie ich bin..." ausgesagt werden soll?)
Grüße, Beta-User
Hallo FHEM-User22,
Los gehts ;)
die Programmierer werden die Hände über den Kopf zusammenschlagen......
einmal List vom PID20 pidregler_kueche
Internals:
CHANGED
DEF Kuechesensor:temperature KUECHE_ZW_THERMOSTAT:dim
FUUID 5cbcf503-f33f-cca1-5cc5-64f58c16b53df6e5
NAME pidregler_kueche
NR 304
NTFY_ORDER 50-pidregler_kueche
STATE processing
STILLDONETIME 0
TYPE PID20
VERSION 1.0.0.9
Helper:
DBLOG:
actuation:
myDbLog:
TIME 1574353219.83565
VALUE 16
actuationCalc:
myDbLog:
TIME 1574353219.83565
VALUE 15.7400000000021
desired:
myDbLog:
TIME 1574353399.92249
VALUE 22
measured:
myDbLog:
TIME 1574353219.83565
VALUE 21.9
p_i:
myDbLog:
TIME 1574353399.92249
VALUE 10.8000000000021
p_p:
myDbLog:
TIME 1574353219.83565
VALUE 5.00000000000007
READINGS:
2019-11-21 17:23:19 actuation 16
2019-11-21 17:23:19 actuationCalc 15.8000000000021
2019-11-21 17:23:19 delta 0.100000000000001
2019-11-21 17:23:19 desired 22
2019-11-21 17:23:19 measured 21.9
2019-11-21 17:23:19 p_d 0
2019-11-21 17:23:19 p_i 10.8000000000021
2019-11-21 17:23:19 p_p 5.00000000000007
2019-11-21 17:23:19 state processing
helper:
actor KUECHE_ZW_THERMOSTAT
actorCommand dim
actorErrorAction errorPos
actorErrorPos 5
actorInterval 180
actorKeepAlive 1800
actorLimitLower 0
actorLimitUpper 99
actorThreshold 1
actorTimestamp 2019-11-21 17:14:19
actorValueDecPlaces 0
adjust
calcInterval 180
deltaGradient 0
deltaOld 0.100000000000001
deltaOldTS 2019-11-21 17:19:34
deltaTreshold 0
desiredName desired
disable 0
factor_D 0
factor_I 0.2
factor_P 50
isWindUP
measuredName measured
reading temperature
regexp ^([\+,\-]?\d+\.?\d*$)
reverseAction 0
sensor Kuechesensor
sensorTimeout 7200
stopped 0
updateInterval 600
Attributes:
DbLogExclude state,delta,p_d
DbLogInclude measured,desired,actuation,p_p,p_i,actuationCalc
event-min-interval actuation:300,actuationCalc:300,delta:300,desired:300,measured:300,p_d:300,p_i:300,p_p:300
event-on-change-reading actuation:1,actuationCalc:0.5,delta:0.2,desired,measured:0.2,p_d:0.1,p_i:1.0,p_p:1.0
group Thermostate
pidActorErrorAction errorPos
pidActorErrorPos 5
pidActorInterval 180
pidActorLimitUpper 99
pidActorTreshold 1
pidActorValueDecPlaces 0
pidCalcInterval 180
pidDeltaTreshold 0
pidFactor_D 0
pidFactor_I 0.2
pidFactor_P 50
pidSensorTimeout 7200
room Wohnung->Küche
list vom eg_kue_wunschtemp
Internals:
DEF ([Wunschtemp_temp_eg_kue])
DOIFDEV ^global$|^Wunschtemp_temp_eg_kue$
FUUID 5c515831-f33f-cca1-fe1d-0b4c540e2d96689e
MODEL FHEM
NAME eg_kue_wunschtemp
NR 154
NTFY_ORDER 50-eg_kue_wunschtemp
STATE Manuell inaktiv
TYPE DOIF
VERSION 20500 2019-11-12 17:54:48
READINGS:
2019-11-21 06:05:00 mantemp 0
Regex:
accu:
cond:
Wunschtemp_temp_eg_kue:
0:
&STATE ^Wunschtemp_temp_eg_kue$
condition:
0 ::InternalDoIf($hash,'Wunschtemp_temp_eg_kue','STATE')
do:
0:
0
1:
helper:
DEVFILTER ^global$|^Wunschtemp_temp_eg_kue$
NOTIFYDEV global|Wunschtemp_temp_eg_kue
globalinit 1
last_timer 0
sleeptimer -1
internals:
all Wunschtemp_temp_eg_kue:STATE
perlblock:
uiState:
uiTable:
Attributes:
DbLogExclude .*
alias EG-Küche-Wunschtemp-Temporär
do always
group Heizung und Temperatur
icon temp_control
readingList mantemp
room Wohnung->Küche
setList mantemp:12,17,18,19,20,21,21.5,22,22.5,23,23.5,24,26
sortby 3
webCmd mantemp
dann noch das List von wdtimer_kueche
Internals:
COMMAND {if (ReadingsVal("TK_EG_Kueche","Window","Closed") eq "Closed") {fhem("set $NAME desired $EVENT")}}
CONDITION
DEF pidregler_kueche mo,di,mi,do,fr,$we|06:05|22 mo,di,mi,do,fr,$we|21:45|22 {if (ReadingsVal("TK_EG_Kueche","Window","Closed") eq "Closed") {fhem("set $NAME desired $EVENT")}}
DEVICE pidregler_kueche
FUUID 5d480b05-f33f-cca1-521c-9fbe22af782f1d73
GlobalDaylistSpec
LANGUAGE de
NAME wdtimer_kueche
NR 323
Profil 0: Sonntag 06:05:00 22, 21:45:00 22
Profil 1: Montag 06:05:00 22, 21:45:00 22
Profil 2: Dienstag 06:05:00 22, 21:45:00 22
Profil 3: Mittwoch 06:05:00 22, 21:45:00 22
Profil 4: Donnerstag 06:05:00 22, 21:45:00 22
Profil 5: Freitag 06:05:00 22, 21:45:00 22
Profil 6: Samstag 06:05:00 22, 21:45:00 22
Profil 7: Wochenende 06:05:00 22, 21:45:00 22
STATE 22
STILLDONETIME 0
TYPE WeekdayTimer
READINGS:
2019-11-21 06:05:00 currValue 22
2019-11-20 09:03:49 disabled 0
2019-11-21 06:05:00 nextUpdate 2019-11-21 21:45:00
2019-11-21 06:05:00 nextValue 22
2019-11-21 06:05:00 state 22
SWITCHINGTIMES:
mo,di,mi,do,fr,$we|06:05|22
mo,di,mi,do,fr,$we|21:45|22
TIMER:
wdtimer_kueche_1:
HASH wdtimer_kueche
MODIFIER 1
NAME wdtimer_kueche_1
wdtimer_kueche_2:
HASH wdtimer_kueche
MODIFIER 2
NAME wdtimer_kueche_2
wdtimer_kueche_SetTimerOfDay:
HASH wdtimer_kueche
MODIFIER SetTimerOfDay
NAME wdtimer_kueche_SetTimerOfDay
SETTIMERATMIDNIGHT 1
dayNumber:
!$we 8
$we 7
di 2
do 4
fr 5
mi 3
mo 1
sa 6
so 0
helper:
daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
SWITCHINGTIME:
0:
06:05:00 22
21:45:00 22
1:
06:05:00 22
21:45:00 22
2:
06:05:00 22
21:45:00 22
3:
06:05:00 22
21:45:00 22
4:
06:05:00 22
21:45:00 22
5:
06:05:00 22
21:45:00 22
6:
06:05:00 22
21:45:00 22
7:
06:05:00 22
21:45:00 22
WEDAYS:
2 1
3 1
longDays:
de:
Sonntag
Montag
Dienstag
Mittwoch
Donnerstag
Freitag
Samstag
Wochenende
Werktags
en:
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
weekend
weekdays
fr:
Dimanche
Lundi
Mardi
Mercredi
Jeudi
Vendredi
Samedi
weekend
jours de la semaine
profil:
1:
EPOCH 1574312700
PARA 22
TIME 06:05
TAGE:
1
2
3
4
5
7
2:
EPOCH 1574369100
PARA 22
TIME 21:45
TAGE:
1
2
3
4
5
7
profile_IDX:
0:
06:05:00 1
21:45:00 2
1:
06:05:00 1
21:45:00 2
2:
06:05:00 1
21:45:00 2
3:
06:05:00 1
21:45:00 2
4:
06:05:00 1
21:45:00 2
5:
06:05:00 1
21:45:00 2
6:
06:05:00 1
21:45:00 2
7:
06:05:00 1
21:45:00 2
shortDays:
de:
so
mo
di
mi
do
fr
sa
$we
!$we
en:
su
mo
tu
we
th
fr
sa
$we
!$we
fr:
di
lu
ma
me
je
ve
sa
$we
!$we
Attributes:
DbLogExclude .*
commandTemplate set $NAME desired $EVENT
disable 0
group Heizung und Temperatur
icon sani_heating_automatic
room Wohnung->Küche
sortby 2
switchInThePast 1
muss aber dazu sagen es gehört noch etwas Code zum Verriegeln bei Fenster auf zu sowie Rücksetzen
von Änderungen dazu
wie
wunschtemp_kueche_check1
Internals:
DEF ##soll beim auslösen vom weekdaytimer eventuelle manuelle
## vorherige temp Anzeige(Änderung) zurücksetzen
([wdtimer_kueche])
(setstate eg_kue_wunschtemp Manuell inaktiv,
setreading eg_kue_wunschtemp mantemp 0,
set eg_kue_wunschtemp mantemp 0)
FUUID 5c515831-f33f-cca1-71ea-2ce83dfa012b1a43
MODEL FHEM
NAME wunschtemp_kueche_check1
NOTIFYDEV wdtimer_kueche,global
NR 151
NTFY_ORDER 50-wunschtemp_kueche_check1
STATE cmd_1
TYPE DOIF
VERSION 20500 2019-11-12 17:54:48
READINGS:
2019-11-21 06:05:00 Device wdtimer_kueche
2019-11-21 06:05:00 cmd 1
2019-11-21 06:05:00 cmd_event wdtimer_kueche
2019-11-21 06:05:00 cmd_nr 1
2019-11-21 06:05:00 e_wdtimer_kueche_STATE 22
2019-08-17 19:44:23 mode enabled
2019-11-21 06:05:00 state cmd_1
Regex:
accu:
cond:
wdtimer_kueche:
0:
&STATE ^wdtimer_kueche$
attr:
cmdState:
wait:
waitdel:
condition:
0 ::InternalDoIf($hash,'wdtimer_kueche','STATE')
do:
0:
0 setstate eg_kue_wunschtemp Manuell inaktiv, setreading eg_kue_wunschtemp mantemp 0, set eg_kue_wunschtemp mantemp 0
1:
helper:
DEVFILTER ^global$|^wdtimer_kueche$
NOTIFYDEV global|wdtimer_kueche
event nextUpdate: 2019-11-21 21:45:00,nextValue: 22,currValue: 22,22
globalinit 1
last_timer 0
sleeptimer -1
timerdev wdtimer_kueche
timerevent nextUpdate: 2019-11-21 21:45:00,nextValue: 22,currValue: 22,22
triggerDev wdtimer_kueche
timerevents:
nextUpdate: 2019-11-21 21:45:00
nextValue: 22
currValue: 22
22
timereventsState:
nextUpdate: 2019-11-21 21:45:00
nextValue: 22
currValue: 22
state: 22
triggerEvents:
nextUpdate: 2019-11-21 21:45:00
nextValue: 22
currValue: 22
22
triggerEventsState:
nextUpdate: 2019-11-21 21:45:00
nextValue: 22
currValue: 22
state: 22
internals:
all wdtimer_kueche:STATE
perlblock:
readings:
trigger:
uiState:
uiTable:
Attributes:
DbLogExclude .*
do always
icon helper_doif
room Wohnung->Küche
falls Du den Rest auch noch brauchst melde Dich ruhig.
Gruß
Hans-Jürgen
Hallo Hans-Jürgen,
Dankeschön, werds am Wochenende mal nachspielen.
Allerdigs wären mir hier die RAW-Definitionen lieber. Die lassen sich leichter nachspielen...
Viele Grüße
Hallo FHEM-User22,
ZitatAllerdigs wären mir hier die RAW-Definitionen lieber. Die lassen sich leichter nachspielen...
na dann zweiter Versuch....
defmod pidregler_kueche PID20 Kuechesensor:temperature KUECHE_ZW_THERMOSTAT:dim
attr pidregler_kueche DbLogExclude state,delta,p_d
attr pidregler_kueche DbLogInclude measured,desired,actuation,p_p,p_i,actuationCalc
attr pidregler_kueche event-min-interval actuation:300,actuationCalc:300,delta:300,desired:300,measured:300,p_d:300,p_i:300,p_p:300
attr pidregler_kueche event-on-change-reading actuation:1,actuationCalc:0.5,delta:0.2,desired,measured:0.2,p_d:0.1,p_i:1.0,p_p:1.0
attr pidregler_kueche group Thermostate
attr pidregler_kueche pidActorErrorAction errorPos
attr pidregler_kueche pidActorErrorPos 5
attr pidregler_kueche pidActorInterval 180
attr pidregler_kueche pidActorLimitUpper 99
attr pidregler_kueche pidActorTreshold 1
attr pidregler_kueche pidActorValueDecPlaces 0
attr pidregler_kueche pidCalcInterval 180
attr pidregler_kueche pidDeltaTreshold 0
attr pidregler_kueche pidFactor_D 0
attr pidregler_kueche pidFactor_I 0.2
attr pidregler_kueche pidFactor_P 50
attr pidregler_kueche pidSensorTimeout 7200
attr pidregler_kueche room Wohnung->Küche
weiter
defmod eg_kue_wunschtemp DOIF ([Wunschtemp_temp_eg_kue])
attr eg_kue_wunschtemp DbLogExclude .*
attr eg_kue_wunschtemp alias EG-Küche-Wunschtemp-Temporär
attr eg_kue_wunschtemp do always
attr eg_kue_wunschtemp group Heizung und Temperatur
attr eg_kue_wunschtemp icon temp_control
attr eg_kue_wunschtemp readingList mantemp
attr eg_kue_wunschtemp room Wohnung->Küche
attr eg_kue_wunschtemp setList mantemp:12,17,18,19,20,21,21.5,22,22.5,23,23.5,24,26
attr eg_kue_wunschtemp sortby 3
attr eg_kue_wunschtemp webCmd mantemp
weiter mit
defmod wdtimer_kueche WeekdayTimer pidregler_kueche mo,di,mi,do,fr,$we|06:05|22 mo,di,mi,do,fr,$we|21:45|22 {if (ReadingsVal("TK_EG_Kueche","Window","Closed") eq "Closed") {fhem("set $NAME desired $EVENT")}}\
attr wdtimer_kueche DbLogExclude .*
attr wdtimer_kueche commandTemplate set $NAME desired $EVENT
attr wdtimer_kueche disable 0
attr wdtimer_kueche group Heizung und Temperatur
attr wdtimer_kueche icon sani_heating_automatic
attr wdtimer_kueche room Wohnung->Küche
attr wdtimer_kueche sortby 2
attr wdtimer_kueche switchInThePast 1
weiter mit
defmod wunschtemp_kueche_check1 DOIF ##soll beim auslösen vom weekdaytimer eventuelle manuelle\
## vorherige temp Anzeige(Änderung) zurücksetzen\
([wdtimer_kueche])\
(setstate eg_kue_wunschtemp Manuell inaktiv,\
setreading eg_kue_wunschtemp mantemp 0,\
set eg_kue_wunschtemp mantemp 0)\
attr wunschtemp_kueche_check1 DbLogExclude .*
attr wunschtemp_kueche_check1 do always
attr wunschtemp_kueche_check1 icon helper_doif
attr wunschtemp_kueche_check1 room Wohnung->Küche
weiter zusätzlich
defmod wunschtemp_kueche_check2 DOIF ## zeitweises ändern der wunschtemperatur nur bei fenster zu\
## mit setzen des Regler und Anzeige\
([eg_kue_wunschtemp:mantemp:d] > 0 and [?TK_EG_Kueche:state] eq "Closed")\
(set KUECHE_ZW_THERMOSTAT protectionOff,\
set KUECHE_ZW_THERMOSTAT tmManual,\
setstate eg_kue_wunschtemp Manuell aktiv)\
({my $neuer_wert = ReadingsVal("eg_kue_wunschtemp","mantemp","0");;;; fhem("set pidregler_kueche desired $neuer_wert")})\
({my $neuer_wert = ReadingsVal("eg_kue_wunschtemp","mantemp","0");;;; fhem("setreading eg_kue_wunschtemp mantemp $neuer_wert")})\
({my $neuer_wert = ReadingsVal("eg_kue_wunschtemp","mantemp","0");;;; fhem("set eg_kue_wunschtemp mantemp $neuer_wert")})\
attr wunschtemp_kueche_check2 DbLogExclude .*
attr wunschtemp_kueche_check2 do always
attr wunschtemp_kueche_check2 icon helper_doif
attr wunschtemp_kueche_check2 room Wohnung->Küche
für mich wichtig die Fenstergeschichte
defmod fenster_kueche_check3 DOIF ## öffnen des Fenster setzt pidregler auf 12 Grad Anzeige auf 12\
## Schutz des Thermostat gegen manuelles verstellen\
## schliessen der Tür alles retour\
([TK_EG_Kueche:"Offen"])\
(setstate eg_kue_wunschtemp Fenster ist auf,\
set pidregler_kueche desired 12,\
setreading eg_kue_wunschtemp mantemp 12,\
set eg_kue_wunschtemp mantemp 12,\
set KUECHE_ZW_THERMOSTAT protectionOn)\
DOELSEIF ([TK_EG_Kueche:"Geschlossen"])\
(setstate eg_kue_wunschtemp Manuell inaktiv,\
set KUECHE_ZW_THERMOSTAT protectionOff,\
set KUECHE_ZW_THERMOSTAT tmManual,\
setreading eg_kue_wunschtemp mantemp 0,\
set eg_kue_wunschtemp mantemp 0)\
(set pidregler_kueche desired [wdtimer_kueche:currValue])\
attr fenster_kueche_check3 DbLogExclude .*
attr fenster_kueche_check3 do always
attr fenster_kueche_check3 icon helper_doif
attr fenster_kueche_check3 room Wohnung->Küche
zu guter Letzt
defmod fenster_kueche_check4 DOIF ## verhindert verstellen der Wunschtemperatur bei\
## Fenster offen mit Anzeige noch auf\
([eg_kue_wunschtemp:mantemp:d] > 12 and [?TK_EG_Kueche:state] ne "Closed")\
(setstate eg_kue_wunschtemp Fenster noch auf,\
set pidregler_kueche desired 12,\
set eg_kue_wunschtemp mantemp 12)\
attr fenster_kueche_check4 DbLogExclude .*
attr fenster_kueche_check4 do always
attr fenster_kueche_check4 icon helper_doif
attr fenster_kueche_check4 room Wohnung->Küche
geht garantiert alles noch besser, wie Beta-User schon mal geschrieben hatte
kann man mit richtigen ? Parameter in WeekdayTimer die Fenster offen Sache vereinfachen.
Gruß
Hans-Jürgen
Zitat von: FHEM-User22 am 20 November 2019, 16:10:39
Er reagiert weder auf das Setzen der Desired-Temp noch auf: setpointTemp 21.0 C heating.
Die Temperatur im Raum bleibt 18 Grad.
wie sehen denn Deine Logs dazu aus ?
Mein Beispiel:
2019-11-28_17:38:59 THERMOSTAT_BAD2 reportedState: off
2019-11-28_17:39:31 THERMOSTAT_BAD2 desired-temp 16.0
2019-11-28_17:39:36 THERMOSTAT_BAD2 setpointTemp: 16.0 C heating
2019-11-28_17:40:59 THERMOSTAT_BAD2 dim 15
2019-11-28_17:40:59 THERMOSTAT_BAD2 reportedState: dim 15
2019-11-28_17:50:59 THERMOSTAT_BAD2 temperature: 15.41 C
d.h. man sieht, dass das Ventil ZU war (kannst den Ventilzustand via 'get THERMOSTAT swmStatus' auch abfragen)
LEIDER 'erzaehlt' der Thermostat nicht, in welchem Mode er sich gerade befindet (Meiner sagt immer 'heating')
Aber er kann auch im "Manual" Mode sein - oder eher wahrscheinlich bei Dir in 'energySaveHeating'.
ZitatHat das was mit dem ThermostatMode zu tun? Wenn ja, wie kann ich umstellen?
ICH wuerde jetzt auf die schnelle tippen, dass Du ihn in 'energySaveHeating' gebracht hast,
und da gilt ja ein 'anderer' setpoint ... ('heating' ist setpoint '1' - 'energySaveHeating' ist setpoint '11')
wieder in 'heating' bringen, damit er 'setpoint 1' (statt 11) befolgt:
set THERMOSTAT tmHeating
Hallo sz_wolfi
ZitatLEIDER 'erzaehlt' der Thermostat nicht, in welchem Mode er sich gerade befindet (Meiner sagt immer 'heating')
Hmm... bei mir steht im Reading vom Thermostat u.a. thermostatMode manual
Gruß
Hans-Jürgen
Moin,
meiner auch nicht so richtig,
mein State-Format:
<div style='color:blue'>
state,<div style='color:green'>
<b><b>IST: temperature </b></b></div>
<div style='color:black'>setpointTemp</b></div>
reportedState
das List:
Internals:
DEF f712869a 11
FUUID 5dc989e1-f33f-6033-dc03-648c5c9df484b790
IODev ZWDongle_0
LASTInputDev ZWDongle_0
MSGCNT 141
NAME ZWave_THERMOSTAT_MOE
NR 214
STATE <div style='color:blue'>
desired-temp 18.0,<div style='color:green'>
<b><b>IST: 18.22 C </b></b></div>
<div style='color:black'>23.5 C heating</b></div>
dim 48
STILLDONETIME 0
TYPE ZWave
ZWDongle_0_MSGCNT 141
ZWDongle_0_RAWMSG 0004000b0631050142071e
ZWDongle_0_TIME 2019-11-29 07:15:48
ZWaveSubDevice no
cmdsPending 0
homeId f712869a
isWakeUp
lastMsgSent 1574974800.01795
nodeIdHex 0b
Helper:
DBLOG:
state:
LogDB:
TIME 1574974800.02106
VALUE desired-temp 18.0
temperature:
LogDB:
TIME 1575008148.30469
VALUE 18.22
READINGS:
2019-11-11 17:18:42 SECURITY DISABLED (Networkkey not found)
2019-11-11 17:18:55 SEND_DATA failed:00
2019-11-11 17:35:10 alarm System: Event cleared: unknown event 0
2019-11-11 17:29:57 assocGroup_1 Max 1 Nodes ZWDongle_0
2019-11-11 17:29:57 assocGroups 1
2019-11-11 17:45:22 configBacklight BacklightEnabled
2019-11-15 08:36:13 configBatteryReport SendOnceADay
2019-11-11 17:45:22 configLCDInvert Normal
2019-11-11 17:45:23 configLCDTimeout 0
2019-11-11 17:45:23 configMeasuredTemperatureOffset 0
2019-11-11 17:45:23 configOpenWindowDetection MediumSensibility
2019-11-11 17:45:23 configTemperatureReportThreshold 5
2019-11-11 17:45:23 configValveOpeningPercentageReport 0
2019-11-11 17:18:44 model EUROtronic EUR_SPIRITZ Wall Radiator Thermostat
2019-11-11 17:18:44 modelConfig eurotronic/eur_spiritz.xml
2019-11-11 17:18:44 modelId 0148-0003-0001
2019-11-15 15:00:51 neighborList ZWave_ST_01 ZWave_0SWITCH_Haus ZWave_0SWITCH_Buero
2019-11-15 15:44:31 neighborUpdate done
2019-11-21 07:21:34 protection off
2019-11-21 07:18:48 reportedState dim 48
2019-11-25 09:56:22 setpointTemp 23.5 C heating
2019-11-28 22:00:00 state desired-temp 18.0
2019-11-29 07:15:48 temperature 18.22 C
2019-11-21 07:08:46 thermostatMode manual
2019-11-28 22:00:01 timeToAck 1.386
2019-11-28 22:00:01 transmit OK
2019-11-15 08:36:46 zwavePlusInfo version:01 role:SleepingListeningSlave node:Z-Wave+Node installerIcon:1200 userIcon:1200
Attributes:
DbLogInclude (temperature|state|setpointTemp)
IODev ZWDongle_0
classes ZWAVEPLUS_INFO ASSOCIATION ASSOCIATION_GRP_INFO VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY PROTECTION SENSOR_MULTILEVEL SWITCH_MULTILEVEL THERMOSTAT_MODE THERMOSTAT_SETPOINT BATTERY CONFIGURATION ALARM POWERLEVEL SECURITY SECURITY_S2 TRANSPORT_SERVICE SUPERVISION FIRMWARE_UPDATE_MD
comment https://wiki.fhem.de/wiki/Z-Wave-Eurotronic_Spirit_Thermostat
https://forum.fhem.de/index.php?topic=97292.0
https://forum.fhem.de/index.php/topic,77598.135.html
https://wiki.fhem.de/wiki/WeekdayTimer
group Heizung und Temperatur
icon hc_wht_regler
neighborListPos 609.36,78.58
room 00_Moe,Heizung,ZWave
sortby 2
stateFormat <div style='color:blue'>
state,<div style='color:green'>
<b><b>IST: temperature </b></b></div>
<div style='color:black'>setpointTemp</b></div>
reportedState
userReadings batteryLevel:batteryPercent.* {ReadingsVal("ZWave_THERMOSTAT_MOE","batteryPercent",0)}
vclasses ALARM:8 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 BATTERY:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:3 MANUFACTURER_SPECIFIC:1 POWERLEVEL:1 PROTECTION:1 SECURITY:1 SECURITY_S2:1 SENSOR_MULTILEVEL:5 SWITCH_MULTILEVEL:1 THERMOSTAT_MODE:3 THERMOSTAT_SETPOINT:3 TRANSPORT_SERVICE:2 VERSION:2 ZWAVEPLUS_INFO:2
Ich weiss nicht, was die "23.5 C heating" so richtig anzeigen, bewirken.
Dankeschön
Hallo FHEM-User22,
Danke für Dein List!
ZitatIch weiss nicht, was die "23.5 C heating" so richtig anzeigen, bewirken.
Aus dem Bauch heraus, hab die Anleitung nicht im Kopf.
Der manual Mode den Du gerade hast, setzt alles andere außer Kraft bzw. überstimmt ??
setpointTemp 23.5 C heating müsste dann die Standard Einstellung für den Automatik Heizmodus
sein ? Alls Fallback ?
Muss noch mal nachlesen um nicht voll daneben zu sein....
mit thermostatSetpoinSet stellt man die Temperatur für die einzelnen Betriebsarten
wie Heizen ,Energiesparen u.a. ein, daher Dein 23.5 C heating ?
Gruß
Hans-Jürgen
Den Modus bekommt man doch mit
get <DEVICE> thermostatMode
raus.
Die 2 Befehle sind auch ganz nützlich für Infoabfrage:
get <DEVICE> swmStatus
get <DEVICE> smStatus
Wenns der Manual Mode ist, dann kann man die Ventilstellung direkt kontrollieren (dim 0-100 (%) ).
Umstellen kann man den mit
set <DEVICE> tmHeating
Analog dazu (Manual Mode)
set <DEVICE> tmOff
(und noch 2 weitere, sieht man ja im Dropdown )
HTH Ronny
Zitat von: Deckoffizier am 28 November 2019, 23:48:20
Hmm... bei mir steht im Reading vom Thermostat u.a. thermostatMode manual
nun ja, wenn man es glaubt ...
Es ist (zumindest bei meinen 4 Spirits) so, dass "set DEVICE tmEnergySaveHeating" den Thermostat in diesen Mode bringt.
... und dann automatisch die Temperatur von 'setpoint 11' geregelt wird.
Bloed ist lediglich, dass das Mode-Setting - wie z.B. 'set tmFullPower' etc. - NICHT das Reading 'thermostatMode' anpasst/aendert !
man muss also ein 'get DEVICE thermostatMode' machen, um es an die Realitaet anzupassen.
und zu viel Funkverkehr gibt immer haessliche Meldungen ueber RESENDs/etc:
2019.11.03 09:06:47 3: ZWave set THERMOSTAT_WOHNZIMMER desired-temp 18.5
2019.11.03 09:06:52 3: ZWave get THERMOSTAT_WOHNZIMMER setpoint 1
2019.11.03 09:06:52 2: ZWave: No ACK from THERMOSTAT_WOHNZIMMER after 5s for sentset:1316064301012200b925d2
2019.11.03 09:06:52 2: ERROR: cannot SEND_DATA to THERMOSTAT_WOHNZIMMER: transmit queue overflow
2019.11.03 09:06:57 2: ZWave: No ACK from THERMOSTAT_WOHNZIMMER after 5s for get:13160343020125d3
2019.11.03 09:06:57 2: ERROR: cannot SEND_DATA to THERMOSTAT_WOHNZIMMER: transmit queue overflow
2019.11.03 09:07:02 2: ZWave: No ACK from THERMOSTAT_WOHNZIMMER after 5s for get:13160343020125d3
2019.11.03 09:07:02 2: ERROR: cannot SEND_DATA to THERMOSTAT_WOHNZIMMER: transmit queue overflow
... man muss mit Funkverkehr wirklich 'sparsam' umgehen - sonst ist das Log voll von solchem Zeugs.
(( ja ich habe den Thread mit diesen Meldungen gefunden/gelesen - und bei mir passieren diese Meldungen,
aber keinerlei sonstigen Probleme ... ausser vielleicht, dass der Thermostat dann nicht geschaltet wurde)
Ein anderes Problem ist, dass ja die Soll-Temp in 'heating' und 'energySaveHeating' - verschiedene setpoints sind (1 und 11)
... auch nicht so lustig/einfach ...
Ich kann mit diesen mini-Problemen leben indem ich sie nur in 'heating' betreibe, und
wirklich den Funkverkehr aufs notwendigste reduziere - nicht perfekt - aber OK ;-)