Battery life (Framework 16)

Just something to note when considering comparisons to other machines: AMD’s Zen 4 processors have huge efficiency gains compared to past generations, so it may not be an apples-to-apples comparison. (All CPUs available in the FW16 are Zen 4 based, though not all 7000-series chips are.)

1 Like

Their next expansion module should be an extra battery pack. I would definitely trade the weight of a charger for the weight of an extra (integrated) battery. It could really extend the battery life by a good amount.

4 Likes

interesting, what exactly do you mean by “software optimizations”?

Setting the processor to the lowest boost states, killing background processes, enabling the display’s power saving features, enabling Wi-Fi and PCIe power saving features, etc.

Yup. What Kelly_Wu said.

In my case I run linux and I make use of tools like powertop and auto-cpufreq

Phoronix cites 2w as the minimum draw for this cpu. Assuming all other laptop components draw a similar amoint of power as my thinkpad (efficient) and razer blade (not effecient) I estimate the maximum possible battery life under the lightest load to be about 14-21hrs (see chart above) on a power optimized load like my linux config. Many reviewers are citing 6-8hrs as the standard battery life. This is consistent with my experience in my workload vs others.

1 Like

This is likely cpu draw or package power, but not total system power consumption.
Currently I see a cpu draw of 1.5-4w, package power sits in the range of 2-10w depending on the instantaneous load however total system power consumption is closer to 4-6w in low idle → average usage (browsing).


Got my Batch 6 FW16 a few days ago. My config is 7840HS + 7700S. I’ve been experimenting a bit with power consumption, but I can’t get the idle power usage to go below 9-10W, even though CPU reports package power of 0.5-1W. Anyone got any tips to reducing it further, or is it expected when the dGPU is connected?

UPD: I’ve removed the Graphics Module, and the power consumption went down by around 1.5W, to 8.5W at idle, which still seems a bit too high for me.

Did you get down to 4 watts idle on a FW16 or FW13? What settings/distro are you using to get that low? I’m on Ubuntu 24.04, kernel 6.8 with PPD + Powertop and I can only get down to 6 watts idle on my FW16 with no dGPU.

This is a FW13, F40 Beta (Gnome, Wayland).
I do not use any special kernel arguments anymore. I set PPD to “Battery Saver” in the ui.
I disabled automatic updates in the app store, I dont really use PackageKit and just update with dnf.

7840u, rz616, 980 Pro

8.5W at idle is high. Are you running power-profiles-daemon or powertop --auto-tune?

I was able to hit 4.5W on my FW16 doing what I mentioned above, but on Gentoo instead of Arch Linux. I’m not sure where the difference is, I’m still tracking that down. Hopefully it’s not all savings from compiler optimization. On Arch the lowest I get is around 5.5W.

Relevant thread:

1 Like

Yep. Sometimes I can get 8.5W with dGPU installed and brightness set to lowest, but it’s inconsistent.

Additional thing is that on Arch Linux, currently, I have to replace 7700S’ driver with vfio-pci, otherwise its’ powerstate is always D0, which causes idle power consumption to hover around 15-17W instead.
This doesn’t happen on Fedora, where the GPU does into D3cold when not in use, and I have currently no idea why it doesn’t on Arch (this happens on both regular, Zen, and LTS kernels). Also on Fedora my idle power consumption is around 10W instead.

Hm, I need to learn how to test for this stuff. I’m also running arch and haven’t yet tried power tuning. Is there a good article on how to get started with this properly?

Quick PSA for those on linux running powertop, setting the tunables on Fedora 39 seems to sleep the keyboard. I assume because the modular design makes it look like a USB device rather than the built in keyboard. When the tuneables are on, the first couple key presses don’t register as the keyboard wakes up. Going to chase this down and see if I can’t disable the specific tunable that does this.

I have mine setup so that the keyboards aren’t included when the --auto-tune parameter is ran… however I have absolutely zero recollection of how this was done.

I just did it myself. I currently have the powertop service enabled so it applies the tuneables on startup.

sudo systemctl edit --full powertop

I edited this service file and added the commands that undoes the tuneables and sets my keyboard and macropad back to ‘on’ instead of ‘auto’ (for autosuspend.)