MAX! Thermostat: Wochenprogramm macht Probleme

Hallo,

ich habe ein Setup aus openhab2, homegear (auf einem RPi mit zwei CC1101-Modulen (MAX! und Homematic)). Im Moment experimentiere ich damit und versuche dabei ein MAX! Heizkörperthermostat Basic zu steuern.

Das soll über Rules morgens und abends für einige Stunden auf 20°C und zu den anderen Zeiten auf 5°C stehen. Eine weitere Regel berücksichtigt einen Fensterkontakt und schaltet das Thermostat auf 5°C wenn das Fenster auf ist und auf die zuvor gültige Temperatur wenn das Fenster wieder geschlossen wird.
Das funktioniert auch alles. (Ich weiss, ist kein openhab-Forum hier, das auch nur als Background, hier funktioniert ja alles.)

Jetzt habe ich aber das Phänomen, dass zwischendurch das Thermostat plötzlich auf 17°C steht.
Und wenn ich mir in der Homegear-Console die Konfiguration des Thermostats ansehe, dann gibt es darin ein Wochenprogramm (ich dachte bei MAX! hätten nur die ±Geräte ein einiges Wochenprogramm, however):

root@raspberrypi:/var/log/homegear# homegear -r
Connected to Homegear (version 0.7.11-1472).
> families select 4
Device family "MAX!" selected.
For information about the family's commands type: "help"
(Family)> ls
      ID │ Name                      │ Address │ Serial Number │ Type │ Type String               │ Firmware │ Unreach
─────────┼───────────────────────────┼─────────┼───────────────┼──────┼───────────────────────────┼──────────┼────────
         │                           │         │               │      │                           │          │        
       2 │                           │  187EF1 │    OEQ1028408 │ 0400 │ BC-SC-Rd-WM-2             │      1.0 │      No
       3 │                           │  1A420E │    OEQ0946282 │ 01A1 │ BC-RT-TRX-CyN             │      1.1 │      No
─────────┴───────────────────────────┴─────────┴───────────────┴──────┴───────────────────────────┴──────────┴────────
(Family)> peers select 3
Peer with id 3 and device type 0x1a1 selected.
For information about the peer's commands type: "help"
(Peer)> 

Und dann:

(Peer)> config print
MASTER
{
	Channel: 0
	{
		[TEMPERATURE_WEDNESDAY_9]: 22 
		[TEMPERATURE_WEDNESDAY_6]: 22 
		[TEMPERATURE_WEDNESDAY_5]: 22 
		[TEMPERATURE_WEDNESDAY_4]: 2a 
		[TEMPERATURE_WEDNESDAY_2]: 2a 
		[TEMPERATURE_WEDNESDAY_12]: 22 
		[TEMPERATURE_WEDNESDAY_1]: 22 
		[TEMPERATURE_TUESDAY_9]: 22 
		[TEMPERATURE_TUESDAY_8]: 22 
		[TEMPERATURE_TUESDAY_6]: 22 
		[TEMPERATURE_TUESDAY_4]: 2a 
		[TEMPERATURE_TUESDAY_12]: 22 
		[TEMPERATURE_TUESDAY_10]: 22 
		[TEMPERATURE_TUESDAY_1]: 22 
		[TEMPERATURE_THURSDAY_7]: 22 
		[TEMPERATURE_THURSDAY_6]: 22 
		[TEMPERATURE_THURSDAY_4]: 2a 
		[TEMPERATURE_THURSDAY_3]: 22 
		[TEMPERATURE_THURSDAY_2]: 2a 
		[TEMPERATURE_THURSDAY_13]: 22 
		[TEMPERATURE_TUESDAY_3]: 22 
		[TEMPERATURE_THURSDAY_10]: 22 
		[TEMPERATURE_THURSDAY_1]: 22 
		[TEMPERATURE_SUNDAY_9]: 22 
		[TEMPERATURE_THURSDAY_11]: 22 
		[TEMPERATURE_SUNDAY_8]: 22 
		[TEMPERATURE_WEDNESDAY_3]: 22 
		[TEMPERATURE_SUNDAY_5]: 22 
		[TEMPERATURE_SUNDAY_4]: 22 
		[TEMPERATURE_SUNDAY_13]: 22 
		[TEMPERATURE_SUNDAY_11]: 22 
		[TEMPERATURE_SUNDAY_10]: 22 
		[TEMPERATURE_SUNDAY_1]: 22 
		[TEMPERATURE_SATURDAY_9]: 22 
		[TEMPERATURE_THURSDAY_12]: 22 
		[TEMPERATURE_SATURDAY_6]: 22 
		[TEMPERATURE_TUESDAY_2]: 2a 
		[TEMPERATURE_SATURDAY_5]: 22 
		[TEMPERATURE_SATURDAY_3]: 22 
		[TEMPERATURE_SATURDAY_2]: 2a 
		[TEMPERATURE_SATURDAY_13]: 22 
		[TEMPERATURE_SATURDAY_10]: 22 
		[TEMPERATURE_WEDNESDAY_8]: 22 
		[TEMPERATURE_SATURDAY_1]: 22 
		[TEMPERATURE_SUNDAY_12]: 22 
		[TEMPERATURE_MONDAY_9]: 22 
		[TEMPERATURE_MONDAY_8]: 22 
		[TEMPERATURE_MONDAY_6]: 22 
		[TEMPERATURE_MONDAY_5]: 22 
		[TEMPERATURE_MONDAY_4]: 2a 
		[TEMPERATURE_MONDAY_12]: 22 
		[TEMPERATURE_WEDNESDAY_7]: 22 
		[TEMPERATURE_TUESDAY_5]: 22 
		[TEMPERATURE_SUNDAY_2]: 2a 
		[TEMPERATURE_MONDAY_11]: 22 
		[TEMPERATURE_MONDAY_10]: 22 
		[TEMPERATURE_MONDAY_1]: 22 
		[TEMPERATURE_FRIDAY_8]: 22 
		[TEMPERATURE_FRIDAY_7]: 22 
		[TEMPERATURE_FRIDAY_4]: 2a 
		[TEMPERATURE_SUNDAY_6]: 22 
		[TEMPERATURE_SATURDAY_8]: 22 
		[TEMPERATURE_FRIDAY_2]: 2a 
		[TEMPERATURE_TUESDAY_13]: 22 
		[ENDTIME_FRIDAY_1]: 48 
		[ENDTIME_FRIDAY_12]: 01 20 
		[ENDTIME_SUNDAY_1]: 48 
		[ENDTIME_SATURDAY_9]: 01 20 
		[TEMPERATURE_SATURDAY_11]: 22 
		[ENDTIME_SATURDAY_6]: 01 20 
		[ENDTIME_MONDAY_2]: 6c 
		[ENDTIME_SATURDAY_12]: 01 20 
		[ENDTIME_MONDAY_12]: 01 20 
		[ENDTIME_SATURDAY_8]: 01 20 
		[TEMPERATURE_FRIDAY_11]: 22 
		[ENDTIME_FRIDAY_7]: 01 20 
		[ENDTIME_SATURDAY_5]: 01 20 
		[TEMPERATURE_FRIDAY_13]: 22 
		[ENDTIME_MONDAY_1]: 48 
		[ENDTIME_WEDNESDAY_13]: 01 20 
		[TEMPERATURE_THURSDAY_9]: 22 
		[TEMPERATURE_MONDAY_3]: 22 
		[ENDTIME_SATURDAY_1]: 48 
		[ENDTIME_SATURDAY_4]: 01 20 
		[ENDTIME_MONDAY_9]: 01 20 
		[ENDTIME_SATURDAY_7]: 01 20 
		[ENDTIME_SUNDAY_6]: 01 20 
		[TEMPERATURE_WEDNESDAY_13]: 22 
		[ENDTIME_MONDAY_8]: 01 20 
		[ENDTIME_MONDAY_7]: 01 20 
		[ENDTIME_WEDNESDAY_4]: 01 14 
		[ENDTIME_FRIDAY_5]: 01 20 
		[ENDTIME_WEDNESDAY_5]: 01 20 
		[ENDTIME_SUNDAY_3]: 01 20 
		[ENDTIME_FRIDAY_2]: 6c 
		[ENDTIME_SUNDAY_10]: 01 20 
		[ENDTIME_SATURDAY_10]: 01 20 
		[ENDTIME_SATURDAY_11]: 01 20 
		[ENDTIME_FRIDAY_11]: 01 20 
		[ENDTIME_TUESDAY_3]: cc 
		[ENDTIME_FRIDAY_3]: cc 
		[ENDTIME_THURSDAY_8]: 01 20 
		[ENDTIME_TUESDAY_7]: 01 20 
		[ENDTIME_MONDAY_10]: 01 20 
		[TEMPERATURE_FRIDAY_3]: 22 
		[ENDTIME_THURSDAY_13]: 01 20 
		[TEMPERATURE_SUNDAY_3]: 22 
		[ENDTIME_WEDNESDAY_1]: 48 
		[ENDTIME_FRIDAY_10]: 01 20 
		[TEMPERATURE_FRIDAY_9]: 22 
		[ENDTIME_TUESDAY_1]: 48 
		[ENDTIME_THURSDAY_3]: cc 
		[TEMPERATURE_FRIDAY_6]: 22 
		[ENDTIME_FRIDAY_8]: 01 20 
		[TEMPERATURE_THURSDAY_5]: 22 
		[ENDTIME_SUNDAY_5]: 01 20 
		[ENDTIME_SUNDAY_13]: 01 20 
		[TEMPERATURE_WEDNESDAY_11]: 22 
		[TEMPERATURE_FRIDAY_5]: 22 
		[ENDTIME_THURSDAY_10]: 01 20 
		[ENDTIME_SUNDAY_2]: 01 08 
		[ENDTIME_FRIDAY_6]: 01 20 
		[ENDTIME_THURSDAY_12]: 01 20 
		[TEMPERATURE_SATURDAY_12]: 22 
		[ENDTIME_SUNDAY_11]: 01 20 
		[ENDTIME_MONDAY_13]: 01 20 
		[TEMPERATURE_TUESDAY_11]: 22 
		[ENDTIME_SATURDAY_3]: 01 20 
		[TEMPERATURE_TUESDAY_7]: 22 
		[ENDTIME_FRIDAY_9]: 01 20 
		[ENDTIME_MONDAY_4]: 01 14 
		[ENDTIME_THURSDAY_1]: 48 
		[TEMPERATURE_SUNDAY_7]: 22 
		[TEMPERATURE_MONDAY_7]: 22 
		[ENDTIME_MONDAY_11]: 01 20 
		[ENDTIME_SATURDAY_2]: 01 08 
		[ENDTIME_MONDAY_5]: 01 20 
		[ENDTIME_SUNDAY_4]: 01 20 
		[TEMPERATURE_MONDAY_2]: 2a 
		[ENDTIME_SUNDAY_7]: 01 20 
		[ENDTIME_TUESDAY_2]: 6c 
		[ENDTIME_FRIDAY_13]: 01 20 
		[ENDTIME_SUNDAY_8]: 01 20 
		[ENDTIME_SUNDAY_9]: 01 20 
		[ENDTIME_THURSDAY_11]: 01 20 
		[ENDTIME_THURSDAY_6]: 01 20 
		[ENDTIME_THURSDAY_2]: 6c 
		[ENDTIME_MONDAY_6]: 01 20 
		[ENDTIME_THURSDAY_4]: 01 14 
		[ENDTIME_THURSDAY_5]: 01 20 
		[ENDTIME_THURSDAY_7]: 01 20 
		[ENDTIME_THURSDAY_9]: 01 20 
		[ENDTIME_TUESDAY_8]: 01 20 
		[ENDTIME_FRIDAY_4]: 01 14 
		[ENDTIME_WEDNESDAY_10]: 01 20 
		[ENDTIME_WEDNESDAY_2]: 6c 
		[TEMPERATURE_WEDNESDAY_10]: 22 
		[ENDTIME_WEDNESDAY_6]: 01 20 
		[ENDTIME_TUESDAY_10]: 01 20 
		[ENDTIME_TUESDAY_11]: 01 20 
		[TEMPERATURE_MONDAY_13]: 22 
		[ENDTIME_SATURDAY_13]: 01 20 
		[ENDTIME_WEDNESDAY_3]: cc 
		[ENDTIME_TUESDAY_12]: 01 20 
		[ENDTIME_TUESDAY_13]: 01 20 
		[ENDTIME_TUESDAY_6]: 01 20 
		[ENDTIME_TUESDAY_4]: 01 14 
		[ENDTIME_TUESDAY_5]: 01 20 
		[ENDTIME_TUESDAY_9]: 01 20 
		[ENDTIME_WEDNESDAY_8]: 01 20 
		[TEMPERATURE_SATURDAY_4]: 22 
		[ENDTIME_WEDNESDAY_11]: 01 20 
		[ENDTIME_MONDAY_3]: cc 
		[ENDTIME_WEDNESDAY_12]: 01 20 
		[TEMPERATURE_THURSDAY_8]: 22 
		[TEMPERATURE_FRIDAY_12]: 22 
		[TEMPERATURE_SATURDAY_7]: 22 
		[ENDTIME_WEDNESDAY_7]: 01 20 
		[ENDTIME_WEDNESDAY_9]: 01 20 
		[TEMPERATURE_FRIDAY_1]: 22 
		[ENDTIME_SUNDAY_12]: 01 20 
		[TEMPERATURE_FRIDAY_10]: 22 
	}
}

VALUES
{
	Channel: 1
	{
		[TEMPERATURE_OFFSET]: 07 
		[PARTY_TEMPERATURE]: 28 
		[SET_TEMPERATURE]: 0a 
		[PARTY_STOP_YEAR]: 0c 
		[PARTY_STOP_MONTH]: 01 
		[PARTY_STOP_TIME]: 00 
		[PARTY_STOP_DAY]: 01 
		[MAX_TEMPERATURE]: 3d 
		[MANU_MODE]: 28 
		[LOCKED]: 01 
		[BOOST_POSITION]: 10 
		[VALVE_STATE]: 00 
		[ECO_TEMPERATURE]: 21 
		[BOOST_MODE]: 00 
		[AUTO_MODE]: 00 
		[ACTUAL_TEMPERATURE]: 00 da 
		[WINDOW_OPEN_TEMPERATURE]: 18 
		[BOOST_TIME_PERIOD]: 01 
		[DECALCIFICATION_WEEKDAY]: 00 
		[CONTROL_MODE]: 00 
		[COMFORT_TEMPERATURE]: 2b 
		[DECALCIFICATION_TIME]: 16 
	}
	Channel: 0
	{
		[UNREACH]: 00 
		[STICKY_UNREACH]: 00 
		[RSSI_DEVICE]: 48 
		[BOOT]: 00 
		[LAST_PACKET_RECEIVED]: 5a 36 80 38 
		[LOWBAT]: 00 
		[RSSI_PEER]: 00 
		[CONFIG_PENDING]: 00 
	}
}

LINK
{
}

(Peer)>
root@raspberrypi:/var/log/homegear# 

Offenbar funkt mir dieses Wochenprogramm dazwischen (obwohl ich hier in den Rohdaten der Konfiguration nichts von 17°C erkennen kann werden mir in openhab die Temperaturen des Wochenprogramms als 17°C angezeigt).

Hat jemand dieses Verhalten auch schon erlebt? Gibt es eine Möglichkeit dieses Wochenprogramm im Thermostat vollständig zu deaktivieren, sodass es ausschliesslich der Steuerung von openhab über homegear folgt?

Danke und Grüße,
Wolfgang

Ja, stell sie auf MANU_MODE… dann machen sie nur das was du ihnen explizit sagst.

Rein aus Interesse, welchen Vorteil erhoffst Du dir davon, die Steuerung aus den Thermostaten in die Regeln zu verschieben?

(Ich bin froh, für die Detailsteuerung der Heizung keine Regeln zu haben.)

Ich habe damit alles an einer Stelle. Sieht jetzt bei mir so aus, dass ich homegear quasi als Gateway zu den Items habe (Homematic, MAX! und Philips Hue) und über MQTT anspreche.
Die Steuerlogik hatte ich zuerst mit node-red implementiert. Das wurde mir aber zu aufwendig, weil ich darin Wiederverwendung mehr oder weniger nur über Copy-und-Paste hinbekommen habe. Deshalb habe ich mit Typescript und NodeJS selbst was gebaut (https://gitlab.com/wolutator/dispatcher_ng) indem ich einzelnen Items instanzieren und miteinander verbinden kann. Ist nicht so fancy wie node-red, ich finde es trotzdem einfacher und schneller (obwohl ich Thermostate und Fensterkontakte und die Cron-Objekte, die ich für die Zeitsteuerungen der Thermostate brauche, noch nicht drin habe).
Jetzt habe ich homegear als Schnittstellenadapter zu den Geräten, meinen NodeJS-Code als Logik und eine Mischung aus Homekit, openhab und diversen Homematic- und MAX!-Schaltern als UI, alles über MQTT miteinander verbunden.

2 Likes