Skip to content
Home Assistant TestFlight
Climate

Versatile Thermostat

jmcollin78/versatile_thermostat · v10.6.2

HACSCalculated

A full featured Thermostat for Home Assistant: presets, window, motion, presence and overpowering management

In Apple Home through HomeKit Bridge

What HomeKit Bridge makes of each kind of entity this integration creates, read from its source code. A device only gets the ones that apply to it.

EntityShows up asNote
switchSwitch or outlet
climateThermostat
binary_sensorSensor (motion, contact, leak, smoke…)
sensorSensor (temperature, humidity, air quality…)
selectMode picker (as switches)

What people report

Thermostat layer over existing climate, switch and valve entities; works with Sonoff TRVZB, pilot-wire switches and MELCloud, though unreliable cloud climates may need the state-retry feature.

  • Works3
  • Partly works2
DeviceIn Home AssistantIn Apple HomeWhat they saidSource
MelCloud Home climateWorks CloudAuto fan mode fixed for worded fan speeds one/two/three
Saved copy
Problem On devices like MelCloud Home, `fan_modes` are exposed as `[auto, one, two, three]`. `choose_auto_fan_mode()` detects speed values by searching for the exact keywords `"low"` or `"1"`, so with worded speeds the detection fails: the `#1419` warning is logged, `_auto_activated_fan_mode` stays `None`, and `_send_auto_fan_mode()` returns immediately, the auto fan feature never changes the fan speed even when configured (e.g. `auto_fan_high`). ## Fix - Add `"one"` to the speed-detection keywords in `determine_fan_mode_contains_speed()` - Handle `"one"` in `fix_order_speed_modes()` for the …

Excerpt saved from GitHub on 2026-10-23.

PR #2019 · 2026-07
Sonoff TRV (Zigbee)Works LocalDelayed temperature resend bug fixed so TRVs turn off properly
Saved copy
Hi, Thank you for creating this awesome add-on for Home Assistant! I noticed that my Sonoff TRVs sometimes don't turn off when they're set to off right after another action. It's one of my automations that turns them off, not me. I made the change proposed in this PR in my local setup, and it fixed the problem with my TRVs. The proposed fix: The lazy-TRV temperature resend scheduled by set_hvac_mode(HEAT/COOL) was only cancelled when a new HEAT/COOL mode was set. A HEAT -> OFF sequence within resend_delay_sec left the timer armed, so a set_temperature was sent to an underlying VTherm …

Excerpt saved from GitHub on 2026-10-23.

PR #2074 · 2026-09
Sonoff TRVZB thermostatic radiator valveWorks LocalStable with direct valve control; firmware 1.4.4 adds internal PID switch later
Saved copy
… this very helpful solution, which works very well (for me)! :-) I switched from “Better Thermostat” to VTherm because I was having major problems with my Sonoff TRVZB thermostats trying to turn my living room into a sauna by repeatedly opening the thermostats to 35°C. With VTherm, these problems have completely disappeared and I have a pretty good solution that works stably (apart from a slight overshoot of the target temperature after ventilation, but that's not a problem at all). I raised this issue to draw attention to a new firmware update for the Sonoff TRVZB thermostats, which has been …

Excerpt saved from GitHub on 2026-10-23.

Issue #1735 · 2026-02
Midea Auto Cloud climatePartly works Cloudhvac_mode silently drifts; fix for repairing drift proposed
Saved copy
Fixes #2020 ## Problem Some climate integrations (cloud-polled devices like Midea Auto Cloud) silently drift away from the hvac_mode VTherm asked for. Investigating on real hardware revealed two distinct issues: 1. Silent drift is never repaired: VTherm only resends hvac_mode when its own internal state changes, so an underlying that bounces back to a previous mode (or is changed externally by remote/app) stays out of sync indefinitely. 2. Back-to-back commands cause the bounce-back in the first place: sending `set_temperature` immediately after `set_hvac_mode` makes the Midea device accept …

Excerpt saved from GitHub on 2026-10-23.

PR #2021 · 2026-07
Mitsubishi heat pump via MELCloudPartly works CloudSometimes fails to turn on; maintainer cites MELCloud unreliability, retry feature available
Saved copy
I’m trying to: Use a MELCloud climate entity as the underlying climate entity of a Versatile Thermostat (over_climate) to control my Mitsubishi heat pump. And I expect: When Versatile Thermostat changes the heat pump from OFF to ON, I expect VTherm to send the corresponding command to the underlying MELCloud climate entity so that the heat pump starts. But I observe this: Sometimes when VTherm tries to turn the heat pump ON, the underlying MELCloud climate entity remains OFF and the heat pump does not start. When this happens, I can see in Home Assistant that the MELCloud climate entity has …

Excerpt saved from GitHub on 2026-10-23.

Issue #2036 · 2026-08

Gathered from GitHub issues, pull requests, discussions and docs, and from r/homeassistant. These are individual reports, so check the linked thread and the date before you buy.

How it connects

Calculated

Works out its values from other data rather than talking to a device.

Details

Installs (analytics)3,710 (0.52%)
GitHub stars1,217
Latest version10.6.2 (2026-10-22)
Set up in the UIYes
Maintainers@jmcollin78
LicenseMIT

Notable forks

Forks with stars, or with code pushed at least 90 days after the original’s last push. Useful when the original goes quiet.

ForkStarsLast pushDescription
KipK/versatile_thermostat★ 52026-10-19A full featured Thermostat for Home Assistant: presets, window, motion, presence and overpowering management

In ReReHome

Whatever HomeKit Bridge shares reaches Apple Home as normal HomeKit accessories behind your Home Assistant bridge, so ReReHome shows and controls them like any other.

Bridges get their own settings page listing the accessories behind them.