PumpSteer integration

Hello Home Assistant Community,

I’d like to introduce my custom integration, PumpSteer – designed to optimize control of heat pumps (and other heating systems) based on hourly electricity prices and weather forecasts. The goal is to save energy and money while keeping your home comfortable.

A Beginner’s Journey with AI Support
I’m completely new to Home Assistant development. This project came to life thanks to a lot of learning and support from AI tools like GitHub Copilot and Google Gemini. It’s been an amazing experience, but I’m now looking for feedback, ideas, and guidance from more experienced developers to help take PumpSteer further.

Please note: The code and github might be a bit messy – I’m doing my best and eager to improve!

Key Features:
• Price- & Forecast-Based Control – Adjusts target temperature based on hourly electricity prices and weather.
• Pre-boost Logic – Warms up in advance during cheap hours before cold, expensive ones.
• Braking Function – Reduces heating during expensive hours.
• Summer Mode – Sets an outdoor temperature threshold to reduce or stop heating.
• Holiday Mode – Via input_boolean and input_datetime, lowers target temp when you’re away.

PumpSteer calculates an optimal indoor temperature using sensors and input values. This target can then be used in automations or with a thermostat entity.

Note: Full setup instructions are currently only available in Swedish.

GitHub: [GitHub - JohanAlvedal/PumpSteer: Smart Home Assistant integration for heat pump optimization based on electricity price and temperature.]

Feedback and Contributions Welcome!
This is a work in progress. I’m highly motivated and open to all feedback, bug reports, or suggestions. If you’re experienced and want to help improve the code or logic, I’d truly appreciate it!

Best regards,
Johan_71

5 Likes

Spännande! Vilken version av Ohm on Wifi ska man välja. Den med förinstallerade mjukvara för Home Assistant eller Standard?

I am using the Home Assistant edition

1 Like

Really nice work! Testing in parallel with Ngenic now so I can replace it later on.

Thanks! Yeah, I’m sure the cold season will bring up some quirks, but we’ll fix them as they come. Cool that you’re running it side by side with Ngenic — curious to hear how it works out for you!

Is there an attribute for the current temperature compensation?
The diference from real temp.

It is available as an attribute in the sensor.pumpsteer.

Seems like a nice and relevant project. It would be helpful if then documentation is a bit clearer and complete.

For instance:

  1. It doesnt become clear if pompsteer can actually control the heat pump ( i guess not, it generates a sensor)?
  2. It doesnt explain what thermal inertia is and how its calculated
  3. It seems the ML will learn how fast the house heats up and cools down based on heat pump temperature flow?
  4. Do you need to set any heatpump sensors as parameters? Such as target flow temperature and current flow temperature?
  5. There is a pumpsteer efficiency metric. What does it measure? How much electricricity is saved compared to not using pumpsteer?

add a FAQ at the bottom of the description.

Thanks, that clarifies a lot!

In my setup i cant set a virtual outdoor temperature sensor to influence the heat pump. This sensor is hard wired. I can set target temperature, or start temp/end temp (stooklijn), hysterese, etc through the ems bus (bbqkees).

Any other hooks that the integration has to control the heat pump?

Or did you add an esp32 or equivelent to the heatpump to create a serial signal that can set the outdoor temperature by replacing the wired sensor?

Thanks @Johan71, quite an expensive component.

I think pumpsteer would benefit from allowing 1-3 different options of controlling the heat pump. that would increase the userbase more quickly.

I’ve done a quick dev on what a comfort temperature steering solution could look like, in a fork of your repo. i haven’t tested it yet.

1 Like

Hi Maarten,

thanks a lot for taking the time to look into this and for sharing your idea! :pray:

I really appreciate any tips and tricks, since my GitHub knowledge and coding skills are quite limited.

I’m really just an amateur at this, but I’m stubborn and full of ideas – and I’m always happy to get some help along the way.

Your approach with comfort temperature control looks very interesting – I’ll try to follow along and test when I can.

And of course, you are very welcome to test it yourself as well – all input and feedback is much appreciated!

It might be interesting for you to check this out too

https://emhass.readthedocs.io/en/latest/thermal_model.html

@Johan71 how do you actually connect the Ohmigo unit?
Do you connect it in parallel with the original temperature sensor?
That is my understanding of the description on Github but that seems a bit strange to me… Or should I just replace the original temperature sensor with the Ohmigo?

I’ve got the integration installed and the Ohmigo gets the temperature from HA and the Pumpsteer automation so now I need to connect it to my CTC heat pump. :+1:

Replace the orginal sensor with the Ohmigo sensor.

1 Like

Interesting! Does it matter if you have Ohm on Wifi or instead Ohm on USB connected to your Home Assistant-device?

Also would this be useful for steering a district heat exchanger aswell? It is of course something completely different because price of electricity is not a factor. It is more to get a stable indoor temperature.

It doesn’t really matter whether you use Ohm over WiFi or over USB to your Home Assistant device. In both cases you just get the data into HA and then you create the automation yourself that does the actual control, so from that point of view there’s no real difference – just use whatever is easiest and most reliable for your setup.

As for using this to steer a district heat exchanger: in theory it could be useful, because the logic is mainly about when to ask for more or less heat to keep the indoor temperature stable. The electricity price part isn’t strictly required. But I haven’t tested it on district heating myself, so you’d have to try it on your system and see how well it works and what needs tuning.

Ok found and looked at the automation, I understand. Nice work!

I have not purchased the equipment yet but I will look into it as soon as I have it installed.

But maybe you can start having that as a thought when working with PumpSteer that it could be used for district heating as well and turn into a even better Ngenic replacement system :slight_smile:

This looks very promising Johan, great work! Just installed PumpSteer (seems to be working :slight_smile: ) and will let it run for a while before hooking it up to my OhmOnWifi Plus.
I was about to write my own steering logic but found this and it looks to be spot-on what I was aiming for (and more!).