Display settings not being remembered across sessions

Ubuntu Version:
24.04

Desktop Environment (if applicable):Cinnamon

Problem Description:
I have a setup where I have two external monitors connected to my laptop via a displayport daisy chain (ie one cable from laptop to first monitor, second cable from first monitor to second monitor). All three monitors (laptop screen and two externals) are recognized and can be configured just fine using the gui Display panel.

My problem is that every time the displayport cable is disconnected from the laptop then reconnected, the third screen needs to be reconfigured with the Display panel. In the screenshots below, the first screenshot shows my preferred configuration, and the second shows what I see when I first plug in the displayport cable - the third monitor (the one at the end of the daisychain) is recognized but defaults to being off. It only takes a few seconds to open Display and fix the configuration, but I have to do it every time I plug in, which is pretty annoying.

Any suggestions for making these settings persist would be most welcome!

Pete

Are you disconnecting while the computer is running? and also plugging back in while again the computer is already up?

If so, that is normal, because the system is auto-adapting to the change in hardware configuration.

1 Like

I am unplugging and replugging while the computer is up. What I find surprising is that when I plug back in, one of the external monitors (display 2 in the screenshots above) is both detected and turned on, but the second external monitor (display 3 in the screenshots) is detected and not turned on, requiring user intervention to turn on..

Is there a way to script the equivalent of ‘launch Display, turn on monitor 3, set it as primary and move it to the leftmost position’?

I don’t know the details of the “how”, but you could look at the “systemd” services enablement for how it handles the two that work, and create a “*.want” file (not sure if that is the correct reference) to specify what is needed and the sequence for it to happen.

Otherwise, a custom rc.local file may be required, but I have no clue which commands or specifications that would require to make it happen. :frowning:



Out of curiosity, I entered the following as a search “string” in Google. The results “seem” reasonable, but I don’t know enough to say if they are correct or reliable. Hope that helps!

linux systemd how to specify service want or need specifications to control the handling and mapping of multiple monitors when detached and re-attached during a live OS

or

linux systemd example with sample set of files showing how to specify service want or need specifications to control the handling and mapping of multiple monitors when detached and re-attached during a live OS
1 Like

If you are using X11 (the default in Ubuntu Cinnamon), you can install the package arandr. This is a graphical helper to generate a script for xrandr.

2 Likes

Thank you, @col.row .

That looks like an excellent tool!

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