Earth Notes: Heat Battery Top-up Dataset

Updated 2023-04-19.
Top-up limit from grid (and diversion of PV) to heat-battery. #heatBattery #microgen #dataset
Live and batched logs from the heat-battery top-up subsystem on the primary Raspberry Pi.

A script on the main Raspberry Pi runs every 10 minutes to compute target maximum heat-battery top-up level from the grid. This depends on a a number of factors such as time of day, grid carbon intensity, and sunshine forecast.

The heat-battery system is a Sunamp Thermino powered via a myenergi eddi.



recent heat-battery top-up target and related data


16WW heat battery top-up limit from grid
16WW heat battery top-up limit from grid and myenergi eddi solar diverter state.
heat, heat-battery, Sunamp, Thermino, top-up, storage, grid, carbon, intensity, myenergi, eddi, London, UK
variable measured
% topup limit
date created
date published
date modified
temporal coverage
spatial coverage
UK centre 51.406696N,-0.288789E elevation 16m
directory of recent 10-minute heat-battery top-up-limit log data files named YYYYMMDD.log
directory of batched monthly 10-minute heat-battery top-up-limit log data files named YYYYMM.log.gz
canonical URL
this descriptive text with markup
is part of
16WW Dataset
this dataset is licensed under CC0, ie it is effectively public domain; if you make use of this data, attribution is welcome but not obligatory
is accessible for free

2022-01-17: Sample Deep Overnight Fill

20230118 heatBatTarget

After being deeply discharged (to almost ~12°C mains inlet temperature) during the 17th, eg by baths etc, and not topped-up up because of high grid carbon intensity for a couple of days... (And no diversion!)

Overnight from a fraction before midnight until ~6am over 9.4kWh was absorbed by the Thermino at ~120gCO2e/kWh grid intensity. That is 'full' in terms of the indicator lights on the Thermino, but not to the point where the heater relay turns off.

There was a small space of ~20 minutes at the end of topping up where it would still have been permitted, but was not needed.

(There were 16 minutes in which frequency response cut in, and top-up stopped, including a little cluster around the turn of 5am.)

2023-04-12: Algorithm Outline

sample heat-battery top-up target and related data

This is an outline of the part of the heat-battery control algorithm that sets the maximum top-up level from mains, as of just over 1 year's system operation. Most elements seem to be working reasonably well at this point, after tuning through all seasons.

Basic Principles

  • Only ever top-up from grid if current grid intensity (ie gCO2/kWh DHW) is significantly lower than burning gas locally. The threshold is manually set and is currently 151gCO2/kWh.
  • Allow more (higher) top-up when grid-intensity is lower, and preferably towards bottom of recent lower intensity range.
  • Avoid any top-up at all in known common grid peak-demand times.
  • Reduce top-up when grid is in top-quartile ('red') real-time demand.
  • Encourage top-up when the grid is in bottom-quartile ('green') real-time demand and no grid-visible storage is being drawn from ('super-green').
  • Reduce top-up when tomorrow is forecast to be sunny.
  • Always try to leave some space for diversion, ie diversion is allowed to fill higher than grid top-up.
  • Do not top-up from mains when the heat battery can likely be kept full (filling up completely most days) from PV diversion. Limit the maximum grid top-up level more as more recent (~1 week) days have completely filled the heat battery by diversion, implying sunniest part of the year (and over a weekly usage cycle).

Other Points

  • On the Eddi the system is set to allow ~400W to spill before diverting, explicitly pushing diversion merit below at least some grid spill.
  • When grid frequency is low then diversion / top-up to heat battery stop, explicitly pushing heat merit below grid frequency support.