External Monitor, can't set desired resolution

Hello,

I have a laptop that is dual boot Windows and Ubuntu 20.04.
On Windows I can set the resolution of my external monitor to 1920x1080 fine, but on Ubuntu the maximum seems to be 1600x900.

I tried to add the resolution manually, using xrandr but it doesn’t work :

cvt 1920 1080 60.00 #Ok
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync #Ok
xrandr --addmode HDMI-0 "1920x1080_60.00" #error
X Error of failed request: BadMatch (invalid parameter attributes)
  Major opcode of failed request: 140 (RANDR)
  Minor opcode of failed request: 18 (RRAddOutputMode)
  Serial number of failed request: 46
  Current serial number in output stream: 47

My graphics card is a GTX 1050Ti
Driver version : 470.57.01 (recommended)

I tried to edit /etc/X11/xorg.conf but each try was a fail. {Complementary information · GitHub}

If someone can help it will be great.

Thanks in advance

Please run nvidia-bug-report.sh as root and attach the resulting nvidia-bug-report.log.gz file to your post.

Here is the report:
nvidia-bug-report.log.gz (337.1 KB)

I continued to search on my side and managed to assign the right resolution to my external monitor with this xorg.conf :xorg.conf (1.8 KB)

But my laptop screen is not detected anymore I don’t know if it will help ^^’

Thanks for helping

The problem is that the edid can’t be read from the monitor, both connect to the intel igppu and the nvidia gpu so it’s falling back to safe default 1600x900. Either the monitors are broken or the cables.

Do you think that forcing EDID can be a solution ? And do you know how i can do that ?

it’s really weird because when I use the get-edid command it gives me the right Hozizsync and VertRefesh :

That’s odd, the nvidia driver complains

nvidia-modeset: WARNING: GPU:0: Unable to read EDID for display device HDMI-0

As a workaround, you could try saving the edid to file, e.g. /etc/X11/edid.bin and then create a file /etc/X11/xorg.conf.d/nvidia-load-edid.conf

Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "CustomEDID" "DFP-0:/etc/X11/edid.bin"
EndSection

It didn’t work, I was stuck at 1600x900, and it didn’t detect my laptop screen.
I think I will continue to try with the xorg.conf file I had managed to get the right resolution with that one:xorg.conf
But my laptop screen was not detected do you have any idea how I can add it? I didn’t find much…

Since this is a hybrid graphics notebook, you can’t really use an xorg.conf.
Please create a new nvidia-bug-report.log with the config file in place.

I retried with your config file, this time my laptop screen was detected but my external monitor still at 1600x900, here is the report :
nvidia-bug-report.log.gz (346.9 KB)

(WW) NVIDIA(GPU-0): Unable to use EDID file ‘/etc/X11/edid.bin’: file format not
(WW) NVIDIA(GPU-0): recognized

Seems something went wrong saving it.

the command I used to save the EDID :
sudo get-edid -b 8 -q | sudo tee /etc/X11/edid.bin

There is a checksum warning it’s probably due to that ?

duffscs@duffscs-hp:~$ sudo get-edid -b 8 -q | parse-edid
8
WARNING: Checksum failed
Trying to continue...
Section "Monitor"
	Identifier "VE247"
	ModelName "VE247"
	VendorName "ACI"
	# Monitor Manufactured week 34 of 2015
	# EDID version 168.234
	# Analog Display
	Option "SyncOnGreen" "true"
	DisplaySize 1610 2550
	Gamma 2.20
	Option "DPMS" "true"
	Horizsync 30-83
	VertRefresh 50-76
	# Maximum pixel clock is 170MHz
	#Not giving standard mode: 1152x864, 75Hz
	#Not giving standard mode: 1280x1024, 60Hz
	#Not giving standard mode: 1280x960, 60Hz
	#Not giving standard mode: 1440x900, 60Hz
	#Not giving standard mode: 1600x1200, 60Hz
	#Not giving standard mode: 1680x1050, 60Hz
	#Not giving standard mode: 1920x1080, 60Hz

	#Extension block found. Parsing...
	Modeline 	"Mode 12" 138.50 1920 1968 2000 2080 1080 1083 1088 1110 +hsync -vsync 
	Modeline 	"Mode 0" 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync 
	Modeline 	"Mode 1" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
	Modeline 	"Mode 2" 74.250 1920 2008 2052 2200 1080 1082 1087 1125 +hsync +vsync interlace
	Modeline 	"Mode 3" 74.250 1280 1390 1420 1650 720 725 730 750 +hsync +vsync
	Modeline 	"Mode 4" 27.027 720 736 798 858 480 489 495 525 -hsync -vsync
	Modeline 	"Mode 5" 27.027 720 736 798 858 480 489 495 525 -hsync -vsync
	Modeline 	"Mode 6" 25.200 640 656 752 800 480 490 492 525 -hsync -vsync
	Modeline 	"Mode 7" 27.000 720 732 796 864 576 581 586 625 -hsync -vsync
	Modeline 	"Mode 8" 27.000 720 732 796 864 576 581 586 625 -hsync -vsync
	Modeline 	"Mode 9" 74.250 1280 1720 1760 1980 720 725 730 750 +hsync +vsync
	Modeline 	"Mode 10" 74.250 1920 2448 2492 2640 1080 1082 1089 1125 +hsync +vsync interlace
	Modeline 	"Mode 11" 148.500 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
	Modeline 	"Mode 13" 85.50 1366 1436 1579 1792 768 771 774 798 +hsync +vsync 
	Modeline 	"Mode 14" 74.25 1280 1390 1430 1650 720 725 730 750 +hsync +vsync 
	Modeline 	"Mode 15" 27.00 720 736 798 858 480 489 495 525 -hsync -vsync 
	Option "PreferredMode" "Mode 12"
EndSection

Yes, edids with broken checksums get rejected by the driver. Please try a different config file instead:
/etc/X11/xorg.conf.d/nvidia-load-edid.conf

Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "IgnoreEDIDChecksum" "true"
EndSection

Nothing has changed
nvidia-bug-report.log.gz (359.6 KB)

Please attach the edid file.

edid.bin (256 Bytes)

Please try loading it as text edid:
edid.txt (785 Bytes)

Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "IgnoreEDIDChecksum" "true"
    Option "CustomEDID" "DFP-0:/etc/X11/edid.txt"
EndSection

(WW) NVIDIA(GPU-0): Unable to use EDID file ‘/etc/X11/edid.txt’: file format not recognized
nvidia-bug-report.log.gz (354.8 KB)

Finally I found a solution.

I generate bin using make and I took the 1920x1080.bin file and I use it as customEdid for the DFP-0 monitor. It’s a rather non-trivial and very restrictive solution but it works.

I thank you for your help, without you I would have probably given up.

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