Ubuntu – Cannot connect second monitor via HDMI cable in Ubuntu 20.04

20.04external-monitorhdmimultiple-monitorsnvidia

I freshly installed ubuntu 20.04 on my laptop after erasing the previous version (18.04) and deleting everything.

When I tried to connect my external monitor via HDMI cable the monitor was not detecting any signal, although it was working fine with the previous Ubuntu 18.04.

I am using an HP ZBook 15 G6 laptop, with "NVIDIA Corporation TU106GLM [Quadro RTX 3000 Mobile / Max-Q]" GPU and nvidia-driver-435 installed.

xrandr is not detecting the display:

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
   1920x1080     60.03*+  60.01    59.97    59.96    59.93    40.02  
   1680x1050     60.00    59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98    60.00  
   1600x900      59.99    59.94    59.95    59.82  
   1280x1024     59.95    60.02  
   1440x900      59.89  
   1400x900      59.96    59.88  
   1280x960      60.00    59.99  
   1440x810      60.00    59.97  
   1368x768      59.88    59.85  
   1360x768      59.80    59.96  
   1280x800      59.99    59.97    59.81    59.91  
   1152x864      59.97    60.00  
   1280x720      60.00    59.99    59.86    59.74  
   1024x768      60.04    60.00    59.95  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   1024x576      59.95    59.96    59.90    59.82  
   960x600       59.93    60.00  
   960x540       59.96    59.99    59.63    59.82  
   800x600       60.00    60.32    59.96    56.25  
   840x525       60.01    59.88  
   864x486       59.92    59.57  
   800x512       60.17  
   700x525       59.98  
   800x450       59.95    59.82  
   640x512       60.02  
   720x450       59.89  
   700x450       59.96    59.88  
   640x480       60.00    59.94    59.94  
   720x405       59.51    58.99  
   720x400       59.97  
   684x384       59.88    59.85  
   680x384       59.80    59.96  
   640x400       59.88    59.98    59.96  
   576x432       60.06  
   640x360       59.86    59.83    59.84    59.32  
   640x350       59.84  
   512x384       60.00  
   512x288       60.00    59.92  
   480x270       59.63    59.82  
   400x300       60.32    56.34  
   432x243       59.92    59.57  
   320x240       60.05  
   360x202       59.51    59.13  
   320x180       59.84    59.32  
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)

I switched to lightdm, and switched back to gdm3, yet both of them did not solve the problem.

Some answers suggested editing the /lib/modprobe.d/nvidia-kms.conf file, and comment the options nvidia-drm modeset=1, But it is not present on my computer. I can only find the nvidia-graphics-drivers.conf file under /lib/modprobe.d.

How may I solve this?

EDIT : I have noticed a strange thing. When I "SUSPEND" my computer and resume later the external monitor is being detected and works normally. But when I restart the problem is same as before.

Best Answer

OK so after a lot of internet scraping and unhelpful solutions, I have gotten it fixed in my case. I am running an AMD 400 series AMD graphics card. What is downloaded automatically in the drivers upon 20.04 installation is not sufficient (this includes the situation when you check the box for install third-party drivers on installation!). Below, I will outline briefly what I did, but since people have different computers with different specs, I can't get too specific without causing future viewers to install the wrong media and mess up their system.

Below is for an AMD system (If you have intel processor, you will do a similar step, but on the intel driver site)

  1. Go to https://www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-20-20

  2. Select the software that matches your version of ubuntu/RHEL/SLED. For me, version 20.20 for Ubuntu 20.04. (OP this looks like what you will choose, too)

  3. Also look at the download instructions. This outlines the documentation that is important to understand what you are doing!

3A. Briefly, you will download a tar.bz file called amdgpu.blahblahblahb.tar.bz

3B. You will extract it.

3C. You will navigate to it.

3D. You will run the amdgpu-install script in the terminal. I just dragged and dropped it into my terminal and hit enter. I did get a problem here where it wouldn't install at first because there was a driver already partially installed (I think this may have been the automatically installed driver that ubuntu gave us upon installation). To hop around this, I added the keyword uninstall (/.amdgpu-install --uninstall), then re-ran the script again (./amdgpu-install)

  1. Reboot and it should work. Furthermore, this will fix any Night Light problems that you were having.

Cheers!

Related Question