Framework Laptop 16 Ryzen 7040 BIOS 3.03 Release and Driver Bundle

I do like the idea of using the plus and minus keys for this purpose as I rarely use them otherwise, but I do use the enter key on the numpad quite a bit.

1 Like

Feel free to join us over at Framework 16 power specifications
Idk if it’s Linux specific, but I’m experiencing lower TDP when plugged in than unplugged.
So to get maximum power on some rare occasions, I actually unplug my laptop. Really hope that gets fixed. If it’s a BIOS issues, perhaps that’s what you’re experiencing as well?

If you’re using a small one try a bigger (higher wattage) power adapter.

Well yes that’s partially it (65W), but it should also be able to use the battery and the power adapter at the same time. Because in that sense, NO power supply is strong enough to supply both the 7940HS and the 7700S at the same time under full gaming load, so what the laptop does (and what we see in practice) is that it sips from the battery, especially in load peaks - hence peoples batteries are draining when gaming even when plugged in.
However it might not be able to do that for me for some reason.

My electronics background isn’t particularly strong so maybe it’s as simple as no two sources can supply to one sink at the same time, i.e. sources are battery and PD, and sinks are battery, socket and expansion bay.
So in my config, PD can charge battery and supply socket at the same time, but PD and battery can’t work together to supply the socket.
For a dGPU setup, PD can charge battery and supply both socket and dGPU, and if the PD is insufficient, it can switch to using e.g. PD for dGPU and battery to supply socket.
That doesn’t quite match what we see however, in that it only sips from battery, whereas in that theory it would use a lot more battery and the PD would be largely underutilised.

So I don’t see why my setup couldn’t reach peak power with a 65W charger. Maybe somebody from the framework team can chime in?
As I finished writing this, I found this thread which might give more clues:

I could explain it actually. They have to choose targets based on power adapter and power slider state in the EC. You can see all the choices that are made in EmbeddedController/zephyr/program/lotus/lotus/src/cpu_power.c at lotus-zephyr · FrameworkComputer/EmbeddedController · GitHub

The limits are different if you have a dGPU or not and on how big the charger connected is. It’s a balancing act because you don’t know what someone is going to do with their system. If you choose something too aggressive then the battery is going to tank. If it’s too conservative then performance suffers.

What you can do is message your intent by using the power slider in Windows or PPD in Linux. It will respond to that and change some of the limits based on that intent.

1 Like

Thanks for the hint, great to see.
I think I found the bug - and yes, I believe it to be a bug.
Assuming TYPE_FPPT counts and is limited by all four checks here.
update_os_power_slider should be fine in my case, 65W.
update_adapter_power_limit also seems to be fine, 65W.
update_safety_power_limit I don’t quite understand from a cursory look.
But update_thermal_power_limit seems to contain a bug where, in the no-dGPU case, it limits the power to 30W if you have anything less than 80W of AC power, despite the DC case following the update_os_power_slider:

This matches exactly what I observed, in that with DC, power slider works, with AC, it doesn’t have any effect.
Thanks for the hint! I’ll see if I can compile and flash mine, wish me luck.

4 Likes

Cool good luck! If it works send up a pull request!

Are there plans on an updated bundle with the newest amd adrenaline and graphics drivers

2 Likes

Update BIOS using LVFS. No issues with Fedora 40 Gnome desktop

Hey Guys,

I am trying since weeks to update my Laptop BIOS, tried everything, first the native Ubuntu commands, but always when i restart it just goes back into my login instead of running the update BIOS

When I select in the Boot Menu the “Update Firmeware” it says “nothing to update”

I run ubuntu 22.04 with a dualboot on windows, so maybe my grub is stopping the updates?

fwupdmgr get-updates
fwupdmgr enable-remote lvfs-testing
fwupdmgr get-updates
fwupdmgr download
fwupdmgr update
shutdown now -r -t 0

Tried this aswell and it downloads the latest version, but on the restart it doesnt do much :confused:

You checked which version you have on your system?

fwupdmgr get-devices

Eventually you don’t need it.

It says i am 2 versions behind, and i got lately some issues with connecting my laptop to external monitors since the new ubuntu kernel, so hopefully that fixes something.

image

Had 100% battery and it did the restart and everything, but yeah it just doesn’t do the update :confused:

Just making sure you have the power adapter connected ? :slight_smile:

I believe it’s got to be charging at the time the update starts, otherwise it might fail as it’s not detecting the charger. So drain the battery a bit (say, 95%) and try again while it’s charging.

That’s both not the issue, i tried every charge state possible, 100%, 95% and it always just skips the update.

As you can read on the “Update State” the issue is not the charging, i just made that screenshot off the charger, so it says that right now that would be the issue.

Try with “–force” which relaxes some security checks.
Also, you will need to do it as root, as regular users don’t have access to certain device files.
Try sudo:

sudo fwupdmgr update
1 Like

Please read section Linux/lvfs

It looks like you need to discharge battery and then plug in AC

None of the tips helped guys, i have 100% battery, it goes into the fwupdater v1.4 and shows the framework logo on boot and then reboots and asks me in grub which system to boot, windows or ubuntu.

100% battery as you can see

If i select manually the fwUpdater in the boot menu, it says “No update to process”

Yes, but this is actually bad. It needs to be less than 100%.

From the original post: