Framework 16 7940HS w/ 7700s 240W Charger Drops BF6 FPS from 100 to 35

I just purchased and recieved the 240w charger. I have the Framework 7940HS processor with 7700s dGPU. I have been playing BF6 for months on low settings 1200p with no framegen or FSR and im getting 100FPS. I got the 240w charger hoping to not drain battery while gaming which is solved with the 240w charger but i have a worse issue. When the 240w charger is plugged in, I am getting 35fps on the same settings. I turn computer off and plug in 180w charger and im back to the 100 fps. Before i found out its most likely the charger, i performed a clean install of Battlefield 6 and a clean install of windows thinking maby windows or game files were broken and this didnt solve the issue. The 240w charger says the computer is charging when plugged in. Is the 240w too much power for my older motherboard and GPU?

I also have a 34” ultrawide i can play at 2500x1080 same performance auto settings at 90-99 fps with the 180w charger. When i use the 240w charger the frames drop to 25-30. My refresh rate is 165hz on both screens with in game frame limit to 100fps.

I have noticed the charging port getting much much hotter with the 240w plugged in. Did I recieve a faulty 240w charger?
How can i solve this? This is my main machine and its annoying to take breaks every few hours to let the battery charge back up to game again. the 240w should have solved that but caused even worse issues.

Maybe you are getting a temp increase with the 240w charger and the system thermal throttles itself. I am currently struggling with a PROCHOT issue where the system thermal throttles even at 80-85 degrees celsius.

The FW16 laptop backs off the speed of the laptop when it is charging the battery.
There is a tool called “ectool” that can monitor the battery. e.g. “ectool battery 0”
Also “ectool chargecontrol”.
If it is in “NORMAL” mode, it will attempt to charge the battery.
If it is in “IDLE” mode, it will not attempt to charge the battery.

“ectool” should work in Linux and Windows.

Say you have the battery charge limit set to 80%. (You set it in the FW16 BIOS)
It will happily discharge to 75%, and then try charging again.
It has been found that the FW16 can draw 400W for short instances, particularly when gaming. As this is over the 240W, it will draw a little power from the battery to top up.
Eventually, these “top-ups” cause the battery to fall to 75%, thus forcing a charge.

“ectool chargecontrol” also tells you what the current limits are. on the “battery sustainer” line.

“ectool chargecontrol” can also be used to adjust these limits. So, for example you could set it to be between 20% and 80%, thus meaning that the battery would not charge during your game, or until the battery dropped below 20%. Once you had finished the game, you could set it back to 75% - 80% so that the battery charges up between games.

I think FW have acknowledged some problems with the 240W charging, and have an updated BIOS: 4.0.3 that tries to fix the problems. So it might be worth updating the BIOS if you are not already on 4.0.3.

1 Like

Thank you for the information. I will try updating the BIOS first. I will let you know if it works.

James3,

I updated the BIOS to 4.0.3. Interestingly enough, during BF6 games, the 180w charger the battery doesnt reduce at all. With the 240w charger it slowly decreases and now when it hits 99% the FPS tank, they hover around 50fps vs the 35fps from before bios update. Its not a thermal throttling issue with the GPU which sits at 50c, idk how to check CPU temps, but CPU is running around 70% and gpu at 90%.

I am happy i still have the 180w charger to game with but rather frustrated i spent over $100 for a 240w charger that i currently cant use. I am great at working on PC hardware but changing BIOS settings or messing with PROCHOT stuff i am not comfortable with. Does framework have an official video to get this resolved once and for all? This is my main gaming machine and its frustrating as all get out that its not working as intended. Perhaps I should file a return for the charger and send it back if this is going to be a complicated issue to resolve?

@Jeffrey_Grassi
It might be worth trying to get “ectool” working.
There are versions of it that work in windows and also Linux.
The command you need is “ectool chargecontrol” and see what range of charge values it has.
You can then use “ectool chargecontrol …” to change that range, and also force IDLE when needed.
I have a windows version here (with the source code, if you wish to compile it yourself. This release is compiled by github and not me):

For the Linux version, you would need to compile it yourself. Look at the Wiki there for details.

I am sure FW will fix it eventually, but a good start is trying out various work arounds, until one works, and then ask FW to fix it that way.
I think it would help if there was a “Game mode” setting, that would just automatically set everything up, with the best work-arounds known.