Docs
What's new Open app Support

Battery monitors

In short

If your battery has a BMS Svitgrid can read, you get every individual cell's voltage instead of one number for the whole pack.

Your inverter reports a single state of charge. A battery management system inside the pack knows far more: each cell's voltage, temperatures, how balanced they are, how many cycles the pack has done.

Supported monitors

MonitorNotes
JK BMSTwo protocol variants, up to 24 or 32 cells
JBD / XiaoxiangAdvertises as xiaoxiang
ANT BMS2021 protocol

JK monitors need you to pick

The two JK variants look identical over Bluetooth and cannot be told apart automatically. Pick one; if the readings look wrong, switch to the other.

How it is read

CollectorHowWhen
Svitgrid GatewayThe Gateway's own BluetoothEvery 5 minutes, always
Your phoneThe phone's BluetoothEvery 5 minutes, while the battery screen is open
Home AssistantNot supported

It shares nicely

The Gateway connects, reads, and disconnects each cycle, so your manufacturer's own app can still connect between reads.

Adding one

Battery → Monitors → Scan. Svitgrid lists the battery monitors it can see, with signal strength. Choose yours and adopt it.

Adopt only your own battery

Bluetooth reaches through walls, so a neighbour's battery can appear in the list. Svitgrid marks a weak signal as "may not be yours". Adoption is deliberate for exactly this reason.

You can have up to 8 packs. Give each a name that says where it physically is.

What you get

Per-cell voltages, the spread between best and worst cell, temperatures, charge and discharge switch states, balancer activity, state of health, lifetime throughput and cycle count — plus a plain-language verdict at the top of the screen.

Pausing and diagnostics

Each monitor can be paused if you need the vendor app to have exclusive access. There is also a raw-frame toggle for support to diagnose an unrecognised monitor.

Known issue — a pack counted twice

If you have both a Gateway and an iPhone reading the same physical battery, it can be stored twice under two identities, doubling your reported capacity. Both rows look internally consistent, so it is easy to miss. If your pack count looks too high, pause reading on one of the two collectors. Android is not affected.