NVIDIA - How can I override a display's EDID information with a *.bin file?

So, it’s now that I’ve learned that A, xrandr doesn’t want to cooperate, complaining that the mode that I just created doesn’t exist. B, worse still, I evidently can’t get it to accept even a single timing through manually editing the x config, as it seems to have no effect even after I edit the correct config file.

I’m deciding to resort to what I had to do in windows, which is by overriding the EDID information with custom resolutions and timings that I know my panel accepts. Why is this important, though?

I’m on a single monitor setup consisting of a Vizio D24-D1 smart tv. It functions okay as a monitor after a bit of tweaking, mainly that the default 1080p60 resolution it exposes seems like 4:2:2 and has extreme fringing on some colors, namely red. Through CRU on windows I was able to eliminate this problem and export some EDID info to a binary file.

Further still, I learned that the display controller’s native refresh rate isn’t even 60Hz, but instead 75.03Hz under PC resolution timings (which I salvaged in my EDID info as a baseline before adding 1080p75 through a new data block.)

Red text being readable would be nice, as would the extra refresh rate. Anyone know how to do it, or willing to help? It would be greatly appreciated!

Issue resolved: the --custom-edid flag is what’s needed here, I didn’t see it earlier. Woot.
sudo nvidia-xconfig --config /etc/X11/mhwd.d/nvidia.conf --custom-edid="GPU-0.DISPLAYHERE:/path/to/edid.bin"
You can see which display is where by running xrandr.
Hope this helps people down the line! Topic close time?

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.