[gelöst]MAX mag keine Montage ?

Begonnen von gadget, 19 November 2022, 13:56:15

Vorheriges Thema - Nächstes Thema

gadget

Hallo,

Draußen liegt Schnee, jetzt muss langsam doch mal die Heizung eingeschaltet werden, allerdings mit einem etwas sparsameren Zeitprogramm für die MAX-Thermostate.

Jetzt habe ich aber ein Problem mit dem weekprofile, das mich langsam an meinem Verstand zweifeln lässt:

set MAXVentil weekProfile Mon 19,7:30,22,9:30,21,21:00,22,23:30,19

wird schlicht ignoriert, die vorherige Einstellung für den Montag bleibt bestehen.

Im Log mit verbose 5 auf MAX Device und CUL:


2022.11.19 13:29:40 4: CULMAX0, send -> cmd:SetTemperature, msgcnt:5a, flags:00, Cmd2id:40, src:MAX_654321 , dst:MAX_12e010 , gid:00 , payload:00 , cul:none
2022.11.19 13:29:40 5: CULMAX0, send packet: 0b5a004065432112e0100000
2022.11.19 13:29:40 5: CULMAX0, Send Queue 1 packet in queue
2022.11.19 13:29:40 5: CULMAX0, Send Queue myCUL -> needPreamble: 1, necessaryCredit: 110, credit10ms: 900, myCUL CMD_LAST_H: 6
2022.11.19 13:29:40 4: CULMAX0, Send Queue packet send : Zs0b5a004065432112e0100000 to MAX_12e010 with myCUL
2022.11.19 13:29:42 5: CULMAX0, IODev myCUL, len 14, msgcnt 5A, msgflag 02, msgType Ack, src 12e010, dst 654321, group 0, payload 0118112A, rssi -55
2022.11.19 13:29:42 5: CULMAX0, ACK from MAX_12e010 for cmd SetTemperature , packet will be removed soon
2022.11.19 13:29:42 5: CULMAX0: dispatch MAX,1,Ack,12e010,0118112A
2022.11.19 13:29:42 5: MAX_Parse, MAX,1,Ack,12e010,0118112A
2022.11.19 13:29:42 5: MAX_Parse, MAX2,1,ThermostatState,12e010,18112A
2022.11.19 13:29:42 5: MAX_12e010, bat 0, rferror 0, panel 0, langateway 1, dstsetting 1, mode 0, valveposition 17, desiredTemperature 21
2022.11.19 13:29:43 5: CULMAX0, Send Queue 1 packet in queue
2022.11.19 13:29:43 4: CULMAX0, Send Queue ACK from MAX_12e010 for SetTemperature, removing from queue
2022.11.19 13:29:43 5: CULMAX0: dispatch MAX,1,AckSetTemperature,12e010,0
2022.11.19 13:29:43 5: MAX_Parse, MAX,1,AckSetTemperature,12e010,0
2022.11.19 13:29:43 5: MAX_12e010, msgtype AckSetTemperature : 0
2022.11.19 13:29:43 5: CULMAX0, Send Queue is now empty




wenn ich das laienhaft interpretiere, wird da also eine Temperatureinstellung gesendet, aber kein Weekprofile für den Montag.

Das verrückte ist: bei allen anderen Wochentagen klappt es wie beschrieben.

Wenn ich das z.B.  für Dienstag sende, steht im Log mit verbose 5 auf MAX Device und CUL:


2022.11.19 13:26:40 5: MAX_12e010, new Temperature part for 3: 4c5a587254fc591a4d2045204520452045204520452045204520
2022.11.19 13:26:40 4: CULMAX0, send -> cmd:ConfigWeekProfile, msgcnt:59, flags:00, Cmd2id:10, src:MAX_654321 , dst:MAX_12e010 , gid:00 , payload:034c5a587254fc591a4d2045204520 , cul:none
2022.11.19 13:26:40 5: CULMAX0, send packet: 1959001065432112e01000034c5a587254fc591a4d2045204520
2022.11.19 13:26:40 5: CULMAX0, Send Queue 1 packet in queue
2022.11.19 13:26:40 5: CULMAX0, Send Queue myCUL -> needPreamble: 1, necessaryCredit: 121, credit10ms: 900, myCUL CMD_LAST_H: 5
2022.11.19 13:26:40 4: CULMAX0, Send Queue packet send : Zs1959001065432112e01000034c5a587254fc591a4d2045204520 to MAX_12e010 with myCUL
2022.11.19 13:26:42 5: CULMAX0, IODev myCUL, len 14, msgcnt 59, msgflag 02, msgType Ack, src 12e010, dst 654321, group 0, payload 0118112A, rssi -55
2022.11.19 13:26:42 5: CULMAX0, ACK from MAX_12e010 for cmd ConfigWeekProfile , packet will be removed soon
2022.11.19 13:26:42 5: CULMAX0: dispatch MAX,1,Ack,12e010,0118112A
2022.11.19 13:26:42 5: MAX_Parse, MAX,1,Ack,12e010,0118112A
2022.11.19 13:26:42 5: MAX_Parse, MAX2,1,ThermostatState,12e010,18112A
2022.11.19 13:26:42 5: MAX_12e010, bat 0, rferror 0, panel 0, langateway 1, dstsetting 1, mode 0, valveposition 17, desiredTemperature 21
2022.11.19 13:26:43 5: CULMAX0, Send Queue 1 packet in queue
2022.11.19 13:26:43 4: CULMAX0, Send Queue ACK from MAX_12e010 for ConfigWeekProfile, removing from queue
2022.11.19 13:26:43 5: CULMAX0: dispatch MAX,1,AckConfigWeekProfile,12e010,3,0,4c5a587254fc591a4d2045204520
2022.11.19 13:26:43 5: MAX_Parse, MAX,1,AckConfigWeekProfile,12e010,3,0,4c5a587254fc591a4d2045204520
2022.11.19 13:26:43 5: MAX_12e010, new weekProfile: 4c5a587254fc591f4d20452045204520452045204520452045204c5a587254fc591f4d20452045204520452045204520452045204448546c44cc55144520452045204520452045204520452045204c5a587254fc591a4d20452045204520452045204520452045204c48586c4ccc54fc591f4d2045204520452045204520452045204c48586c4ccc54fc591f4d2045204520452045204520452045204c54587254fc591f4d2045204520452045204520452045204520
2022.11.19 13:26:44 5: CULMAX0, Send Queue is now empty


Das Verhalten habe ich sowohl bei MAX Heizkörper-Thermostaten als auch bei Max Wandthermostaten. Immer für Montag.

Ich hab das Device schon mal neu angelegt, dabei entsteht dann das Reading "error" mit diesem Inhalt: invalid or missing value for READING .weekProfile

im Log steht:


2022.11.19 13:43:35 3: MAX_12e010, invalid or missing value  for READING groupid , forcing to 0
2022.11.19 13:43:35 3: MAX_12e010, invalid or missing value  for READING .weekProfile , forcing to 444855084520452045204520452045204
520452045204520452044485508452045204520452045204520452045204520452045204448546c44cc55144520452045204520452045204520452045204448546c4
4cc55144520452045204520452045204520452045204448546c44cc55144520452045204520452045204520452045204448546c44cc5514452045204520452045204
5204520452045204448546c44cc5514452045204520452045204520452045204520


Was immer in .weekprofile steht müsste doch aber nach Löschen und Neuanlagen des Device "valid" sein ?!


Irgendwelche Ideen ? Mit einem angeflanschten weekprofile-Device bekomme ich übrigend auch eine Änderungen ans Ventil bzw. Wandthermostat.


Edit: Ich hatte durch einen Crash vor einigen Monaten die fhem.save verloren. Das saveConfig Feature habe ich jetzt erst entdeckt, als ich die Dinger eingerichtet habe gab es das noch nicht. Ich habe nun über die Kommandozeile


{ MAX_Save('all') }


gemacht und das hat u.a. die ganzen fehlenden readings wieder erzeugt. Seither habe ich auch ein .wp_json Reading. Aber das Montags-Problem besteht leider immer noch. Für alle anderen Wochentage bekomme ich neue Pläne übertragen.

Edit2:

Nach Factory Reset via fhem Kommando und neu anlernen am CUL klappt beim Wandthermostat jetzt auch wieder das Setzen des Weekprofile für Montag. Jetzt darf ich das dann noch bei 7 Heizkörperventilen machen wie es scheint  ...

(Im Hintergrund läuft leise Musik von den Boomtown Rats ...)

Grüße, gadget

Wzut

#1
Dein Problem kann ich leider nicht nachvollziehen. Hilfreich wäre den verbose Level am cm Device wieder zurück zu drehen und dafür das betroffene HT auf 5 zu setzen.
Hier mal ein Log Auszug deines Montags Befehl bei mir :
2022.11.21 19:16:55 4: 3_HT_WohnSchlaf, _handle_ConfigWeekProfile: Mon 19,7:30,22,9:30,21,21:00,22,23:30,19
2022.11.21 19:16:55 5: 3_HT_WohnSchlaf, new Temperature part for 2: 4c5a587254fc591a4d2045204520452045204520452045204520
2022.11.21 19:16:55 3: WP -> 024c5a587254fc591a4d2045204520
2022.11.21 19:16:56 5: 3_HT_WohnSchlaf, msgtype Ack : 01190120
2022.11.21 19:16:56 5: 3_HT_WohnSchlaf, msgtype ThermostatState : 190120
2022.11.21 19:16:56 5: 3_HT_WohnSchlaf, desiredTemperature:16, rferror:0, battery:0, mode:1, gateway:1, panel:0, dst:1, valveposition:1
2022.11.21 19:16:56 4: 3_HT_WohnSchlaf, desiredTemperature:16.0, rssi:-74.5, rferror:0, battery:0, mode:1, gateway:1, panel:0, dstsetting:1
2022.11.21 19:16:56 5: 3_HT_WohnSchlaf, msgtype AckConfigWeekProfile : 2 0 4c5a587254fc591a4d2045204520
2022.11.21 19:16:56 5: 3_HT_WohnSchlaf, new weekProfile: 412045204520452045204520452045204520452045204520452041204520452045204520452045204520452045204520452045204c5a587254fc591a4d20452045204520452045204520452045204120452045204520452045204520452045204520452045204520412045204520452045204520452045204520452045204520452041204520452045204520452045204520452045204520452045204120452045204520452045204520452045204520452045204520


Ganz vergessen : welche Version von 10_MAX hast du im Einsatz ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

gadget

Zitat von: Wzut am 21 November 2022, 19:23:01
Hilfreich wäre den verbose Level am cm Device wieder zurück zu drehen und dafür das betroffene HT auf 5 zu setzen.
(...)
Ganz vergessen : welche Version von 10_MAX hast du im Einsatz ?

Wenn ich nur das MAX Device auf verbose 5 stelle und das Weekprofile-Set für Montag sende habe ich im Log stehen


2022.11.22 14:32:32 5: MAX_1927d9, msgtype AckSetTemperature : 0


also insbesondere nicht sowas wie "new weekProfile".

Version des Moduls: SVN 23517
Im Header steht
# $Id: 10_MAX.pm 23517 2021-01-13 15:38:49Z Wzut $


Ich werde die zickenden MAX-Aktoren jetzt der Reihe nach factory-Resetten und neu einbinden, das hat das Problem ja zumindest bei dem einen WT behoben.

Grüße, gadget

gadget

#3
Arghl. Hab den Fehler vermutlich gefunden.

Ich habe bei allen MAX-Devices ein


attr max-Device eventMap { usr=>{ 'on'=>'desiredTemperature auto', 'off'=>'desiredTemperature off', 'heat'=>'desiredTemperature auto', 'auto'=>'desiredTemperature auto'}}


drin. Wenn ich das rauswerfe geht´s mit dem weekprofile am Montag. Kann mir das Resetten der ganzen Devices also sparen. Durch das Löschen/Neulanlegen ist mir auch dieser eventMap-Eintrag rausgeworfen worden, darum ging es danach.

Diesen eventMap-Eintrag habe ich eigenlich mal gemacht um die MAX-Thermostate per MQTT von Home Assistant aus steuern zu können mit der MQTT-Climate Integration  https://www.home-assistant.io/integrations/climate.mqtt/ weil die halt on/off/heat/auto sendet.

Vermutlich matched das 'on'  auf "Mon" im weekprofile-Kommando für Montag. Muss ich nochmal das Perl-Buch rauskramen, wie ich das verbessert bekomme.

Edit:
Mit

attr max-Device eventMap { usr=>{ '^on'=>'desiredTemperature auto', '^off'=>'desiredTemperature off', '^heat'=>'^desiredTemperature auto', '^auto'=>'desiredTemperature auto'},  fw=>{'^on'=>'on', '^off'=>'off', '^heat'=>'heat', '^auto'=>'auto'}}


kein Montagsblues mehr.