33

After upgrading to Ubuntu 18.04, my laptop has been unable to detect/use an external monitor attached via HDMI. Even when plugged in, the "detect displays" button within the default settings app doesn't do anything.

Here is the output from xrandr:

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 16384 x 16384
eDP-1-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1920x1080     60.01*+  60.01    59.97    59.96    59.93  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98  
   1600x900      59.99    59.94    59.95    59.82  
   1280x1024     60.02  
   1440x900      59.89  
   1400x900      59.96    59.88  
   1280x960      60.00  
   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      60.00  
   1280x720      60.00    59.99    59.86    59.74  
   1024x768      60.04    60.00  
   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    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  
   720x405       59.51    58.99  
   684x384       59.88    59.85  
   680x384       59.80    59.96  
   640x400       59.88    59.98  
   576x432       60.06  
   640x360       59.86    59.83    59.84    59.32  
   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-1 disconnected (normal left inverted right x axis y axis)
HDMI-1-1 disconnected (normal left inverted right x axis y axis)

My main concern is the final line: HDMI-1-1 disconnected. There is a monitor plugged in and ready for use, and nothing I do seems to cause it to be detected.

I have an nvidia graphics card, and before the update I was using proprietary drivers. When the external display problem first arose, my initial attempt was to switch back to the open source Xorg drivers. However, upon reboot, Ubuntu displayed my driver settings as using a "manually installed driver", and won't let me change it:

enter image description here

Any recommendations?

  • What do you call open source Xorg driver ? is it the nouveau driver ? – solsTiCe May 8 '18 at 22:07
  • Yes. Sorry for not being specific. – PullJosh May 8 '18 at 22:40
  • 1
    This problem seemingly fixed itself. For any future readers experiencing the same issue: I launched an i3 session (as opposed to gnome) and then rebooted and the problem was solved. I don't expect that the two things are correlated, but if you're really stuck, it could be worth a shot. – PullJosh May 8 '18 at 23:27
  • 6
    For me, no "detect displays" button in displays settings. :( – angelcervera May 13 '18 at 10:32
  • 1
    @angelcervera's answer solved it for me. For reference, here are two very detailed threads outlining some other potential solutions: devtalk.nvidia.com/default/topic/1035768/linux/…, devtalk.nvidia.com/default/topic/1032482/… – dskrvk Sep 13 '18 at 1:36

19 Answers 19

19

I solved the problem installing lightdm and set it as the default display manager.

In the process, something changes because is starting to detect external displays again even if you go back to GDM3.

You can follow the instructions here on how to make these changes:

  • sudo dpkg-reconfigure gdm
  • select the display manager (LightDM, MDM, KDM, Slim, GDM) you want to use by default and hit enter
  • restart your computer
  • This worked for my MSI GS65 on Ubuntu 18.04. I also have to sudo prime-select nvidia and restart my computer -- doesn't work unless nvidia drivers are being used, it seems. – Russell Richie Sep 2 '18 at 20:08
  • Although it seems that, contra angelcervera's post, if I switch back to gdm3, the problem reappears.... – Russell Richie Sep 3 '18 at 17:08
  • In addition to this answer I renamed my xorg.conf, though don't know if that actually had any effect in the end. – dskrvk Sep 13 '18 at 1:38
  • 1
    Note that it is the combination of gdm3 AND modesetting which causes this problem. Ubuntu 18.10 swapped to modesetting by default, this was later backported to 18.04. Nvidia modesetting stops tearing on the laptop panel because it enables 'prime synchronisation', a type of vsync for nvidia prime. But gdm3 gets very confused for some reason. lightdm is the best of both worlds: working external monitors and tear-free nvidia graphics on the laptop's display. – Tim Richardson Mar 13 at 11:13
  • 1
    This doesn't solve the problem for me. GS65 and Ubuntu 18.04. – Thierry J. Mar 18 at 14:52
6

I solved it by purging, then reinstalling the nvidia drivers

sudo apt-get purge 'nvidia*'
sudo add-apt-repository ppa:graphics-drivers
sudo apt-get update

Then using the Software & Updates tool's Additional Drivers tab and installing the latest nvidia drivers

4

My external monitor plugged into my Lenovo L380 HDMI stopped working on Ubuntu 18.04. I succeeded to fix this issue by opening the BIOS setup and changing the display priority option from the USB Type-C to the HDMI.

3

Solved for me by updating to recommended Nvidea card drivers how-to.
To install all recommended Drivers:
sudo ubuntu-drivers autoinstall

  • Yep, this solved my issue as well. I tried to connect my DELL Inspiron G3 i7 32GB 480+1TB GTXTi to LED IIYAMA 28" with Ubuntu 18.04 LTS. – wawka Mar 10 at 9:40
  • this suggestion solved my issue as well. Thanks – Pototo Jun 11 at 13:10
2

Try this (change resolution, if 1920x1080 is not your resolution):

    xrandr --addmode HDMI-1-1 1920x1080
    xrandr --output HDMI-1-1 --mode 1920x1080
2

The top solution did not work for me on my Acer laptop, which suddenly stopped showing HDMI-1 as an output in xrandr this morning. I tried changing to the noveau drivers in case that helped, but it didn't.
I read on a different site that sometimes the OEM laptop Nvidia cards can "get confused whether cable is connected or not", which I had assumed was just tech-support appeasing someone. But, for giggles, I tried unplugging the HDMI cable, plugging in the VGA cable, rebooting, and plugging the HDMI cable back in. For some reason, that worked.

This is probably an extension of "Just Learning"'s solution, the important part of which is probably the "through VGA" part.

2

Sweet Merciful Crap! There is a solution without installing lightdm!

Update:

It's apparently a better solution to run X11 as root. The one-line fix is to add this to this to /etc/X11/Xwrapper.config:

needs_root_rights = yes


It's a one line fix in /lib/systemd/system/gdm3.service

Replace

[Service]

ExecStartPre=/usr/share/gdm/generate-config

with

[Service]

ExecStartPre=/usr/bin/xinit /usr/share/gdm/generate-config

Found Here:

https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/1716857

All my external displays are now detected and working on gdm3

My System:

Ubuntu 18.04.3 LTS

Lenovo T480

Intel® Core™ i7-8650U CPU @ 1.90GHz × 8

GeForce GTX 1070 Ti/PCIe/SSE2 via Razer Core X over Thunderbolt 3

GNOME 3.28.2

  • This should be the accepted answer. The one with most up votes suggests going back to older lightdm and is more steps. THis simple one line step fixes the issue for me. – user92240 Nov 25 at 15:10
1

I did not have this problem on Ubuntu 18.04 with NVIDIA GeForce GTX 1050 Mobile and GeForce GTX 1050. But after upgrading my kernel to 4.19 my external monitor was not detected anymore. Reverting back to the standard 4.15 kernel made the problem disappear.

1

Tried everything related from gdm3, lightdm, i3, nvidia drivers purge & reinstallation. What worked for me was to go to /etc/X11/ folder and create a xorg.conf file with file contents:

Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection

Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "None"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection

Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1@0:0:0"
Option "ConstrainCursor" "off"
EndSection

Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection

And then reboot. I did not have success in Wayland but it worked in the Unity version.(I am running 18.04 in Alienware R313 with dualboot Windows)

  • This gave me a PKCS#7 error when booting so I had to disable the driver to enter and remove the file. – Francisco Peters May 27 at 16:20
  • I think you might be able to get the same result in gdm3 by changing one line in /lib/systemd/system/gdm3.service See my main answer in this thread or the original bug report bugs.launchpad.net/ubuntu/+source/gdm3/+bug/1716857 – nhorning Aug 14 at 19:57
0

I attempted the solution that says to reconfigure to lightdm but that did not seem to work.

I did some reading from the following website: https://devtalk.nvidia.com/default/topic/1035768/linux/ubuntu-18-04-can-t-see-second-monitor/ and I found that at least on the Lenovo Legion Y530 the solution is to change the NVIDIA prime profile from intel to nvidia and then restart the computer.

You can switch the profiles by going to 'NVIDIA X Server' settings, going to the 'PRIME profiles' tab and then selecting 'NVIDIA (performance mode)'. After, restart the computer.

You can also reconfigure the PRIME profiles tab by running the following command in the terminal.

 sudo prime-select nvidia

and then restarting your computer.

0

For me I had to turn on Legacy mode support in BIOS.

0

I could connect to external monitor before i execute

sudo apt install gnome

I tried suggestions above, but none of them works. at last I recover the connection by this

sudo serivce gdm3 reboot
sudo reboot

wired.

0

For me this problem occurred on a Lenovo Ideapad 510 running Ubuntu 16.04 after connecting to a different than usual external monitor via HDMI. It got fixed after I had connected this laptop to yet another external monitor, although it hadn't worked there. Earlier I also changed my graphics drivers from open-source to proprietary and then to open-source again--maybe this helped. I also restarted my computer several times. It seems pretty random.

0

One quick extra check is that you don't have nomodeset or vga= as kernel parameters, as noted here (the link is for Radeon but I guess similar would apply to other graphics hardware). Removing nomodeset just fixed a similar problem for me.

Instructions for how to check and if necessary edit your kernel parameters as applied at boot time can be found on this page.

0

For me, the solution found here was the only thing that worked.

$ sudo apt install intel-gpu-tools
$ intel-virtual-output
$ reboot

My setup is:

  • MSI GS65 Stealth 8SF
  • Ubuntu 18.04 LTS (Budgie Desktop 18.04)

Update

I noticed that the second display correctly shows after reboot, but no longer does it after suspension. Above was not what seemed to do the trick, but it seems that it's just the reboot that has helped.

0

I just spent several hours trying may different solutions I found on this thread and elsewhere online.

I'm running Ubuntu 18.04 on HP Elitebook with Nvidia GTX1050 graphics card. After a fresh install everything worked except external monitor. I switched the nvidia driver in the Additional Drivers section of Software & Updates several times and everytime before the switch got completed I had to choose some password that I'd supposedly use during the next reboot, but I never got asked for it during the actual reboot.

The reason the external display didn't work, was that the selected drivers didn't get loaded. I found that out by running nvidia-settings in the terminal and getting a "ERROR: NVIDIA driver is not loaded" response.

The solution: Pay attention at reboot for Enrol MOK key/MOK management screen. There select the option to Enroll key and type the password you created during driver update in Ubuntu.

All works perfect after this.

0

I had the same issue on an my Asus ROG laptop (running Ubuntu 19.04 / Windows 10 dual boot) after a BIOS update.

First I had to disable secure boot in BIOS.

Then I had to set options nvidia-drm modeset=0 in /lib/modprobe.d/nvidia-kms.conf and run sudo update-initramfs -u.

0

I tried many things to solve this problem and someone finally helped me out. My issue was with the NVIDIA drivers and this line solved it.

sudo apt install nvidia-driver-435

Link to my issue here (Ubuntu 18.04.3 cant find second monitor - Dell G3 - NVIDIA 1060 TI)

New contributor
David B is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
-2

I connected my external monitor through VGA and went to Settings > Devices > Displays choose Mirror and then Apply. was asked if I wanted to keep this Setting choose Yes and everything connected. Simple and Beautiful.

  • 1
    Unfortunately, the default settings app was the very first thing I tried. That being said, perhaps someone else will find this advice useful! (My problem has been solved, by the way, although I'm not entirely sure how...) – PullJosh May 22 '18 at 20:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.