A rant about the Framework 16's lack of gaming capability

I’d rather have working EC code in the BIOS and not have to mess with it.

1 Like

is achieved by using “ectool chargecontrol idle”

I did this (running NixOS), but it did not help. It seemed to work, giving me Charge state machine force idle. when executing that command. However BG3 was playable for 20 Minutes, until the battery dropped to 95%. I am using a 240W charger (bought that for an extra 150€, on top of the 4K i paid for the laptop). The games are just unplayable. It also does this for World of Warcraft, which had its 20 years anniversayry recently, btw. There is no way to recover, no lowering settings helps, it is just borked, turning the dGPU into a potato. I’m starting to wonder if it’s an architectural issue at this point, since there clearly must be an interest to get this fixed. Yet there is just radio silence, at least acknowledge the issue or give a roadmap. Half the time i had the FW16 i could not use it (fully, i should say), which is a bit frustrating to say the least.

1 Like

Same actually. Booting into debian and running ectool is no use for me, because it resets when I get back into Windows to play games. I’m torn between waiting and trying @James3’s instructions firmware fix… But I’ve never attempted such a feat and I really need my FW16 working right now :slight_smile:

@DHowett was working on ectool which works on windows. it requires crossEC which requires enabling testsignature.

I was using it some time ago ant it was working.

There is PR to make it working without disabling secureboot.

Sorry, maybe I’m just dumb… I installed the repo after setting the test mode, but… What commands are needed to actually apply the workaround for 240W chargers? My knowledge of these user-made fixes is very spotty, there is not a Wiki or mainthread anywhere… or is it?

@wojciech_migas Thanks for the digging. I’ll try it later. I’m somewhat concerned that both of the solutions you posted are older, with one predating the Framework 16.

I have the same, but I have found that putting it in “power savings” mode fixes the issue - and no major reduction in framerate.

Sucks, but it works for now.

@TheLPeink I took me a day but I’ve forked the repo of DHowett, merged PR which allows to use WinRing0 and using github action definition from James3 I managed to build it.
Here is the link to the built asset Release Release aa-a00923cf-bb · wmigas/ectool · GitHub
I have secure boot enabled and if I run following command it works

ectool.exe --interface=winring0 fanduty 50
ectool.exe --interface=winring0 autofanctrl

based on the comments from PR’s author
To run ectool with Secure Boot enabled, you have to do the following:

  • You have to download and start Libre Hardware Monitor (LHM). Remember that LHM needs to keep running in the background so that ectool can access the WinRing0 driver that is properly signed and embedded in LHM.
  • You have to execute ectool with admin privileges and with the --interface=winring0 argument.

in my case it was not needed, it run as normal user. I have however installed and running Universal x86 Tuning Utility which uses WinRing0. If I exist X86 tuning utility then I get an error

Couldn't open communication with the WinRing0 driver. Keep in mind that for this interface:
  - The application must be executed with admin privileges.
  - The WinRing0 1.2.0 driver must be already running on the system (e.g., via Libre Hardware Monitor).
Unable to establish host communication
Couldn't find EC

It works on FW16 windows 11

1 Like

Thank you! I’ll check it out.
Is there any Wiki/place to learn how to use ectool commands? I’m interested in the 240W fix, but a total noob in firmware-related messing around. :smiley:

I’m curious about this. I have not bought that 240w charger yet because of the issues (and non-removable cable), but if this does, in fact, resolve all the charging issues while gaming as people are saying, I’d go for it.

That said, this radio silence from Framework these past few months on fixing the 16s’ issues have been deafening! I was under the impression back in pre-order that this laptop was extremely popular. But it appears not that much as Framework doesn’t seem that interested in it anymore.

2 Likes

I finally managed to get to trying ectool.exe, and here are the relevant commands to be run on the command prompt with admin privileges:

ectool.exe --interface=winring0 chargecontrol idle
ectool.exe --interface=winring0 chargecontrol normal

This will not work in Powershell, which defeated me for a while.

With chargecontrol idle set, I was able to discharge the battery to 84% with the dGPU steadily drawing 74-80W. This was the gaming performance I knew this machine had. The only problem is that the 180W power supply does not have enough juice to keep the Framework 16 fed.

I also tried with the 240W power supply. Unfortunately, the performance is all over the place so there is something else broken about the EC code this command does not fix. I am curious if there is something else I can run to mitigate that problem.

Ultimately, Framework needs to fix their BIOS. I’ve owned janky laptops in the past, but this another level entirely. Being a small company is no excuse for letting this sit for 6 months on the flagship product.

EDIT: This seems to only work once before needing to reboot. Basically, if you set the charging state to idle and back to normal, you have to reboot to set it back to idle again.

4 Likes