This update (BIOS 3.08) does seem to include new EC code.
Hello. What do you mean? Code that is new in that it is an update of the posted-on-GitHub code that, six days ago, James3 looked at?
I donāt know about that, but it seems to have been updated since BIOS 3.07.
My issue turned out to be a software issue. I had configured:
options cros_charge_control probe_with_fwk_charge_control=Y
In order to try out software charge control a while ago. In the past this didnāt seem to do anything unless I actually configured charge limits, but either something changed or I failed to notice the issue in the past.
So, if your system is still failing to respect charge limits regardless of what you do, check if /sys/module/cros_charge_control/parameters/probe_with_fwk_charge_control is Y.
I donāt know what that is. Is it something in Linux?
Yes. Basically, the Linux kernel was (correctly) taking over battery charge limits.
So 3.08 breaks the EC/kernel āAPIā for this?
It makes it work correctly from what I can tell, but I need to do more testing. If you software control, you NEED to configure the threshold via /sys/class/power_supply/BAT1/charge_control_{start,end}_threshold or the defaults of 0 (disabled?) and 100 apply, overriding the limits set in the BIOS.
NOTE: it could also simply have been due to a coinciding kernel update, I really donāt know why this behavior changed.
@Quin_Chou Apologies if this is repetitive, I might have missed this question about the float in this long-ish thread:
What level of load is put on the battery when itās between the lower and upper limit? For example, if my limit is set to 70 and the battery is at 67.
Does the battery take all the load it can (and so can be expected to discharge down to 65 in just a matter of minutes)? Or can we, absent turbo events and assuming an adequate AC adapter (e.g. the Framework one), expect it to only reach 65, and then start charging back up to 70, after hours or even days on AC (in other words, a more or less normal idle/on-the-shelf discharge rate for Li-Ion)?
I have my charge limit set to 80%. When it reaches 80% it stops charging. After using the machine for light tasks for a couple hours it will generally still be at 80% or maybe 79%.
How it affect this if you change the charge limit using $ sudo ectool fwchargelimit
I am also still on 3.05 and seeing it toggle a handful of times. Itās not constant, but probably every ~10 minutes. I have seen the battery indicator do some funky stuff. Running Arch Linux with kernel 6.13.8
I think thereās a few things at play here that make the whole battery charging/discharging subject pretty tangled
- the battery limit regression from earlier BIOS versions that 3.08 aims to fix
- a regression introduced in upower on Linux that causes power to alternate between plugged / unplugged, discussed here [TRACKING] Battery flipping between charging and discharging / Draws from battery even on AC
- The Framework 13 60W adapter doesnāt seem to provide enough power for peak power draw under heavy load, see the following links. So in a scenario like that I imagine itās ānormalā to see occasional discharging even when plugged in (as both AC & battery provide power for peak draw). āHybrid powerā mode as mentioned by Kieran in LINK4 below. LINK1 LINK2, LINK3, LINK4, LINK5
So I think we need to untangle seperate issues at play here, and probably best to address them in seperate discussions.
Can confirm this regression in upower as independent of alleged BIOS <= 3.08 issues. Got an update to upower 1.90.8 this morning and immediately started having the power connected/disconnected flip-flopping. Iām still on BIOS 3.05.
Edit: Confirmed, downgrading upower to 1.90.6 resolved the power flip-flopping issue.
Edit 2:
For Fedora folk, you can downgrade upower and exclude the offending version through:
dnf downgrade upower
dnf versionlock exclude upower-1.90.8-1.fc41
dnf versionlock exclude upower-libs-1.90.8-1.fc41
This applies to F41, as evident by the version name, but you get the idea. You can list all available versions through dnf list --showduplicates upower
In the linked post, quinchou77 says the charge limit in 3.08 will work properly if we simply disable the battery extender. Iād like to verify.
Is there anybody who is
(1) using 3.08 and
(2) has the battery extender disabled and the charge limit set to <100% and
(3) is still seeing the battery charge to 100%?
What OS are you using? Itās an issue with upower. The fix has been merged, and weāre just waiting for release and then merge into distroās.
That was an older message, while my Fedora install didnāt yet have the upower package updated to the one that was having the issue ![]()
Not sure whatās changed, but now Iām getting the plugged in/out notifications. This is extremely annoying as the charge state keep changing b/w 79% and 80%. I got charge limit set to 80% in BIOS and battery extender disabled.
Are there any resolutions or workarounds yet?
Are you running Linux? I think itās an issue with a Linux update. A lot of folks have reported this behavior cropping up for them even running 3.05 BIOS.
Sounds like there is a fix in the works.
Yes, Iām running Fedora 41. Also, running upower-1.90.8-1.fc41.x86_64 which seems to be the culprit like you noted. Thank you!
