Solar + Battery

Designed on paper, built with my own hands, verified with data.

A 2.32 kW dual-string array feeding a hand-built 8 kWh LiFePO4 bank and two inverters. It runs my home office, my lab, and the majority of the large kitchen appliances when conditions allow — and every watt of it is instrumented in Home Assistant.

2.32 kW
Array capacity across two strings
8 kWh
LiFePO4 storage, 8S at 24 V nominal
2
Inverters — 4 kW house, 3.5 kW office & shed
10.33 kWh
Generated on 10 July 2026 (forecast: 10.8)
Schematic

System wiring

Solar paths in green, power delivery in amber, monitoring in purple. Animated flows show the direction energy actually moves.

PV String A 4 × 350 W 1.4 kW · original build PV String B 2 × 460 W 0.92 kW · 2026 extension MPPT · String A Victron 100/50 MPPT · String B Victron 100/50 Battery bank 8 kWh LiFePO4 Hand-built 8S · JK BMS Thermostatic warmer Per-cell monitoring 4 kW inverter House circuits 3.5 kW inverter Office + shed DC loads ~280 W average Grid Octopus Agile tariff 40 A charger TightWatt-controlled Victron VenusOS Raspberry Pi · telemetry Home Assistant MQTT · control plane Dotted purple: telemetry & control · HA schedules the charger from Agile pricing

Schematic drawn from live telemetry and confirmed against installation photos: twin Victron BlueSolar MPPT 100/50 (one per string), a 4 kW inverter for the house and a 3.5 kW for the office and shed, red battery selector and shunt. Fusing and busbar detail is simplified here for clarity.

Battery cabinet

How the cabinet is wired

The DC side in detail — the part the schematic above simplifies. Positive in red, negative in grey, PV in green, AC out in amber.

+ DC – DC PV in AC out PV A PV B House Office + Shed MPPT · STRING AVictron 100/50 MPPT · STRING BVictron 100/50 DC → AC4 kW inverter DC → AC3.5 kW inverter Fuse SELECTOR OFF/1/2/1+2 Pre-charge (3-way + resistor) Battery shunt SmartShunt → VenusOS BATTERY BANK 8 kWh LiFePO4 Hand-built · 8S cells JK BMS · 200 A Active balancing Per-cell monitoring +

Two inverters run off the bank: a 4 kW for the house and a 3.5 kW for the office and shed. A 3-way switch engages the pre-charge resistor before the main battery selector closes, soft-starting the inverters. The bank itself is hand-built from LiFePO4 prismatic cells with a JK active-balancing BMS; the SmartShunt on the negative bus feeds current and state-of-charge to Victron VenusOS, and on into Home Assistant.

Specification

System at a glance

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 per string, each monitored independently
StorageHand-built 8 kWh LiFePO4 bank — 8S of prismatic cells at 24 V nominal, assembled and balanced myself, protected by a JK active-balancing BMS (JK-B2A8S20P, 200 A), per-cell voltage monitored (typical spread 0.010 V)
Inversion4 kW pure-sine inverter for the house, plus a 3.5 kW pure-sine inverter for the office and shed
Grid assist40 A mains charger, scheduled by TightWatt against Octopus Agile half-hourly pricing
MonitoringVictron VenusOS on Raspberry Pi, streamed to 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
Build history

Designed to be extended

  • Original build

    Four panels, one battery shed

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

  • Expansion

    Four panels → six (+2 × 460 W)

    Added a second, separately-monitored string of two higher-density panels — taking the roof array from four panels to six and lifting capacity 66% to 2.32 kW, without disturbing the original string.

  • Ongoing

    Software squeezes the hardware

    TightWatt and the Agile automations mean the same hardware now buys grid energy only in the cheapest half-hours — and gets paid to consume when prices go negative.

Real numbers

A day in the data — 10 July 2026

Straight from the Home Assistant solar dashboard, not a brochure.

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)