@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
@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.
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.
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
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?
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 bycmd_cpupower
, andā¦cmd_cpupower
is aCONSOLE_COMMAND
, which is only available via serial/thecros_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.
Using direct write to sysfs, or via ectool?
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.
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.