I rarely see effective solutions for HVAC systems that rely on multiple heating and cooling sources. In most cases—at least from my experience—homes have water-based heating (underfloor or radiators) for warmth, plus an A/C that can heat or cool but usually just handles cooling. Even in new KNX-equipped houses, I often find separate control panels for underfloor heating and A/C, which is confusing for the average user and could be managed much better.
Ideally, you’d set one temperature target (via thermostat, app, or voice command), and the entire system would automatically adjust. Unfortunately, what usually happens is that you control underfloor heating with a thermostat, but then you need the A/C remote for cooling, and whenever someone opens a window, you have to grab the remote again to switch the A/C off. The goal should be that you set your desired temperature once and everything operates around that.
An even more advanced step would be a dynamic setpoint—just saying, “I want to be comfortable,” and letting the system figure out temperature settings based on the weather, your home layout, and your personal preferences. We’re not quite there yet, but it might be worth exploring in the future.
I face the same issue at home. In my apartment, I have three separate zones—each with its own thermostat (living area, master bedroom, and kid’s room). The bathroom, toilet, and hallway are always on with no thermostat control. I also have a Mitsubishi A/C in the living area.
The underfloor heating is managed by three Vimar thermostats (see picture), each with a dial and a heating/cooling/off switch. They’re quite frustrating to use because I never really know which symbol does what, nor the current temperature in the room. You get the idea—using those thermostats is a big pain.
The A/C situation was slightly better, thanks to a large, easy-to-find remote. Still, deciphering the mode symbols required a second of thought. Overall, though, the user experience left much to be desired, so I turned to 1Home Automations, some Matter devices, and my trusty 1Home Server KNX PRO.
Tackling the Underfloor Heating
The underfloor heating was my top priority because it caused the most frustration. Initially, I considered Eve Thermo but quickly realized it wasn’t ideal for underfloor heating. I looked into Tado, but a colleague's lukewarm review of its Matter integration discouraged me. Then I found Eberle, a German company specializing in thermostats with two Matter-compatible models:
- U-3500: Designed for water-based underfloor heating.
- U-3800: For electrical underfloor heating, with an additional external temperature sensor input.
These thermostats seemed perfect because they fit the fi60 wall-box, allowing an easy replacement of the old Vimar thermostats. I tested both models - the U-3800 can also be used with water-based heating - you just need to select electrical panel as a heating source from the start-up menu on the device.
Initially, I disliked that Eberle thermostats are "thermostats first and IoT devices second." However, I grew to appreciate it. Advanced settings, like valve characteristics, are accessible directly on the device using three buttons—no app required. While navigating the menus is clunky (hold "o" and "-" to enter, adjust settings using codes), it means you're independent of manufacturer apps. It also means you can fine-tune the thermostat to your HVAC system and operational needs. This flexibility was a big plus despite the initial learning curve. And it would also present a great advantage to a system integrator giving this device to their customers.
Automating the A/C
Since my A/C is not Matter compatible, I needed a Matter-enabled IR blaster and ended up with the Nature Remo Lapis (as I am writing in this blogpost). This device allows me to control the A/C via voice, 1Home app, Apple Home etc...
However - since the goal of this exercise was to eliminate the A/C remote from our home operations and generally make the A/C more useful, I wanted to:
- Link the A/C with my Eberle thermostats, ensuring the A/C heats if the setpoint temperature is far from the actual temperature.
- Also be able to control A/C cooling from the Eberle thermostat
- Automatically turn off the A/C when the terrace door is open.
To achieve this, I added an Orvibo Zigbee contact sensor to the terrace door, integrating it via the Azoula Matter/Zigbee Bridge. The integration process was straightforward, but finding the right sensor for my terrace door took some trial and error. The Elko sensor I initially tried didn’t fit well with the door frame, so I used it for the bedroom window instead.
Setting Up the Automation
It’s not so trivial to set a proper trigger for this automation. At first I was thinking to make the control most responsive so I just set the automation trigger to whenever one of the following happens:
- Current temperature changes
- Heating/cooling setpoint temperature changes
- Terrace door contact sensor state changes
However, since my A/C is controlled via IR, it beeps every time it receives a command. This caused the A/C to beep frequently due to temperature fluctuations, which became bothersome fast. Since I couldn’t disable the beep (short of removing the beeper from the A/C physically), I removed the current temperature trigger and added a trigger to run the automation hourly. This isn't perfect but works well enough.
The automation:
- Check the thermostat mode: heating, cooling, or off.
- For heating mode:
- For cooling mode:
- If the thermostat mode is "off" or the window/door is open, turn off the A/C.
During this process, I ran into a peculiar challenge with 1Home Automations—figuring out how to define modes in automation conditions. Initially, I tried using:
IF(THERMOSTAT_MODE) = 'Heat'
...but it didn’t work. After some trial and error, I realized that "Heat" corresponds to the numerical value "4" in the 1Home system. This discovery was when setting up the action block later - in this process you select the mode from the dropdown menu. Once I cracked this, setting conditions became much smoother.
The point of this automation is to control the A/C from the same thermostat as the underfloor heating. However, you don’t want the A/C to turn on every time the underfloor heating activates. Instead, the A/C should only turn on in two specific scenarios:
- When the difference between the indoor temperature and the heating setpoint is significant—in my case, I set this threshold to 3 degrees.
- When you feel cold and want immediate relief. By simply increasing the setpoint on the thermostat (just press the plus button repeatedly), the A/C turns on.
This setup ensures that the A/C activates during rapid cooling events, such as when windows have been left open for an extended time or during sudden temperature drops. It also offers a straightforward way to manually trigger the A/C without searching for remotes or additional controls.
In cooling mode, there is no other source of coolness, so the thermostat only needs to control the A/C. This simplifies the setup—you don’t need to factor in a difference between the setpoint and the current temperature. Instead, the A/C simply turns on when the room temperature is lower than the cooling setpoint. This approach allows you to turn on the A/C quickly without searching for the remote, and it ensures the A/C reacts automatically in overheating situations.
For the off mode of the thermostat, the automation is designed to prevent the A/C from operating if the thermostat is set to "off." This enables you to turn off all heating and cooling simply by putting the thermostat in off mode.
I also considered another function for the off mode. Initially, I planned to avoid using the A/C remote entirely, but the described automation essentially overrides any remote actions quickly with signals from the smart home setup. However, what if not all household members agree with this approach? Hypothetically, you could modify the off mode to make the automation send nothing to the A/C when the thermostat is in this mode. This would allow remote enthusiasts to use their remote freely by putting the thermostat in off mode (via app, voice, or pushbutton). I guess time will tell if I need to replace this part of the automation with the second hypothetical scenario.
The whole automation looks like this:
There was another problem to overcome before this automation can be left alone to run our residential HVAC autonomously - and that was, that the Eberle thermostat does not go into cooling mode when you ask it to. Actually the software layer (in 1Home app & 1Home Automations) is correctly set to the cooling mode, but the physical device is still displaying the heating setpoint and then you enter a weird state where the device on your wall is largely unusable. There is a H/C input at the back of the thermostat, which I left unconnected when wiring the thermostat. According to Eberle customer support, the thermostat can only be put into cooling mode through the H/C input on the back of the device. I guess this comes from thermostat first/IoT device later philosophy and it left me a bit disappointed, because I don’t want to install another relay in the back of the thermostat. On the other hand I am a bit challenged by this, so maybe I will come up with an innovative solution and update this blogpost when I do that. Or I will just try with a different thermostat…
Despite these quirks, this setup is a game-changer. It's easy for anyone to use: just adjust the thermostat, and everything else happens automatically—no remotes, no confusion, and no more dead batteries!
I plan to expand this system by incorporating blinds and curtains for passive heating/cooling and exploring automatic mode switching. Once I’ve tinkered enough, I’ll write an update. Meanwhile, you can find the automation "export" here.
If you have a similar setup at home or perhaps a KNX system controlling underfloor heating and want to use the same thermostat to control your A/C, this example might be useful. Simply import the automation to your 1Home, replace the devices with your own, and voila!