v4.4 Update – Blueprint fully revised
After months of testing, I’ve published a major retuning of the blueprint. Here’s the updated full description for anyone discovering this thread:
Smart NIBE – Ultra Adaptive Heat Curve Control (MQTT)
This blueprint provides an advanced supervisory controller for NIBE heat pumps.
It dynamically adjusts the heat curve offset (Modbus register 47011) based on:
- electricity spot prices
- weather conditions
- indoor temperature feedback
- Degree Minutes protection
Without switching the compressor ON/OFF
Think of it as a brain, not a switch.
Import Blueprint (v4.4)
What changed in v4.4
Spot price influence reduced 3× — indoor comfort now dominates.
| Before (v4.3) | After (v4.4) | |
|---|---|---|
| Formula | (−0.8 × price) + 4.0 |
(−0.3 × price) + 1.5 |
| Effect at 10 CZK/kWh | −4.0 |
−1.5 |
| Effect at 5 CZK/kWh | 0.0 neutral | 0.0 neutral |
| Effect at 2 CZK/kWh | +2.4 | +0.9 |
After updating, set these helpers:
| Helper | Recommended |
|---|---|
input_number.indoor_bias |
0.0 ← important! |
input_number.indoor_response_gain |
1.5 |
If
indoor_biasis set to −1.0 (old default), your effective target temperature is 1°C below your thermostat setpoint. The system will suppress heating even when the room is cold. Change it to 0.0.
Key Features
- Adaptive heat curve offset control (Modbus 47011)
- Spot electricity price optimization
- Look-ahead preheating before price spikes
- Equithermal outdoor temperature logic
- Indoor temperature feedback (comfort-first)
- Solar gain reduction
- Degree Minutes Guard (DM protection)
- Slew rate limiting (smooth changes)
- Optional HDO / grid signal support
- MQTT communication (works with nibepi)
- Full debug logging via MQTT
Requirements
- Home Assistant
- MQTT broker (Mosquitto)
- NIBE heat pump with Modbus → MQTT access (nibepi or similar)
- Spot electricity price sensor
- Indoor temperature sensor
- Outdoor weather entity
- Degree Minutes sensor
- (Optional) HDO binary sensor
Documentation
Full documentation (CZ + EN), helpers guide, diagrams and troubleshooting:
Feedback and testing results very welcome ![]()