How to limit battery charge voltage and current

Try changing the part of the commands that read “/sys/class/power_supply/bq25890-charger/” to “/sys/class/power_supply/bq25890-charger-0/” (added ‘-0’ to the end, before the last slash). Not sure why it would change, but that’s the path that exists and works on mine. If that doesn’t work, check what does exist in that path:
ls /sys/class/power_supply/

That said, in my experience charging doesn’t seem to produce significant heat (at least for me). I have charged mine at ~1.5 Amps and it was barely warm to the touch, and temperature sensor reported low 30s °C.

You might also try watching the CPU load while it’s charging and make sure some process isn’t working the CPU hard in the background. I think some chargers can trigger a bug that causes it to spam messages in the kernel log, which will make the CPU heat up.

I think I’ll eventually write up another long technical post about power saving techniques I use, but one simple test you can try is to force the CPU to run at a lower speed (I run mine like this nearly all the time) and see if that keeps the temperature under control:
(as root)
echo 1000000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq

(or with sudo)
echo 1000000 | sudo tee /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq

Note: this will reduce performance, but in my experience, it’s not too bad. Should also save a little power when running on battery.

To undo, change 1000000 to 1500000, or just reboot.

3 Likes