Had exactly this with my shepherd's hut build last winter. Two readings, two different stories — maddening at first.
Short answer: trust your BMS for protection, trust your BMV-712 for day-to-day monitoring — but only once it's properly calibrated.
The BMV works by coulomb counting, so if it starts from a dodgy reference point it just drifts further and further off. Mine was reading 78% SOC when the BMS was screaming low-voltage cutoff. Turned out I'd never let the bank fully charge to 100% after installation, so the BMV had never had a clean sync point to work from.
What fixed it for me:
- Charged the Fogstar Drift LiFePO4 cells slowly up to absorption, held it there until current tapered right down
- The BMV then synced to 100% and from that point the two readings tracked within 3–4% of each other
- Also made sure the Peukert exponent and charge efficiency factor in the BMV settings matched LiFePO4 (not the default lead-acid values — an easy mistake)
The BMS SOC estimate is often just voltage-based anyway, which on LiFePO4 is nearly useless across that long flat discharge curve. So ironically the BMV, once calibrated, is probably more accurate for actual state of charge.
Worth checking what algorithm your BMS is actually using before putting too much faith in it.
Anyone else found the two diverge again over time? Curious whether periodic full charges keep things aligned or whether there's still drift.