EDID file format not recognized

Hello,

I’m not a developer. As stated by your Customer Care I post my problem here (it seems an age-old one for millions people) for Linux driver version 470.182.03:

[ 1796.180] (WW) NVIDIA(GPU-0): Unable to use EDID file
[ 1796.180] (WW) NVIDIA(GPU-0): ‘/usr/src/linux-5.15.19/tools/edid/1280x1024_75.bin’: file
[ 1796.180] (WW) NVIDIA(GPU-0): format not recognized
[ 1796.182] (–) NVIDIA(GPU-0): CRT-0: connected
[ 1796.182] (–) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock

Same for a TXT file added via “nvidia-xconfig --custom-edid” and created by MonInfo.exe on Windows.

The BIN file instead was created by “make” from a different .S file.

More, on the VGA-0 entry the button “Acquire Edid” is frozen in Nvidia-settings.

I need to set 1024x768@70, @75, and 1280x1024@75. Would you help me, please?

Here is the bug report
nvidia-bug-report.log.gz (1.2 MB)
.

Hello @stefano.r, welcome to the NVIDIA developer forums.

This might be overstating it a bit. Nowadays it is very rare that people need or want to touch individual EDID settings.

Still, would you mind sharing the EDID file here?

The first thing to consider is to check, since the EDID is a text file, if the file is accidentally in DOS line-ending format. That might break things. Try dos2unix maybe?

Hello Markus,

Many thanks for your reply.

Please find enclosed the EDID files I tried unsuccessfully (it seems I can only put one link, please see the following posts):

20B-xp-raw.txt (385 Bytes)

The “raw2” is the same as the first one, I just wanted to add some “newlines” to sort data by 10 columns. Probably useless.

The dos2unix command is missing in Slackware 15.

it provides a “make” utility to build “.S” files, I enclose here one of them with the relevant binary one:

Thanks again to pay me your attention.

20B-xp-raw2.txt (409 Bytes)
raw2.txt

1280x1024_75.bin (129 Bytes)
binary of a “.S” file

1280x1024_75.S (1.6 KB)
“.S” file

Any news about my files?

Well, at least the TXT file does have wrong line ends in it. So as I suggested before, try converting it to Unix line endings and try once more.

Thank you for checking.

I’ve been able to see the carriage return (“CR”) symbol in HP-UX, not in Linux.

I’ve converted my text files, here you are with a copy of them:

20B-xp-hp.txt (2.4 KB)
20B-xp-raw2-hp.txt (396 Bytes)

But I get the same error as before:

[ 17765.686] (WW) NVIDIA(GPU-0): Unable to use EDID file
[ 17765.686] (WW) NVIDIA(GPU-0): ‘/home/web/Downloads/nvidia/20B-xp-hp.txt’: file format
[ 17765.686] (WW) NVIDIA(GPU-0): not recognized

And the “Acquire Edid” button is frozen in Nvidia settings for the CRT monitor.

Meanwhile I’ve found that the Slackware commands to convert DOS files have different names.

I had already said I’m not an expert, and that’s why I asked for some help.

However my aim is to know if my problem is solvable or not, and how long it usually takes.

To summarize:

  • After conversion, are my txt files working now?
  • Why my binary file is not working? Should I use it in a different manner?
  • Why the “Acquire Edid” button is frozen?

Thanks.

The 20B-xp-raw2-hp.txt file will work AFTER you replaced all , with SPACE. So 00,FF,FF,FF, becomes 00 FF FF FF .
Another important part is to make sure the file is owned by root and can be accessed during boot.

I honestly do not know. But given the fact that the raw output from MonInfo as ASCII was in an incompatible format, I guess the binary format is also not compatible. After you used the txtversion of the EDID you should be able to extract it again as a valid bin file through nvidia-settings or nvidia-xconfig.

Most likely because the Xorg and NVIDIA driver were not able to receive a valid EDID from the monitor when querying during startup.

I hope this helps!

Many thanks for your instruction.

Changing the file ownership and replacing commas with spaces has made the txt files to work and the “Acquire Edid” button to unfreeze.

I’ve also been able to load either the “.S” and the “.bin” files successfully.

So I could consider my problem solved.

But I’ve realized that my 20" CRT monitor has been detected by MonInfo on WinXP like a more recent 17" and set with the same name and data.

I’m not sure that the relevant file could work properly.

Any alternative to MonInfo to suggest? For Linux as well?

Usually if an EDID appears in Windows, it is sent from the monitor itself. If the naming is incorrect that should not influence the timings.

Unfortunately I don’t know any other free tools to read the EDID. But on Linux if you run the X server with lvl 6 verbose logging, you might receive EDID details that you can read out with nvidia-xconfig

-E FILE, --extract-edids-from-file=FILE
       Extract  any  raw  EDID byte blocks contained in the specified X log file LOG ; raw EDID bytes are
       printed by the NVIDIA X driver to the X log as hexidecimal when verbose logging  is  enabled  with
       the  "-logverbose  6" X server commandline option.  Any extracted EDIDs are then written as binary
       data to individual files.  These files can later be used  by  the  NVIDIA  X  driver  through  the
       "CustomEDID" X configuration option.

Thank you for further suggestions.
But I haven’t any correct data file relevant to the CRT monitor, and that’s why I’m looking to get its EDID data.
I know there are softwares that can read directly from the monitor memory, but I can’t find any of them.

Ok, then I can’t help you I am afraid.

I know there are HW tools that can do this, but I don’t know how you would get your hands on them.

Hopefully the monitor will still work for you with the incorrect naming.