Battery Life?

@Michael_Wu How did you get your windows idle so low? I idle around -6W. Also what do you use to check the discharge rate? It might be affecting my idle time.

Which expansion cards do you have @FellowComrade? Iā€™ve noticed that pulling out my HDMI expansion card lowers the wattage used by quite a bit (at least on Linux), so Iā€™m going to buy another USB-C expansion card at some point so I can lower my overall power usage most of the time (since I donā€™t usually need an HDMI port). The USB-A cards have a slight effect on power as well, but not as much as the HDMI card.

On Debian sid right now, if I pull out everything except for the USB-C passthrough card and close all of my applications, Iā€™m getting a discharge rate of ~4W according to powertop, which is way less then Iā€™ve ever seen on this laptop. Oh, and thatā€™s with the display on, so presumably the power draw would go down even more if I turn off the backlight (but Iā€™m too lazy to figure that out lol).

This is exactly whatā€™s so cool about the Framework!

@Chiraag_Nataraj I have the microsd, but I donā€™t have it plugged in because of what people have been saying about it drawing power. I have two USB As and a USB C plugged in.

@FellowComrade Hmm, okay. Yeah, USB-A and USB-C tend to be okay in terms of power draw. I havenā€™t really used Windows in forever, so Iā€™m not sure what I can suggest ā€” hopefully other people can help :slight_smile:

@FellowComrade on Windows I use BatteryBar since itā€™s viewable in the notification tray and BatteryInfoView from NirSoft for more data.

I found that nothing special really needed to be done get down to sub 4W idle. Hereā€™s a checklist off the top of my head:

  • ensuring there arenā€™t any rogue tasks/programs consuming CPU processes (check with Task Manager)
  • on Battery Saver or Balanced profile
  • setting a low screen brightness since thatā€™s a major consumer
  • turn keyboard lights off
  • up to date/no conflicting drivers?
  • checking USB devices and not using expansion cards that draw excess power

To dip into the lowest idle rates, your CPU should be hitting C9/C10 states which requires enabling Panel Self Refresh (PSR). Make sure this is on ā€“ essentially if nothing changes on your display, updates to your screen wonā€™t need to be sent resulting in lower idle rates.

1 Like

I always have:

  • 250gb for OS
  • USB-A for lapdesk
  • USB-C for android dev
  • USB-C for power

I have HDMI, DP, microSD available to swap out - but havenā€™t used them.

that is why removable battery is a good thing because we can swap the battery on the go if we run out of juice and we donā€™t need to worry about battery life anymore. I hope there is an option for that.

1 Like

This problem is alleviated by the numerous USB-C power banks

Swappable batteries are a cleaner aesthetic Iā€™ll grant you but unnecessary these days-Framework has stated they have no plans to create swappable batteries

I heard Framework plans to create laptop with discrete GPU support and it require higher wattage and no USB C cables and chargers in the market that support more than 200 watt and also I am sure people donā€™t like messy wire tangling around. Besides, it is really time consuming and annoying that for current Framework laptop if we want to replace battery, screwdriver is a necessary tool and the process is quite long. So, if they want to create laptop with higher specs like that. This removable battery is important feature.

I know removable battery concept is a rare feature in 2021. But, it is not extinct. XMG/Gigabyte answered that with A5 X1 laptop and Creator of Linux popOS have that laptop with that feature as well.

There has been plenty of desire for a model with a dGPU but no confirmed news one way or another has been announced

USB-C is supposed to reach 240W of power shortly, Iā€™m certain new cables and chargers to deliver that kind of power will make their way to the market, even if they arenā€™t commonplace yet

That is the exact same laptop, XMG and System76 use Clevo designs, and those designs use a DC jack to deliver power, not USB-C

I canā€™t find the quote, but Framework has stated there is no intent to support swappable batteries

2 Likes

@nrp any updates on this yet? Curious to hear about the outcomes

2 Likes

Crazy question. Just installed BIOS 3.07, havenā€™t changed any settings, but my battery life seems better. Am I imagining it? Or is there something in the new BIOS thatā€™s helping?

1 Like

@Peter_Conrad No I think you are right, I am also getting better battery life

2 Likes

I am getting occasional random reboots, but I wonder if itā€™s a hot corner or a keyboard shortcut Iā€™m hitting accidentally (Ubuntu 21.10). Never happens when Iā€™m on my desk, connected to external monitors and USB keyboard/mouse. Only when Iā€™m working directly on the Framework keyboard, itā€™ll go to sleep while Iā€™m working and then when I wake it up itā€™s clearly rebooting.

But yeah, the battery life seems better. And overall what a great lappy!

I just found this post and wanted to investigate the idea of manually turning down RAPL limits from userland to extend battery life a bit more. I am able to read the values you listed in your post, but writing to them, even as root, does not actually change the values when I cat them again a moment later.

kernel modules appear to be loaded and functional otherwise

# lsmod | grep -i rapl
intel_rapl_msr         20480  0
processor_thermal_rapl    20480  1 processor_thermal_device
intel_rapl_common      32768  2 intel_rapl_msr,processor_thermal_rapl

Using EndeavourOS (arch), 5.16.2 kernel and otherwise up to date.

@DHowett or @Kieran_Levin , any ideas?

I think the EC retains full control over the power limits:

  • Power limits are set by update_soc_power_limit
  • It mentions manual_ctl, howeverā€¦
  • manual_ctl is only toggled by cmd_cpupower, andā€¦
  • cmd_cpupower is a CONSOLE_COMMAND, which is only available via serial/the cros_ec console device (which is not exposed to the AP, I believe)

I believe update_soc_power_limit is called on every battery charge tick or AC state change. Perhaps if the machine is fully charged, it wonā€™t override those values? Hmm.

EDIT: That having been saidā€¦ the code doesnā€™t update PL2/4 unless it thinks it has to (it is unaware of the value set by the kernel), and it only updates PL1 when it updates PL2/4. I just set a different value for PL1 and it stuck across a few charge state transitions.

1 Like

Using direct write to sysfs, or via ectool?

1 Like

A direct write to sysfs! Iā€™m on 5.15.[something] (Debian kernel versioning plus self-building their kernel packages has made this harder than it should be. :P)

All of a sudden it started working for me as well. Computersā€¦ where the definition of insanity does not apply.

Looks like the lowest value that /sys/class/powercap/intel-rapl:0/constraint_0_power_limit_uw will accept without going down to 0 is 125000. Noticeable but tiny input lag at that low of a PL, but it does result in a functional system. Honestly its not much worse than my 6Y30 processor tablet pc had when it was allowed to go full speed lol. Looks like 11-12 hours of battery endurance available even with wifi on, browser open, but min brightness.

Using this and the rest of my super long endurance tweaks I detailed in my other thread, I set a new current_now record low as well, 102000!

Does not look like PL1 is hard clamped at that low of a value, though. Playing a video in mpv seems to be using more power than that according to powertop and current_now. But still a low enough draw for 9+/- hours video playback from a samba source. Not too bad.

2 Likes

The SOC should take the minimum of the SYSFS interface and the EC.
The EC hardware interface is to make sure that the SOC power is not exceeding the charger/battery limit which would cause unexpected power off. So I would not suggest changing the EC PECI limits.

2 Likes