Battery voltage jumps

The submitted patches have the problem that they change the way that the sysctl communicates with the kernel driver. This means that this not only affects Pocket Reform but also classic Reform. It further means that if this would get merged, then all users of all MNT hardware would be required to upgrade their sysctl (pocket reform) or lpc (classic reform) firmware to the new version or otherwise the lpc driver looses the ability to communicate with the system controller which in turn means not only no battery information but also no power off or reboot. For the lpc (classic reform) an update to the firmware supporting this doesn’t even exist yet. And even if it would exist, updating the lpc firmware of classic reform is a bit more involved than updating the sysctl firmware of the pocket reform because you require a second computer with the right software installed and have to open up your device. Thus, we would like to find a solution which does not force every MNT user (pocket or no) to upgrade their firmware or otherwise they cannot really continue using their devices. This topic also got mentioned in IRC last week: 2025-05-14.log

2 Likes

Thanks but I am going to play it safe and wait for the final patch.

1 Like

I’m looking a bit more deeply into the root causes of this now.

5 Likes

Meanwhile.. I ran apt updat/upgrade to day and on linux 6.14.6-1~exp1+reform20250528T152822Z the dmesg voltage jump messages seem to have gone away but the rest of the problems remain: battery status jumps to 0% and back to whatever it was and system spontaneous hanging / rebooting when not connected to pd usb.

minute is working on fixing this problem for good here:

4 Likes

Updated (keyboard and system firmware, and apt full-upgrade) a couple of days ago and have not experienced any power drops or reboots on battery power (though I mostly run connected).

Thank you! :heart:

Unfortunately the problem still exists. :cry: The machine just rebooted spontaneously running on battery power.

Running connected to power, I got the following different in the kernel messages (from dmesg):

[ 2235.394683] power_supply BAT0: driver failed to report `voltage_now' property: -16
[ 2235.446680] power_supply BAT0: driver failed to report `voltage_now' property: -16
[ 2263.082335] power_supply_format_property: 1 callbacks suppressed
[ 2263.082342] power_supply BAT0: driver failed to report `voltage_now' property: -16
[ 2263.126335] power_supply BAT0: driver failed to report `voltage_now' property: -16
[ 2263.174345] power_supply BAT0: driver failed to report `voltage_now' property: -16
[ 2263.218488] power_supply BAT0: driver failed to report `voltage_now' property: -16
[ 2263.254338] power_supply BAT0: driver failed to report `voltage_now' property: -16
[ 2263.294619] power_supply BAT0: driver failed to report `voltage_now' property: -16

Connected to power, I’ve not experienced a spontaneous reboot.

Not sure if this is related but the problem occurs now when running some large compile job (load avg 8).

I am at:

  • linux: 6.15.4-mnt-reform-arm64
  • sysfw: PREF1SYSR120250623
  • hid: PREF1HID20250623

edit for reference: it seems this issue is related: pocket reform/rk3588: brownout at 2x3.6V (#33) Ā· Issues Ā· Bugs / Bugs Ā· GitLab

I am having similar issues. Any solutions to this?

I did not try the balancing as mentioned on the other thread but I’m carying around a powerbank, when on the go, to stay plugged in which seems to avoid this problem.

1 Like

I charged the batteries outside of the Pocket Reform, as suggested on the other thread, but it seems like that didn’t solve my problem.

Oh, that’s a shame and thanks for reporting that. I just ordered the battery upgrade as described in Getting more than 10 hours of battery runtime from the RK3588 Pocket Reform to see if that helps.

1 Like

I’ve recently updated my kernel with an lpc driver and sysctl firmware, and noticed that this issue has not solved yet.

My previous kernel and firmware were patched ones(Battery voltage jumps - #20 by mojyack) and worked very well.

I’m now using linux-6.16.8, reform2_lpc-HEAD, sysctl-fw-HEAD. This time I dropped the above patches because I thought the recent minute’s spi rework should supersede them.

But this combination of the reform2_lpc and the fw seems unstable (at least for my setup).
For example, cat /sys/class/power_supply/BAT0/charge_{now,full} sometimes shows 0.

I’ve also tested that behavior with this tool and confirmed broken spi responses.

If I force MNTRE_LPC_API_2 in the lpc driver or emulate it in the above tool using options -d0 2 -d1 3 -d2 0, the error rate gets worse.

Since I don’t use the official debian image, I don’t know if everyone is experiencing the same behavior. But I hope this annoying issue will be fixed as soon as possible…

2 Likes

Thanks for reporting, I’ll try to reproduce.

1 Like

I have been seeing this lately as well. I feel it happens when battery is low(<50%, maybe close to 30%) and the computer does something heavy (go into gnome overview or start firefox).

I did not get this with exwm, only after switching to gnome. Also, I have changed power profile to balanced from powersave (does this have any effect?).

My charging board broke today, so I can’t help troubleshoot:-/

1 Like

Sorry, I forgot if you use Reform Classic, because on that platform, with LPC, the issue also popped up for another user, and I managed to reproduce it myself on my RK3588 Reform Classic. Or are you on Pocket Reform, can you remind me? (this question is for @mojyack)

Many thanks for the diagnostic tool BTW!

Bug ticket:

@minute I’m on Pocket Reform RCore 32GB. So that should be a different problem.

Many thanks for the diagnostic tool BTW!

Happy to hear that!

I am having issues probably somewhat related to this topic, but I’m a bit lost. I tried to document it here: Continuing battery and voltage issues

I appreciate any help!