Screenshots From the README of KipK/vtherm_smartpi.
About
Versatile Thermostat SmartPI adds a self-adapting PI control algorithm to the Versatile Thermostat integration. It learns a room's heating gain, heat-loss rate and dead time from observations, then uses that model to compute the heating command and tune its gains automatically. Further parts include feed-forward correction, automatic recalibration when learning stalls, and valve curve linearization for radiator thermostatic valves. Settings can be defined per thermostat or as global defaults, covering delays, deadband, hysteresis and diagnostics recording. Actions allow resetting or pausing learning, forcing a calibration cycle and resetting the integral accumulator, and sensors publish diagnostics that the Equinox card can display. It runs locally, is set up in the UI, and requires a recent Versatile Thermostat version.
Automatic summary of the README and code of KipK/vtherm_smartpi. Something wrong, or are you the maintainer and want your own text here? Get in touch
Supports
Works locally Talks to your devices on your own network. No vendor cloud in between.
From the Marketplace Installed through the Marketplace, formerly HACS.
Actively maintained Its author released or pushed a change in the last six months.
Provides
- Sensors
Setting it up
Install it from the Marketplace and restart Home Assistant, then add it under Settings, Devices and services.
SmartPI per-thermostat
- Target thermostat
SmartPI per-thermostat
- Minimal activation delay
- Minimal deactivation delay
- Deadband
- Hysteresis on
- Hysteresis off
- Release tau factor
- Use setpoint filter
- Use FF3
- Allow damped P near deadband edge
- Allow PWM cycle restart on band transitions
- Record full diagnostics (debug)
- Enable valve curve linearization
Valve curve
- Minimum valve opening
- Demand at knee
- Valve opening at knee
- Maximum valve opening
After setup
- Minimal activation delay
- Minimal deactivation delay
- Deadband
- Hysteresis on
- Hysteresis off
- Release tau factor
- Use setpoint filter
- Use FF3
- Allow damped P near deadband edge
- Allow PWM cycle restart on band transitions
- Record full diagnostics (debug)
- Enable valve curve linearization
- Minimum valve opening
- Demand at knee
- Valve opening at knee
- Maximum valve opening
Texts from the code of KipK/vtherm_smartpi.
Actions
- Reset SmartPI learningReset the SmartPI learning state for a thermostat.
- Set SmartPI learningEnable or pause SmartPI thermal learning for a thermostat.Fields: Learning enabled
- Force SmartPI calibrationForce a SmartPI calibration cycle for a thermostat.
- Reset SmartPI integralReset the SmartPI integral accumulator for a thermostat.
Troubleshooting
- Repair noticesNotices it can show in Settings, Repairs:SmartPI cannot start
From the README
Self-Adaptive PI Thermostat Control for Home Assistant
A model-based PI controller that learns your room's thermal behavior and adapts regulation automatically — beyond fixed-coefficient approaches.
Shows in Vulpo
Chart card, Apple Watch.Information
- Installs
- 146 sharing analytics
- GitHub stars
- 21
- Connection
- Works locally
- Upkeep
- Updated in the last 6 months
- Version
- 0.5.2,
- Category
- Climate, Thermostats and heating
- Kind
- Marketplace integration
- Needs
- Needs the Marketplace (HACS on 2026.10 and older)
- Domain
vtherm_smartpi- Issues
- Report an issue












