For Framework Laptop 13 12th Gen, we have an article on optimizing power consumption (this one is written for Ubuntu, but should largely apply to Debian): https://knowledgebase.frame.work/en_us/optimizing-ubuntu-bat...
The battery situation makes me never use it. Compare to a macbook when I can just close it and open it up weeks later and it just turns on with plenty of charge still left.
Every time I need to use the FW i need to plug it in first or charge it if I want to take it somewhere. Defeats the point of a portable computing device
When I travel with it, i need to make sure I shut it down and not just close the lid, or it discharges and cooks my backpack
Everything else is fine though
I spent quite some time trying different things to optimize it, but never got more than realistic 3 hours.
Happy with other aspects though.
Now, if someone could find me a native Docker host that lasts all day... then we're in business.
I tried upgrading to the ryzen and when it was good it was really good. I was able to keep a user mode libvirt vm running for dev work and mid brightness under 5W power draw. That used slirp networking, adding a bridge or default nat nic takes up about 2w to 3w of it's own power.
But like most windows laptops the suspend mucked things up. Not even power draw while asleep, but when awaking from sleep the power minimum was 10w with it more often at 20w with similar usage. I tried several wifi cards, nvme drives, port configurations etc. Also tried Fedora, Ubuntu and Nixos.
On Linux this carries over to the discussion of tlp vs power profile daemon, and soon tund. I saw much better performance and regularity with tlp, but that seems like it's not the path forward.
The steam deck shows that suspend can be fixed and done well with decent battery life under linux.
I definitely had to play with powertop a bit and remove some programs that consumed a lot of battery (for example, the blueman tray applet had to go). I'd recommend setting powerManagement.enable = true and powerManagement.powertop.enable = true, and letting powertop run in the background while on battery for a few hours to identify the worst offenders.
This is my configuration: https://kirarin.hootr.club/git/steinuil/flakes/src/branch/ma...
> and letting powertop run in the background while on battery for a few hours to identify the worst offenders.
How do you do the analysis after running powertop in the background?
This surely has to be a software issue, I can't imagine they'd have been silly enough to fit such a tiny battery!
I get 6 with Ubuntu on my 1240P Framework, and that's with the BIOS limiting the battery to 80%.
Unfortunately, at least on Linux, it requires quite a bit of tuning for the moment. But there are some pretty good guides.
Suspend battery life still isn't great, but it's _much_ better (with s2idle supported) on the latest-gen AMD platform.
I previously had the 11th gen Intel and... I got much better battery life than you, but it was still pretty bad.
... unless you watch a lot of video. Hardware video decoding uses more power than software video decoding in many cases: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10223
My understanding is that one of the reasons Linux on M-series macs doesn't have the problem is that Asahi team doesn't take similarly crappy attitude.
Also, the issue appears to show up on other 7040 Ryzen laptops, so I hope this finally gets us proper "modern sleep" support instead of instructions to disable it in firmware setup.
My ThinkPad has modern sleep support for the 7840U; sleep and wake are nearly instant with very little battery use while sleeping.
All that configurability of the Framework takes up space, so its battery is 15% less (85 W/h compare to 100 W/h for the MBP).
The MBP has a CPU and instruction set that was optimized for low power from the beginning, compared to x86 which has 40 years of ad-hoc cruft and assumed wall power in the beginning, so it may not even be possible to implement the whole instruction set in low-power. (Intel tried, and did not succeed. Could be BigCO ineffeciencies, but could also be that it just isn't realistic.) But Intel/AMD can't switch architectures like Apple can, because they don't control the software. There's no guarantee that the buyer of a hypothetical improved instruction set Intel CPU has access to a Rosetta program (even if Intel had the imagination to do that). On top of that, Apple has been optimizing that CPU for 15 years, and is has access to the leading node.
Additionally, (presumably because of the lack of legacy cruft) Apple has space on their die for huge caches and the GPU. On-die GPU eliminates power consumption due to an additional discrete component. Large caches also help things go faster, which means the CPU can drop down to low-power mode quicker.
Since Apple owns the CPU, it can customize the CPU for its needs, and it has relentless optimized for low power consumption, even to the extent of putting in a few new instructions for the OS.
Apple owns the OS, so it can have all kinds of power-saving features that a mass-market OS like Windows cannot feasibly implement. It is not in Microsoft's interest to take advantage of every little power savings a motherboard manufacturer might add: extra complexity (= bugs and maintenance costs) with no extra revenue potential. Linux has a similar problem, and additionally there are enough problems needing attention that I expect power optimizations beyond the big ones just do not have the interest / resources. For instance, if a 5% improvement would require a large kernel / driver refactor, I suspect it's a hard sell. Plus, macOS doesn't need to support anywhere near the number of configurations that Linux does, so it probably is less effort to do. So all those 5% increases that Apple can do add up.
Then there is the aspect that Apple can tune its OS for power saving. Update Cocoa to save energy and everyone's app uses less power. I expect GTK and Qt have other more pressing problems. On top of that, I expect Wayland and especially Xorg are not designed with minimal power consumption in mind. Etc, all the way down.
That said, 2.5 hrs does seem like it could definitely be improved.