Energy experiment

I put a small power station in the garden, then gave it too many graphs.

This is my home-built energy system: two independently tracked solar strings, a protected 24 V DC bus, an 8S LiFePO4 bank, 4 kW and 3.5 kW inverter branches, and a 40 A grid-assist charger. The BMS reaches VenusOS through dbus-serialbattery before MQTT and Home Assistant expose the flows; TightWatt 4.0 beta and independent protection layers decide when intervention is useful.

2.32 kW
Array capacity across two strings
8 kWh
LiFePO4 storage, 8S at 24 V nominal
2
Inverters — 4000 W primary + 3500 W secondary
10.33 kWh
Generated on 10 July 2026 (forecast: 10.8)
Follow the wires

How it all joins up

Green is sunlight, amber is useful power, purple is telemetry, and teal is the decision layer that tells the charger when to act.

TwoWaters solar, battery and control wiring Two photovoltaic strings feed separate Victron BlueSolar MPPT controllers and a protected 24 volt battery bus. The bus feeds 4000 watt and 3500 watt inverters plus DC loads. A serial BMS driver supplies battery data to VenusOS, which publishes telemetry to Home Assistant. Grid charging, TightWatt 4.0 beta and safety automations are shown below. PV STRING A4 × 350 W1.40 kW · original array PV STRING B2 × 460 W0.92 kW · extension CHARGE CONTROLLER AVictron BlueSolarMPPT 100/50 CHARGE CONTROLLER BVictron BlueSolarMPPT 100/50 DC PROTECTION + DISTRIBUTIONMain isolator & busbarsstring feeds · protected DC branches BATTERY BANK8 kWh LiFePO48S · 24 V nominal · BMS cell monitoring · warmer 10–12 ℃BMS remains final hardware backstop PRIMARY AC4000 W inverterprimary house circuits SECONDARY AC3500 W invertershed + office circuits DIRECT DCDC load branchinstrumented separately MAINSGrid supplyOctopus Agile GRID ASSIST40 A chargersmart-switch controlled BMS SERIAL BRIDGEdbus-serialbattery → VenusOS TELEMETRYVenusOS / VRMMQTT · 30 s keep-alive CONTROL PLANEHome Assistantwatchdogs · safety tiers CHARGE LOGICTightWatt 4.0 betacutover + high-load forecast Agile rate eventstoday + tomorrow CONTROL + PROTECTIONcell / SoC / cold / session gates · BMS + independent failsafes green: solaryellow: powerpurple: telemetryteal: control decisions

The diagram represents the installed two-controller solar system, its 4000 W and 3500 W inverter branches, main isolation and 8S battery bank. Purple telemetry follows the real BMS → dbus-serialbattery → VenusOS → MQTT route; individual fuses and cable runs are simplified for clarity.

The kit

What’s in the shed

ArraySix panels, two strings: 4 × 350 W (1.4 kW) + 2 × 460 W (0.92 kW) — 2.32 kW total
Charge controlTwo Victron BlueSolar MPPT 100/50 controllers, one independently tracking each PV string
Storage8 kWh LiFePO4, 8S configuration at 24 V nominal, BMS-protected, per-cell voltage monitored (typical cell spread 0.010 V)
Inversion4000 W primary inverter plus a 3500 W secondary inverter serving the remaining AC circuits
Grid assist40 A mains charger, scheduled by TightWatt 4.0 beta using cutover-aligned demand, ranked Agile slots, live solar vetoes and cooldown-aware safety gates
MonitoringThe BMS publishes SoC, voltage and cell data into VenusOS through dbus-serialbattery; VenusOS then streams the system into Home Assistant over MQTT with self-healing watchdogs
Cold weatherThermostatic battery warmer (on below 10 ℃, off above 12 ℃) protects LiFePO4 charge safety
Loads servedHome office, lab/workshop, and the majority of large kitchen appliances when generation and storage allow
How it grew

Built to keep evolving

Solar system milestones

  • Original build

    Four panels, one battery shed

    4 × 350 W string, LiFePO4 bank, inverter and monitoring — designed, mounted, wired and commissioned myself.

  • Expansion

    +2 × 460 W second string

    Added a second, separately-monitored string of higher-density panels, lifting capacity 66% to 2.32 kW without disturbing the original array.

  • Ongoing

    Software squeezes the hardware

    TightWatt 4.0 beta now estimates demand to the next cutover, reserves for likely high loads, and buys only the required qualifying half-hours — while a configurable SoC ceiling stops negative-price charging from filling the bank without limit.

Live from the battery shed

The system right now

A deliberately small public snapshot, pushed out from Home Assistant rather than exposing Home Assistant itself. Values refresh every two minutes at source and once a minute in this page.

Checking the telemetry feed
Solar now WCombined MPPT output
Battery %State of charge
Battery flow WWaiting for a reading
Battery shedAmbient temperature
Grid charger40 A charger command

The public feed contains no presence, camera, door, network or device-identifying data.

A good day

One day in the data — 10 July 2026

Straight from the dashboard: the kind of day that makes all the wiring, tinkering and charts feel worthwhile.

10.33 kWh
Solar generated (forecast 10.8 — within 5%)
93 %
Battery state of charge by evening
17 h+
Estimated battery runtime at current load
£1.98
Total grid import cost the previous day (6.74 kWh)