Max!Cube binding - How to set Eco/Auto/Boost Mode?

I would like to implement a Switch for Mode Setting.

How to do that?

In sitemap i implemented a Switch Widget:

Selection item=maxHT mappings=[AUTOMATIC="Auto",MANUAL="Manuell",BOOST="Boost"]

In Items i have a item:

String maxHT "HT Livingroom" <heating> (max) { maxcube="MEQ0346834" }

But it does not work.

There are a few questions:

  • modes are only for heating valves?
  • send a mode to a Wall Thermostat?
  • send a mode for the whole house?

Thanks for advice.

Greets
Olli

To answer the last 2 questions:
You can send mode command to a wall thermostat. I’m not sure about boost, but defiantly manual and auto

There is however no direct command to send a mode to the whole house, but that can be easy implemented as a rule

I’m trying to do the same. I have

String  OG_Bad_Thermo_mode                  "Betriebsmodus Bad [%s]"                <calendar>      (OG_Bad_Thermo)         { maxcube="KMDXXXXXX:type=mode" }

in items file and

    OG_Bad_Thermo_mode.sendCommand("MANUAL")

in rule.

This direction works, but sendCommand(“AUTOMATIC”) apparently does not. Pretty strange.

I don’t know how to do it “for the whole house”, but you can sendCommand to each and every thermostate.

Here’s an example of what I have to automatically switch the whole house (at a certain time)
You could also trigger this obviously by a some other item in OH
To ensure it acts on all the termostats, I add all the mode items to the group gMaxCubeMode

rule "ThermostaatSwitching"

        when
                Time cron "0 0 22 * * ?"
then
       gMaxCubeMode?.members.forEach(item,i|createTimer(now.plusSeconds(i)) [|sendCommand(item,"AUTOMATIC")])
end

rule "ThermostaatSwitchingSzonja"
        when
                Time cron "0 0 9 * * ?"
then
       sendCommand(Heating_Max5_mode, "AUTOMATIC")
end

If this really does not work for you, pls register an issue in the github.
Include the logfile while running the logfile on TRACE level for the max binding.
then execute these commands. I/We can try to understand why it does not work for you.

I have couple of on/off switches for boost mode. Then for each of them I have a pair of rules controling the valve mode (AUTOMATIC/BOOST):

Items:
Switch Boost_Sypialnia "Sypialnia Boost" <heating> (G_Sypialnia, G_Boost, Ogrzewanie) Switch Boost_Salon "Salon Boost" <heating> (G_Salon, G_Boost, Ogrzewanie) String Termostat_Salon_Tryb "Termostat tryb [%s]" { maxcube="LEQ1159396:type=mode" }

Rules:
rule "Salon Boost" when Item Boost_Salon changed then logInfo("Boost","Salon changed to {}",Boost_Salon.state) if (Boost_Salon.state == ON) sendCommand(Termostat_Salon_Tryb,"BOOST") else sendCommand(Termostat_Salon_Tryb,"AUTOMATIC") end rule "Salon Boost Fiz" when Item Termostat_Salon_Tryb changed then logInfo("Boost","Termostat_Salon_Tryb changed to {}",Termostat_Salon_Tryb.state) if (Termostat_Salon_Tryb.state == "BOOST") sendCommand (Boost_Salon, ON) else sendCommand (Boost_Salon, OFF) end

I noticed strange behaviour, when I change the mode for one switch, the boost command is activated also on one or more other thermostats (consistently the same). The same happens when I just send command to the item linked with type=mode.

Any hints?

Hi

Do you know if the thermostats (according to the definition in the eq-3 max! config tool) are in linked or defined as being in the same room? In that case I’m not sure if it is possible to send the command to a single thermostat.

If they are not connected, can you make a logfile on TRACE level for the max binding.
then execute these commands. I/We can try to understand why it does not work for you. I believe the OH1 wiki has some pointers on how to set this for the MAX! binding.

An alternative approach would be to see if the same happens if you are using the eq-3 tool and set the boost mode, does that also trigger the 2nd one to go into boost mode

Thank you, Marcel, for the prompt response.

Each device in Max! network is assigned to a separate room, I even did not link the window contacts with the thermostats.

I could find the Boost button/switch in the official Max! software. Where to look for it?

I will generate the detailed log, need to find where to switch the TRACE on (I assume it is different than DEBUG log, isn’t it? EDIT: I got it, I will change the log level and provide the trace tomorrow)

Good question, haven’t used it for ages. Don’t even know if I stil have it installed. I’ll check if I can see it

btw, does it only happen when you switch to boost mode, or with all mode changes?

Dear Marcel,

please find the trace log. Apologies, it is a bit “poluted” by the other bindings.

The items in question are Termostat_Sypialnia_Tryb and Termostat_Kuchnia_Tryb defined as
String Termostat_Sypialnia_Tryb "Termostat tryb [%s]" { maxcube="LEQ1159743:type=mode" }
and
String Termostat_Kuchnia_Tryb "Termostat tryb [%s]" { maxcube="LEQ1159292:type=mode" }

At 21:10:10 a cron based rule “test” (line 1262 of the log) sends command to Termostat_Sypialnia_Tryb to BOOST. Than about a minute later the BOOST mode is also reported by Termostat_Kuchnia_Tryb by polling result as of 21:11:07 (line 2282).

When I tried to change the mode from AUTOMATIC to MANUAL, similar thing occured: sending
command MANUAL to Termostat_Sypialnia_Tryb changed also Termostat_Kuchnia_Tryb to MANUAL 28 seconds later.

I checked on the eq3 software installed on Windows, the same strange behavoiur - if I set Manual in Sypialnia it changes also Kuchnia. So most likely it is not an issue with the binding but with Max!. I will reset the whole Max network on weekend and establish new connections.

@JjS thanks for testing that out via the eq3 software… saves me from long digging into the source :smile:
There was once before similar issue reported https://github.com/openhab/openhab/issues/1916 which we never were able to find any binding issue with it. (in the sense of we fire the right command to the Cube as far as we could see)

For OH2 binding I have been looking into the configuration and the linking of thermostats to the cube and each other. One thing I noticed is that as far as I can see the ‘reported’ structure wrt to the rooms is not necessary truly linked to the real communication/radio structure. (e.g. I think in the ‘radio link’ setup I can link a thermostat to room1, but in the ‘room’ setup I can link it to room2 if I wanted to)

Hence if for some reason there was a disruption during the initial config process, I can imagine that e.g. the room setup was updated but the radio setup not yet, as these are individual, independent commands to be send.

Thank you for the hint to test it on eq3 software. It also saved me a lot of time, the problem was narrowerd to Max! network/settings.

I have reset all devices in Max! network to the factory defaults, re-connected them again and now it works without any issues.

Most likely Cube setting were corrupted. Cube lost some of it’s settings after power loss (by the way, I would expected this type of device to keep settings in non volatile memory). Now it is powered from UPS, so it is less of my concern.

BTW, does your cube loose the settings if disconnected for more than 5 minutes?

no, I have not experienced that the cube forgot the settings.
I corrupted it several times lately :grin: , but that was more with my testing for the next release where you wouldn’t need the eq3 software to pair new devices

Just scanned through the community as I wanted to implement exactly what you tried.
For me your settings are working fine with one exception:

The item definition does only reference the valve itself, but is missing “:type=mode”.

This is working for me:

Item:

String MAX_Thermostat_EG_WZ_Mode “Mode [MAP(maxcubeMode.map):%s]” { maxcube=“LEQ1234567:type=mode” }

Sitemap:
Selection item=MAX_Thermostat_EG_WZ_Mode mappings=[AUTOMATIC=“Auto”,MANUAL=“Manuell”,BOOST=“Boost”]

maxcubeMode.map:
AUTOMATIC=Auto
MANUAL=Manuell
BOOST=Boost
-=-

Running OH 1.7.0, binding 1.7.1 (yes, gotta update OH)

Hope this help.