Been wrestling with something similar on my shepherd's hut build and thought I'd throw it out here for the collective brain.
Running a modest 20kWh Fogstar Drift LiFePO4 bank with a Victron Cerbo GX as the hub, and after a few hours of normal operation the BMS communication just... drops. The Cerbo loses sight of the batteries entirely, and I'm seeing VE.CAN error-passive (TEC 128) flagged in the logs.
From what I can piece together, it looks like the CAN bus is essentially throwing its hands up — error count climbs past a threshold, the node goes error-passive, and suddenly the Cerbo thinks it's flying blind. Charge/discharge decisions then fall back to defaults rather than proper BMS-governed limits, which on a lithium bank is... not ideal.
A few things I've tried:
- Swapping termination resistors at both ends of the CAN run
- Reducing cable length between the BMS and Cerbo
- Lowering the CAN bus speed
Marginal improvement, but the fault still creeps back in after a few hours.
My suspicion is it's either noise on the CAN line from the inverter switching, or possibly a grounding issue between components. The hut is on a metal chassis which I'm wondering might be introducing a ground loop.
Has anyone else seen this on a Victron + third-party BMS setup, particularly where you're aggregating data from multiple battery units? I've seen mentions of people using Node-RED to repack battery telemetry into Pylontech-style frames over CAN — curious whether that approach introduces its own timing quirks that could cause this.
Would love to know what finally solved it for others.