I had a lot of trouble trusting the battery monitor on Trixie. Even after calibration, it was frequently inaccurate, and I often had to physically remove and reinsert the batteries just to reset the counters. Even then, the readings were unpredictable.
Since my workload is relatively heavy (mostly SDR usage), the system would sometimes simply power off around 30% battery remaining, likely due to a mix of temperature, current draw, voltage sag under load, and similar factors.
Because of this, I decided to test two different high-drain batteries: one focused on capacity, and another focused on sustained amperage. I ended up having to explicitly declare the battery characteristics inside config.txt so the battery gauge could behave more accurately.
[pi5]
# Molicel M35A 3500mAh (10A)
#dtoverlay=clockworkpi-custom-battery
#dtparam=charge_full_design_uah=7000000
#dtparam=energy_full_design_uwh=25900000
# Molicel P30B 3000mAh (30A)
dtoverlay=clockworkpi-custom-battery
dtparam=charge_full_design_uah=6000000
dtparam=energy_full_design_uwh=22200000
After editing config.txt, you will need to reboot the uConsole.
To verify that the battery was correctly recognized, use:
upower -d
This is a very useful tool to validate battery parameters, power draw, charge/discharge behavior, voltage, estimated runtime, and overall battery health. It also helped me better understand why the shutdown behavior under heavy SDR load was so inconsistent.
In my particular use case, the Molicel P30B 3000mAh ended up being the most reliable and efficient option. With heavy SDR load, it was still able to reach around 2% before shutting down.
ATTENTION: These parameters apply only to these exact battery models. Do not reuse these values for other batteries. Look up the correct specifications for your own cells before changing anything.
Also remember: you are dealing with lithium batteries. Misconfigurations, bad cells, improper charging, physical damage, or incorrect parameters can be dangerous and may result in overheating or fire.
ONLY use these parameters if you are actually using these exact batteries.
Hope this helps someone.
Note: CM5+AIOv2+NVMe Battery Board (Linux clockworkpi 6.12.93-v8-16k+ #4 SMP PREEMPT Thu Jun 11 20:31:33 EDT 2026 aarch64 GNU/Linux)