Open-source smart heating

A warmer home.
A smarter bill.

Strom brings electricity prices and weather forecasts together to plan your heating. Your radiator, a smart plug, and better timing.

Strom’s Little Radiator

A little radiator. A smarter plan.

A simple idea

Same warmth.
Better timing.

Electricity prices change by the hour. Strom finds a low-cost heating plan that keeps the predicted temperature within your comfort band.

Chart of hourly electricity prices for tomorrow. The curve is low overnight and around midday and peaks in the evening. Amber bars mark the cheap hours when Strom switches the heater on: early morning, midday and late night. 30 20 10 00 04 08 12 16 20 24 HOUR OF DAY evening peak
Day-ahead prices, published once a day · ct/kWh heater on price

Illustrative schedule · not live prices

How a run works

A thoughtful routine, every run

Strom offers a Linux desktop app for running one heating cycle, plus a Python command you can schedule hourly with cron. Each run does the same thing:

  1. 01

    Validate

    Credentials, API keys and house parameters are checked first. A mistake stops the run with a message that names the fix.

  2. 02

    Fetch

    Hourly electricity prices from ENTSO-E and the weather forecast from OpenWeatherMap. Missing data stops the run — nothing is invented.

  3. 03

    Optimize

    An optimizer finds a low-cost heating schedule for the next 24 hours while keeping the model’s predicted temperature within your comfort band (18–24 °C by default).

  4. 04

    Actuate

    The plug runs this hour as a duty cycle — 40% heating means ON for 24 minutes. A watchdog cuts the power if the plug ever stays on too long.

The Barcelona case study

What it saves

17% lower heating cost over two years than a constant thermostat — 66 € in our Barcelona case study, with the same comfort band.

Heating is flexible: when you heat matters as much as how much. The savings depend on your price zone, insulation and weather — see how we measured it.

Comparison of cumulative heating cost between the price-aware optimal policy and a constant thermostat from March 2023 to March 2025
Optimal vs. thermostat policy, Barcelona, March 2023 – March 2025
Before you start

What you need

  • requires

    A smart plug

    A compatible TP-Link plug on your network, controlled through python-kasa. You provide its IP address and account details. Support depends on your plug model and firmware.

  • requires

    Two free API keys

    One for OpenWeatherMap, one for ENTSO-E. Both have free tiers.

Set it up tonight

Clone, configure, add one cron line. The guide walks through every step.