You are not logged in.
Hello, glad to be here finally participating in the community, long time lurker, every issue ive had so far was asked about and solved by someone on the forums, but this one does not seem to have been encountered by anyone, anywhere, thus it forced me to create an account here.
The issue at hand: I wish to connect 3 monitors to a GTX 1050 TI card, however, i can only connect two since only two crtcs seem to be available. This seems odd since i know the card should be able to output at least 4 independent outputs, simoultaniously. Ive used the same machine with windows 7, all 3 monitors worked fine.
I am able to get at most 2 monitors working at once, using i3-wm they work fine and i3-wm works with both, given specific i3-wm configuration relating to virtual desktops and their corresponding output display. i3-wm is irrelavent regarding this issue.
The latest propriatary nvidia drivers are installed and nouveau is disabled completley. The current nvidia driver version is "565.77".
I had at first had this exact version of propriatary drivers that had been installed with the arch installation using "archinstall" and selecting propriatary drivers for nvidia, i then downgraded it to version 550 with a .run driver downloaded directly from nvidia, then upgraded it again back to 565.77 with a .run driver from nvidia.
All drivers worked but there is this persistent issue where the monitors sometimes show with xrandr, and sometimes they do not. Its not an issue of if theyre connected or not, the display outputs simply do not get listed, HDMI-1 and HDMI-2 are gone. They seem to appear and detect displays if i boot the system without anything plugged in to those ports, then plug the monitors in.
Before downgrading and upgrading the drivers again i was able to get all three displays outputting via nvidia-settings, using the graphical configuration, however, i3wm did not function correctly with them, only displaying an X shaped cursor on either when i would drag my mouse there, this is because the monitor ids are no longer present in xrandr (HDMI-1 and HDMI-2), and i3-wm cannot assign a virtual desktop to a nonexisting display id.
After downgrading and upgrading the propriatary nvidia drivers i cannot get this to work any longer, the displays are still detected by nvidia-settings however, and are detected by xrandr if i boot with them first disconnected.
This seems to be a problem between nvidia drivers and xorg, i have no idea how to proceed.
The command "xrandr --listproviders" outputs:
Providers: number : 1
Provider 0: id: 0x1b7 cap: 0x1, Source Output crtcs: 2 outputs: 4 associated providers: 0 name:NVIDIA-0I am aware that many older gpus truly have only 2 crtcs, but i find it hard to beleive with a GTX 1050 TI espcially when i have gotten 3 monitors to work under windows, and somewhat under linux before driver reinstallation.
My xorg configuration file "/etc/X11/xorg.conf" contents are:
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 565.77
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 565.77
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection
Section "Files"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Lenovo Group Limited L22i-30"
HorizSync 54.0 - 90.0
VertRefresh 48.0 - 75.0
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
ModelName "LG Electronics L222W"
HorizSync 28.0 - 83.0
VertRefresh 56.0 - 75.0
EndSection
Section "Monitor"
Identifier "Monitor2"
VendorName "Unknown"
ModelName "LG Electronics W1934"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 75.0
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "NVIDIA GeForce GTX 1050 Ti"
BusID "PCI:1:0:0"
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "NVIDIA GeForce GTX 1050 Ti"
BusID "PCI:1:0:0"
Screen 1
EndSection
Section "Device"
Identifier "Device2"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "NVIDIA GeForce GTX 1050 Ti"
BusID "PCI:1:0:0"
Screen 2
EndSection
Section "Screen"
# Removed Option "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
# Removed Option "metamodes" "HDMI-0: nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
# Removed Option "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "HDMI-0"
Option "metamodes" "HDMI-0: nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "Stereo" "0"
Option "metamodes" "HDMI-1: nvidia-auto-select +0+0 {AllowGSYNC=Off}"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen2"
Device "Device2"
Monitor "Monitor2"
DefaultDepth 24
Option "Stereo" "0"
Option "metamodes" "HDMI-2: nvidia-auto-select +0+0 {AllowGSYNC=Off}"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
EndSubSection
EndSectionThanks for any input on this output problem ![]()
-i3wm_user
Last edited by i3wm_user (2025-01-26 22:00:01)
Offline
Welcome to the boards.
Get rid of that config. Static configuration of the xorg server will prevent it from dynamically reacting to output changes and that config looks like a mess generated by nvidia-xconfig + some attempts at winging it yourself. As an additional caveat add nvidia-drm.modeset=1 to your kernel parameters to make sure simpledrm is out of the picture. You also don't want to random your way to a solution by trying random .run driver versions -- unless you know for certain you have an issue related to a given driver version and even then you should adjust packages instead of creating a frankenstein setup with different packages. Get rid of those, use the pacman packages.
After doing all of that, reboot, how is the behaviour now? if still not satisfactory, post a journal and the output of xrandr -q and a xorg log
sudo journalctl -b
xrandr -q
cat /var/log/Xorg.0.logLast edited by V1del (2025-01-26 19:53:17)
Offline
Welcome to the boards.
Get rid of that config. Static configuration of the xorg server will prevent it from dynamically reacting to output changes and that config looks like a mess generated by nvidia-xconfig + some attempts at winging it yourself. As an additional caveat add nvidia-drm.modeset=1 to your kernel parameters to make sure simpledrm is out of the picture. You also don't want to random your way to a solution by trying random .run driver versions -- unless you know for certain you have an issue related to a given driver version and even then you should adjust packages instead of creating a frankenstein setup with different packages. Get rid of those, use the pacman packages.
After doing all of that, reboot, how is the behaviour now? if still not satisfactory, post a journal and the output of xrandr -q and a xorg log
sudo journalctl -b xrandr -q cat /var/log/Xorg.0.log
It works now!
Upon restarting the system after deleting the xorg config file "/etc/X11/xorg.conf" and reinstalling all nvidia packages on the system by running "sudo pacman -S $(pacman -Qq | grep nvidia)" all 3 monitors display their assigned i3-wm virtual desktops immediately after login.
Xrandr lists all monitors correctly and theyre configurable graphically via nvidia-settings aswell.
Ive had "nvidia-drm.modeset=1" already set before in my grub config, as well as "nvidia_drm.fbdev=0" which i had to set before this whole debacle for the system to even boot with the additional two monitors, it was getting stuck on nvidia-drm initialization.
This post helped me with that issue for anyone else reading:
https://bbs.archlinux.org/viewtopic.php?id=300148
The output of "xrandr --listproviders" now outputs:
Providers: number : 2
Provider 0: id: 0x1b7 cap: 0x1, Source Output crtcs: 4 outputs: 6 associated providers: 1 name:NVIDIA-0
Provider 1: id: 0x205 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 2 associated providers: 1 name:modesettingThank you for your help, i truly appreciate it ![]()
-i3wm_user
Offline
Great, please mark as [SOLVED] by editing the title in your first post (might have to shorten a bit).
FWIW what happened with your config is that multiple screens where being created, a screen is a xorg concept that doesn't have to have a relation to your physical monitor and was mostly the way to do multi-monitor 20 years ago before the xrandr extensions existed. so you delegated at least one of your monitors to a seperate screen, while your i3wm session was running on the other screen, you will have had two distinct
DISPLAY=:0.1
DISPLAY=:0.2which you could use to send applications to a distinct screen. But that concept is mostly unnecessary except for very specialized use cases.
Offline