Had exactly this with my 100/30 last summer. Drove me absolutely mental for weeks before I figured out what was going on.
In my case it was the battery voltage sense. The MPPT was reading voltage at the controller terminals rather than at the battery itself, and because I had a bit of voltage drop across the cable run, it thought the batteries were fuller than they were. Jumped to float way earlier than it should've.
Few things worth checking:
- Cable losses — even a small drop can confuse the absorption/float threshold logic
- Tail current settings in VictronConnect — if your tail current is set too high, it'll exit absorption early thinking the battery is full when it isn't
- Battery temperature — if you're running a temp sensor, a warmer battery will trigger earlier float
- BMS interference — if you've got a lithium setup with a Fogstar or similar, check whether the BMS is sending signals that are confusing the MPPT
The tail current one caught me out specifically. Default settings aren't always right for your battery capacity. I've got a 200Ah LiFePO4 bank and had to drop the tail current threshold right down before it started behaving properly.
Worth connecting via Bluetooth and watching the charge state in real time over a full day — the history graphs in VictronConnect are genuinely useful for spotting where it's jumping states.
What battery type are you running and what are your current absorption voltage and tail current settings? That'll help narrow it down. Others on here have probably seen the same — there seem to be a few firmware versions that made this worse too.