System Specs
Ubuntu Version: 22.04.2 LTS
Tiling Window Manager: I am using i3WM
Docking station: DELL D3100
I have this monitor arrangement in the DELL D3100 Docking Station:
Where:
- DP-0: Laptop Screen
- HDMI-0: 70" Samsung
- DVI-I-1-1: 32" Samsung
- DVI-I-2-2: 32" Samsung
This results in a Screen Layout as shown in this screenshot.
The problem
When I turn off the screens, and turn them on again after some minutes, let's say: if I leave my workplace to go for lunch or something, when returning, the 32" HDMI are inverted as shown in the next screenshot.
Nevertheless, if I take a screenshot again, the screenshot shows the monitor arrangement and the image in the monitors is perfectly as I arranged them.
I think this is something the Dell D3100 Docking Station is not handling well when the screens are turned off but I would like to know if there's a way to keep the monitors arranged as if they were turned on.
What I have tried
I have tried reducing the brightness in the monitors instead of turning them off but this won't work with a remote digital assistant like Alexa or Google Assistant. Let's say: If I am going out for a longer time than expected, I simply use my cellphone to ask Alexa to turn off the screens remotely.
Scripts
The original xrandr script to arrange the screens currently has this:
normallayout.sh
#!/bin/sh
xrandr --output HDMI-0 --mode 2560x1440 --pos 1080x0 --rotate normal --output DP-0 --primary --mode 1920x1080 --pos 1720x1440 --rotate normal --output DP-1 --off --output DP-2 --off --output DVI-I-4-4 --off --output DVI-I-3-3 --off --output DVI-I-2-2 --off --output DVI-I-1-1 --off
sleep 1
cp /home/geppettvs/.config/i3/config-normal /home/geppettvs/.config/i3/config
DISPLAY=:1 xmacroplay -d 20 < i3macro.xmacro
sleep 1
xrandr --output HDMI-0 --mode 2560x1440 --pos 1080x0 --rotate normal --output DP-0 --primary --mode 1920x1080 --pos 1720x1440 --rotate normal --output DP-1 --off --output DP-2 --off --output DVI-I-4-4 --off --output DVI-I-3-3 --off --output DVI-I-1-1 --mode 1920x1080 --pos 0x600 --rotate right --output DVI-I-2-2 --mode 1920x1080 --pos 3640x600 --rotate left
When the 32" screens are rotated, I am inverting the status on the 32" screens by using a similar script as follows:
inverted.sh
#!/bin/sh
xrandr --output HDMI-0 --mode 2560x1440 --pos 1080x0 --rotate normal --output DP-0 --primary --mode 1920x1080 --pos 1720x1440 --rotate normal --output DP-1 --off --output DP-2 --off --output DVI-I-4-4 --off --output DVI-I-3-3 --off --output DVI-I-2-2 --off --output DVI-I-1-1 --off
sleep 1
cp /home/geppettvs/.config/i3/config-invert /home/geppettvs/.config/i3/config
DISPLAY=:1 xmacroplay -d 20 < i3macro.xmacro
xrandr --output HDMI-0 --mode 2560x1440 --pos 1080x0 --rotate normal --output DP-0 --primary --mode 1920x1080 --pos 1720x1440 --rotate normal --output DP-1 --off --output DP-2 --off --output DVI-I-4-4 --off --output DVI-I-3-3 --off --output DVI-I-2-2 --mode 1920x1080 --pos 0x600 --rotate right --output DVI-I-1-1 --mode 1920x1080 --pos 3640x600 --rotate left
Please do notice this inverted.sh script contains a call to copy a new i3 config file, which contains the required key bindings to create a similar experience.
The results, nevertheless, are far from creating a similar user experience. Moving between the monitors is somehow unnatural and difficult to use, compared with the normal layout behavior.
Thanks in advance.