------------------------------------------------------------------------------- Monitor Layout Controls... xmonitor xrandr wrapper to layout monitors more easilly (personal) https://antofthy.gitlab.io/software/#xmonitor arandr GUI program generating xrandr commands to use lxrandr GUI interface for xrandr for setup and confuration of a second X windows, such as projectors lxqt-config-randr GUI for specific xrandr controls in with display of results Lets you try it, with a timeout fall back, But does not output the xrandr line it uses! xrandr The primary display control (run time) But has so many options it is hard to use and understand GDM uses a "monitors.xml" file to define a xrandr to run cp ~/.config/monitors.xml ~gdm/.config/ You can also put a xrandr command in /etc/gdm/Init/Default BUT ONLY if you set "WaylandEnable=false" in /etc/gdm/custom.conf autorandr https://github.com/phillipberndt/autorandr Alternative check for monitor being online (for script polling) head /sys/class/drm/*/status This updates on poll after a few minutes passed on last check. ------------------------------------------------------------------------------- Panning (scrolling display) mode Let display pan as the pointer moves around it xrandr --output DP1-1 --panning 3840x2160 More options let you specify how the mouse controls the panning Back to normal xrandr --output DP1-1 --panning 0x0 ------------------------------------------------------------------------------- Change resolutions of a monitor (add new modes) https://ubuntuforums.org/showthread.php?p=8595940 xrandr # reports no mode for 1024 768 cvt 1024 768 # outputs a mode long for that resolution xrandr --newmode # for example xrandr --newmode "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync # Now add it xrandr --addmode VGA1 1024x768_60.00 # and switch to it xrandr --output VGA1 --mode 1024x768 NOTE this is all at runtime and temporary They need to be added to "/etc/gdm/Init/Default" to setup before login. More detail on xrandr at https://wiki.ubuntu.com/X/Config/Resolution ------------------------------------------------------------------------------- Transform the display Note mouse movements are also transformed Rotate 180 xrandr --output DP1-1 --reflect xy xrandr --output DP1-1 --reflect normal OR xrandr --output DP1-1 --rotate inverted xrandr --output DP1-1 --rotate normal Flip (text is hard to read) xrandr --output DP1-1 --reflect x xrandr --output DP1-1 --reflect y xrandr --output DP1-1 --reflect normal Scale xrandr --output DP1-1 --scale 2x2 xrandr --output DP1-1 --scale 1x1 Affine Transformation # rotate 30 (seems larger) xrandr --output DP1-1 --transform .8660,-.5,0,.5,.8660,0,0,0,1 # shear xrandr --output DP1-1 --transform 1,-.2,0,0,1,0,0,0,1 # back to normal xrandr --output DP1-1 --transform 1,0,0,0,1,0,0,0,1 xrandr --output DP1-1 --transform none ------------------------------------------------------------------------------- Monitor goes blank with "no signal", but xrandr shows it connected... Posted answer to... https://askubuntu.com/questions/951901/#1254962 https://askubuntu.com/questions/405645/ https://askubuntu.com/questions/148725/ If I tell xrandr make any sort of change (it must be a change) then the display is reset and it all comes back. For example, have xrandr turn it off and on (pause between actions)... xrandr --output DP-1-2 --off xrandr --output DP-1-2 --auto However it losses its position information and just becomes a clone, until I again reset the position. Any windows on that display get moved to make them at least partially visible in the other display, though I have found it shift a LOT of windows which should not have been effected too. Basically it is a horrible fix. This fixes the problem some of the time... xset dpms force suspend # or use standby or off (same result) xset dpms force on This is the best solution I found so far, but depends on your setup... Move the display just a little (one pixel), then moving it back! It is enough of a change to get xrandr to resurect the monitor and does not cause my application windows to suddenly change position. xrandr --output DP-1-2 --pos 1921x0; # shift one pixel xrandr --output DP-1-2 --pos 1920x0; # shift it back -------------------------------------------------------------------------------