[solved] [max] setting 'set_temp' does not do anything. i can read its value though

openhab2
max
maxcube
Tags: #<Tag:0x00007fe0525f0bd8> #<Tag:0x00007fe0525f0a48> #<Tag:0x00007fe0525f0868>

(daniel) #1

I’m running OpenHAB 2.3 on Windows 10.

I have four MAX! Thermostat+, and one MAX! Thermostat, as well as a MAX! Cube. I do not have a CUL device. Somehow I am unable to set the temperature with set_temp. It is just ignored. The data is read fine though. I see all the actual set temps for all my thermostats.
I can switch between automatic and manual mode and back without any trouble.

Can anyone hint me at how to debug that? Since I can see the temperature, and I am not doing anything fancy to get and set the temperature (Setpoint item=maxBathroomSetTemp minValue=4.5 maxValue=32 step=0.5 icon=“temperature”), I would assume that the issue lies beyond errors in items / rules / sitemap, because the data is read properly.

I tried resetting one of my thermostats, un- and relearning it on the cube, sadly to no avail.


(Angelos) #2

Have you seen this: MAX! system installation and configuration walktrough ?

You need to post (using Code Fences) some more info (your Items) to double check.

You can enable DEBUG on the binding using the OH2 console to see if something useful comes up.


(daniel) #3

Yes. The part you quoted does work.

I have googled for quite some time, but I cannot figure out how to set the debug level for certain bindings. log:list and log:get do not show any bindings. bindings.max does not show up anywhere. I’ll gladly add a log file as soon as I figure out how to obtain the proper logs…

Group House

Group Bathroom (House)
Group Kitchen (House)
Group Bedroom1 (House)
Group Bedroom2 (House)

Group Batteries
Group Modes

Group Outside
Group TemperatureIs
Group TemperatureWant

Number:Temperature TemperatureIngolstadtOutside "Aussentemperatur [%.1f %unit%]" (Outside,TemperatureIs) { channel="yahooweather:weather:ingolstadt:temperature" }

Switch maxBathroomBattery "Battery Low" (Bathroom, Batteries) {channel="max:thermostatplus:JEQ0340325:KEQ0543806:battery_low"}
String maxBathroomMode "Thermostat Mode Setting" (Bathroom, Modes) {channel="max:thermostatplus:JEQ0340325:KEQ0543806:mode"}
Number:Temperature maxBathroomActual (Bathroom, TemperatureIs) {channel="max:thermostatplus:JEQ0340325:KEQ0543806:actual_temp"}
Number:Temperature maxBathroomSetTemp (Bathroom, TemperatureWant) {channel="max:thermostatplus:JEQ0340325:KEQ0543806:set_temp"}
//Contact maxBathroomShuttercontactState (Bathroom) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0543806:contact_state"}
//Switch maxBathroomShuttercontactBattery <battery> (Bathroom, Batteries) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0543806:battery_low"}

Switch maxBedroom1Battery (Bedroom1, Batteries) {channel="max:thermostatplus:JEQ0340325:KEQ0544673:battery_low"}
String maxBedroom1Mode (Bedroom1, Modes) {channel="max:thermostatplus:JEQ0340325:KEQ0544673:mode"}
Number:Temperature maxBedroom1Actual (Bedroom1, TemperatureIs) {channel="max:thermostatplus:JEQ0340325:KEQ0544673:actual_temp"}
Number:Temperature maxBedroom1SetTemp (Bedroom1, TemperatureWant) {channel="max:thermostatplus:JEQ0340325:KEQ0544673:set_temp"}
//Contact maxBedroom1ShuttercontactState (Bedroom1) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0544673:contact_state"}
//Switch maxBedroom1ShuttercontactBattery <battery> (Bedroom1, Batteries) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0544673:battery_low"}

Switch maxKitchenBattery (Kitchen, Batteries) {channel="max:thermostatplus:JEQ0340325:KEQ0636734:battery_low"}
String maxKitchenMode (Kitchen, Modes) {channel="max:thermostatplus:JEQ0340325:KEQ0636734:mode"}
Number:Temperature maxKitchenActual (Kitchen, TemperatureIs) {channel="max:thermostatplus:JEQ0340325:KEQ0636734:actual_temp"}
Number:Temperature maxKitchenSetTemp (Kitchen, TemperatureWant) {channel="max:thermostatplus:JEQ0340325:KEQ0636734:set_temp"}
//Contact maxKitchenShuttercontactState (Kitchen) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0636734:contact_state"}
//Switch maxKitchenShuttercontactBattery <battery> (Kitchen, Batteries) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0636734:battery_low"}


Switch maxBedroom2LBattery (Bedroom2, Batteries) {channel="max:thermostatplus:JEQ0340325:KEQ0549480:battery_low"}
String maxBedroom2LMode (Bedroom2, Modes) {channel="max:thermostatplus:JEQ0340325:KEQ0549480:mode"}
Number:Temperature maxBedroom2LActual (Bedroom2, TemperatureIs) {channel="max:thermostatplus:JEQ0340325:KEQ0549480:actual_temp"}
Number:Temperature maxBedroom2LSetTemp (Bedroom2, TemperatureWant) {channel="max:thermostatplus:JEQ0340325:KEQ0549480:set_temp"}
//Contact maxBedroom2LShuttercontactState (Bedroom2) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0549480:contact_state"}
//Switch maxBedroom2LShuttercontactBattery <battery> (Bedroom2, Batteries) {channel="max:shuttercontact:JEQ0340325:CONTACTKEQ0549480:battery_low"}

Switch maxBedroom2RBattery (Bedroom2, Batteries) {channel="max:thermostat:JEQ0340325:OEQ1686142:battery_low"}
String maxBedroom2RMode (Bedroom2, Modes) {channel="max:thermostat:JEQ0340325:OEQ1686142:mode"}
Number:Temperature maxBedroom2RActual (Bedroom2, TemperatureIs) {channel="max:thermostat:JEQ0340325:OEQ1686142:actual_temp"}
Number:Temperature maxBedroom2RSetTemp (Bedroom2, TemperatureWant) {channel="max:thermostat:JEQ0340325:OEQ1686142:set_temp"}
//Contact maxBedroom2RShuttercontactState (Bedroom2) {channel="max:shuttercontact:JEQ0340325:CONTACTOEQ1686142:contact_state"}
//Switch maxBedroom2RShuttercontactBattery <battery> (Bedroom2, Batteries) {channel="max:shuttercontact:JEQ0340325:CONTACTOEQ1686142:battery_low"}

// ASTRO
DateTime Sunrise_Time "Sonnenaufgang [%1$tH:%1$tM]" { channel="astro:sun:home:civilDawn#end" }
DateTime Sunset_Time  "Sonnenuntergang [%1$tH:%1$tM]" { channel="astro:sun:home:civilDusk#start" }

// VIRTUAL FOR HEATING
String Heating_Mode_Bedroom1 "Bedroom1 Heating Mode [%s]"
String Heating_Mode_Bedroom2 "Bedroom2 Heating Mode [%s]"
String Heating_Mode_General "Heating Mode [%s]"

Group presence
Switch Bedroom1_present (presence)
Switch Bedroom2_present (presence)
Switch Bedroom1_present_day (presence)
Switch Bedroom2_present_day (presence)

// Store current presence-independent time table temperatures for persistence
Group TemperaturesTimetable
Number Kitchen_Heat_Present_Temp (TemperaturesTimetable)
Number Kitchen_Heat_Away_Temp (TemperaturesTimetable)
Number Bathroom_Heat_Present_Temp (TemperaturesTimetable)
Number Bathroom_Heat_Away_Temp (TemperaturesTimetable)
Number Bedroom1_Heat_Present_Temp (TemperaturesTimetable)
Number Bedroom1_Heat_Away_Temp (TemperaturesTimetable)
Number Bedroom2_Heat_Present_Temp (TemperaturesTimetable)
Number Bedroom2_Heat_Away_Temp (TemperaturesTimetable)
Switch Bedroom1_present_TT (presence)
Switch Bedroom2_present_TT (presence)

Switch Heating_Commit "Send Target Temperatures to Heaters"

(Angelos) #4
bundle:list -s |grep max

then: log:set DEBUG ....<bundle_name>....

It is true… the https://www.openhab.org/docs/administration/logging.html does not describe how to identify the bundle name :frowning:


(daniel) #5

Ohhhhh. Thanks! The ‘removed command’ happens because I clicked twice (trying to lower by a total of 1 degree). What I did was: I lowered the temperature. Then I selected Manual mode. Then I lowered the temperature again, through the very standard buttons in my sitemap. No fancy automation. Manual mode works, setting temperatures does not.

Setpoint item=maxBedroom1SetTemp minValue=4.5 maxValue=32 step=0.5 icon="temperature"

2019-11-25 00:01:38.343 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 12 (KEQ0544673-set_temp:17 ?).
2018-11-25 00:03:19.107 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Sending request #115 to MAX! Cube
2018-11-25 00:03:19.200 [DEBUG] [b.binding.max.internal.device.Device] - Device 1aa389 (Thermostat): Actual Temperature : 0.0
2018-11-25 00:03:19.200 [DEBUG] [b.binding.max.internal.device.Device] - Device 0b0f52 (Thermostat+): Actual Temperature : 23.1
2018-11-25 00:03:19.200 [DEBUG] [b.binding.max.internal.device.Device] - Device 08de77 (Thermostat+): Actual Temperature : 21.0
2018-11-25 00:03:19.200 [DEBUG] [b.binding.max.internal.device.Device] - Device 0b0280 (Thermostat+): Actual Temperature : 0.0
2018-11-25 00:03:19.200 [DEBUG] [b.binding.max.internal.device.Device] - Device 0b0bef (Thermostat+): Actual Temperature : 0.0
2018-11-25 00:03:19.202 [DEBUG] [b.binding.max.internal.device.Device] - Device 018e77 (Shutter Contact): Status: Closed
2018-11-25 00:03:19.202 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Eco Switch Eco Taster 1 (IEQ0178118) id: max:ecoswitch:JEQ0340325:IEQ0178118
2018-11-25 00:03:19.202 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Thermostat Thermostat 2 (OEQ1686142) id: max:thermostat:JEQ0340325:OEQ1686142
2018-11-25 00:03:19.202 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Thermostat+ Thermostat 1 (KEQ0544673) id: max:thermostatplus:JEQ0340325:KEQ0544673
2018-11-25 00:03:19.202 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Thermostat+ Thermostat 1 (KEQ0636734) id: max:thermostatplus:JEQ0340325:KEQ0636734
2018-11-25 00:03:19.202 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Thermostat+ Thermostat 1 (KEQ0549480) id: max:thermostatplus:JEQ0340325:KEQ0549480
2018-11-25 00:03:19.202 [DEBUG] [x.internal.handler.MaxDevicesHandler] - Updating states of Thermostat+ Thermostat 1 (KEQ0543806) id: max:thermostatplus:JEQ0340325:KEQ0543806
2018-11-25 00:03:19.204 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Shutter Contact  (JEQ0323690) id: max:shuttercontact:JEQ0340325:JEQ0323690
2018-11-25 00:03:43.409 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 13 (KEQ0544673-set_temp:16.5 ?).
2018-11-25 00:03:43.583 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Removed Command id 13 (KEQ0544673-set_temp) from queue. Superceeded by 14
2018-11-25 00:03:43.583 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 14 (KEQ0544673-set_temp:16 ?).
2018-11-25 00:04:16.696 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 15 (KEQ0544673-mode:MANUAL).
2018-11-25 00:04:17.836 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - updates to MANUAL mode with temperature '18.5'
2018-11-25 00:04:17.836 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command 15 (KEQ0544673-mode:MANUAL) sent to MAX! Cube at IP: 192.168.1.15
2018-11-25 00:04:17.836 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Sending request #116 to MAX! Cube
2018-11-25 00:04:17.999 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - S message. Duty Cycle: 12, Free Memory Slots: 49
2018-11-25 00:04:20.239 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 16 (KEQ0544673-set_temp:15.5 ?).
2018-11-25 00:04:20.419 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Removed Command id 16 (KEQ0544673-set_temp) from queue. Superceeded by 17
2018-11-25 00:04:20.419 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 17 (KEQ0544673-set_temp:15 ?).

(daniel) #6

That log solved it. :slight_smile: Thanks!
I do not know why the standard interface does not work, but I know why my rules didn’t. I restructured my code, and substituted a few too many commands with postUpdate, that should have been sendCommand. :<

It’s late here, thanks for helping! (I noticed it was never sending a request)


(Angelos) #7

image