I’ve seen people mention higher refresh rate panels as well as making custom resolutions with lower resolutions to help with gaming performance, but I’ve never seen anyone try a custom resolution with a different refresh rate, whether lower or higher than 60Hz
Now I don’t (yet!) have access to a Framework laptop, but I’ve had great success running lower-end bog-standard 60Hz laptop displays (HP 8440p and HP DM1) as high as 100Hz without any frame-skipping and, at least on the DM1, being able to run as low as 48Hz, and so I’m wondering if anybody ever thought to try something similar on the Framework.
As mentioned in another thread, CRU - Custom Resolution Utility should be all that’s needed to achieve this on Windows.
(sorry, no link as I’m a new user so I’m limited to 2 links; just search for “custom resolution utility” and click the result from ‘Monitor Tests’)
You can then verify if it’s skipping frames or not using the following test pattern and a photo taken with a slow shutter speed or a high framerate video recording (at least 120fps; slow-mo video may work too; I know that MPC-HC lets you step frame-by-frame via the |> toolbar button):
On Linux, I know that xrandr can also achieve this (you only need to do steps 1 and 2 for testing custom resolutions which then allows you to reboot to start over if you bork something up), making sure to also include a third value in the initial “cvt” command to specify the refresh rate (e.g. “cvt 2256 1504 75” for 75Hz) and replacing the “VGA1” in step2 with presumably “eDP-1”:
Lastly, being quite the Linux beginner, I have no idea how custom resolutions are achieved with Wayland.
And as mentioned, this can also be used for slower-than 60Hz refresh rates, like if you want to watch 24fps video content without telecine judder, you could set your refresh rate to 48Hz… assuming that a custom refresh rate of 72Hz or even 96Hz doesn’t “just work” of course! But even then it could be useful for games as 50fps running on 50Hz is going to look smoother than 50fps running on 60Hz.
Think you can try 72Hz? That’d probably be more beneficial as it’d allow for exact judder-free playback of 24fps video content.
Also, what about lower refresh rates like 50Hz? Since 75Hz didn’t work out on your panel (panel lottery?), 50Hz would be the next best thing to try for 25fps video content.
Lastly, do you know how warm or cold it was at the time when your tried 75Hz? On my own older HP DM1, I cannot run above 75Hz in winter as trying 90Hz will give major visual bugs (at least until the laptop has warmed up for a while) but, in summer, I can run 90Hz straight after a cold-boot without any issue.
Assuming that you’re using CRU to make the custom refresh, you might be able to manually tweak the timings to create a 72Hz (or higher!) refresh rate that uses lower timings.
This is actually the only way I’m able to get to 100Hz on my previously-mentioned HP DM1 laptop as, without that, I max out at somewhere in the mid 90s.
(I’ve also used this trick on a desktop monitor that can handle at least seemingly anything between 48Hz and 75Hz, but it’s dumb and complains about being an “unsupported signal” on anything that isn’t 60Hz or 75Hz despite actually displaying the picture perfectly fine and then, because it’s “unsupported”, automatically has the monitor go to sleep after 10 seconds unless you cheat and use custom timings that are taken from a “supported” refresh rate, e.g. using 75Hz timings on a custom 72Hz resolution/refresh rate)
Keep in mind that a lot of “24fps” content is actually 23.976fps (e.g. Vincent Teoh’s videos at HDTVtest), in which case you’d only really need 71.928 Hz for perfect judder-free playback.
Now that we’ve proven that this works, the next question is obviously if we can force variable refresh rate!
…seriously though, force-enabling VRR is actually something that CRU can do assuming that it’s similarly something that the panel can handle but is simply not exposed (and I know for a fact that there are at least a few laptops in existence that are like this). I mean, panel self-refresh itself is basically what the basis of Adaptive Sync is, and a lot of modern laptops have self-refresh so that they can drop the refresh rate when there’s little to no movement on-screen in order to save power.
And for reference, the existence of the following at least proves that Adaptive Sync is supported on 11th gen Intel graphics: