External monitor requires unplug/plug every time I boot

Hi all,

I’m having trouble getting my laptop to detect my external monitor on startup. Unplugging and replugging the hdmi cable fixes the problem every time, but I would like a more permanent solutions where I can leave my cable plugged in. I have tried multiple monitors, multiple cables, and multiple expansion slots and all have the same issue. I’m on Ubuntu 21.10. Thanks for your help.

1 Like

I’ve actually had the same experience with my Thunderbolt 3 dock. For me it seems to be related to how long my laptop was turned off before I turn it on. However, unplugging and plugging it back in turns my dock on (at least the LED light turns on) and everything starts working properly.

1 Like

I’m having similar problems with my caldigit element dock and a usb-c to hdmi cable to the back of my samsung monitor from the dock. It’s kind of unpredictable, and sometimes during sleep/hibernate events the display output will turn off to the external monitor, yet still show as available when in windows when I am configuring multiple displays. I’m actually considerding just sending the tb4 dock back and using my expansion ports for display output and power separately - which in the end is a better value even though there are more wires involved.

I believe my external monitor goes into powersaver mode, not off when not in use. However, not even turning the monitor on and off helps the problem, so I don’t think that would be the issue.

My workaround has been to use a dock plugged into the USB-C port of my laptop, then HDMI from my dock to my monitor. Oddly enough, that works every time.

It has everything to do with how USB is powered during different states. Believe it or not, I’m having the same issue with my M1 Pro. My external displays get all jacked up when I wake up from sleep. It appears that display settings aren’t retained or aren’t referenced when powering on. I thought it very weird when I first saw this on my Macbook. Now, I’m seeing it on my FW. So this leads me to believe its an issue in how USB power is managed. I remember seeing a workaround for Linux distros but I can’t remember where I saw it on this forum. If anyone has a clue, please link it.

I have also been frustrated with this problem. Recently, I also noticed that the USB Power factors into seeing the problem.

An additional observation I have noticed, the time for the Laptop screen backlight to turn on is an early indicator of whether the External HDMI monitor will be seen by the OS. (Five seconds good. Long delay, about 20 seconds, bad.) Since this preseeds the OS starting, maybe this is a BIOS issue.

Steps for recreating Working and Failing cases

For the working scenario:

  • Setup:
    • External HDMI Monitor already plugged in
    • Laptop powered off
    • unplug the Laptop power
  • wait 1+ minutes (1.25 should be enough)
  • press the power button.
  • After about 5 seconds, you will notice that the Laptop backlight comes on. This has been an indicator that it will boot fine. And, the external monitor will be seen by Linux.

For the falling scenario:

  • Setup:
    • External HDMI Monitor already plugged in
    • Laptop powered off
    • plug in the Laptop power
  • wait 1+ minutes (1.25 should be enough)
  • press the power button
  • When failing, there is a long boot delay (about 20 seconds) before you see the Laptop backlight come on. This has correlated with the External HDMI monitor not being recognized.

When the External HDMI Monitor fails to work, xrandr --listmonitors does not list the monitor. Also, sudo get-edid does not report the External HDMI Monitor.

I’ve been dealing with this since I’ve had my Framework laptop and it’s persisted through a few (latest) versions of Ubuntu. Sometimes (it seems random) the laptop will not detect my monitor when I plug in the Displayport adapter or when I turn the laptop on with the Displayport adapter already plugged in.

This will happen regardless of the monitor plugged in.

The best chance I’ve found to detecting the monitor requires me to remove the Framework USB-C DisplayPort adapter and insert a different DisplayPort adapter while the laptop is on. Sometimes this will let the monitor be detected, but even then it still take a minute…I’d expect a quicker response like other machines. It’s worth noting that this issue persists through restarts too.

I’ve tried everything I can think of…when this problem is happening the monitor simply won’t show up in the lsusb terminal output.