Supported BMS
JBD / Xiaoxiang
The most common protocol in LiFePO4 house batteries with Bluetooth. Many brands sell the same electronics under their own name — to find out whether yours is one of them, look in the Bluetooth list for a name starting with "xiaoxiang".
- Type
- Active — the app polls it
- Verification
- Verified against the simulator, not against real hardware
- Sold as
- JBD · Jiabaida · Xiaoxiang · Liontron · Eco-Worthy · Epoch
- Bluetooth service
- fff0 · Notify ff01 · Write ff02 · alternatively fff1 / fff2
What the app reads from it
- Pack voltage, current, remaining and rated capacity, state of charge
- Cycles, temperature sensors, firmware and build date
- Every cell voltage individually
- MOSFET state for charging and discharging
- Protection flags from the BMS in plain words
- Which cells the balancer is currently working on
An active protocol: the app alternates between two requests — the basic state and the cell voltages.
The implementation runs in the vehicle but so far is only verified against the simulator. If a number does not look plausible to you, get in touch — a capture helps more than any description.
My battery does not show up
- Is another app still connected?
- A BMS usually allows only one Bluetooth connection at a time. Close the manufacturer app completely, not just its window.
- Have the permissions been granted?
- From Android 12 the scan needs "Nearby devices". On Android 11 and earlier the system demands the location permission instead — that is a quirk of Android; MultiVolt evaluates no location.
- Is the battery in range and awake?
- Some modules power down the radio when no current has flowed for a while. Switching on a load for a moment wakes them up.
- Was a model pinned during pairing?
- If a specific protocol is set in a battery’s settings, the app tries only that one. Set it back to "automatic" and it will work through all three again.