Harici ekranım (yıldırım ile dizüstü bilgisayarıma bağlı), önyüklemeden önce bağlanırsa iyi çalışıyor. Bununla birlikte, herhangi bir yöntemle çıkarıldığında veya bağlantısı kesildiğinde, xrandr artık yeniden bağlanan monitörü algılamaz.
Ben koşuyorum Arch Linuxkullanarak, bumblebeeekran kartı kullanımı için. Harici kart şimşek konektörü ile bağlanır. Birisi bana makinede neyin yanlış olduğunu ve hotplugging'i nasıl çalıştırabileceğimi söyleyebilir mi? Teşekkürler.
[Hata ayıklama ayrıntıları]
Birden konuları takip bumblebeeve udevadmben birkaç test yaptım ve Hotplug senaryoyu yaptı. Ancak sorun hala çözülmedi. Sonuç aşağıdaki gibi gönderilir.
Bombus arısı için, çok fazla ayarlama yapmadım, çünkü ikinci monitör çalışırken takılmadığında iyi algılıyor.
Çalışırken takma ile ilgili sorun için. Aşağıdakileri yaptım:
Monitör normal çalışıyorsa, xrandr --querygeri döner
Screen 0: minimum 8 x 8, current 2944 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 382mm x 215mm
1920x1080 60.02*+
...
DP1 connected 1024x768+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.00*
...
Monitörü DP2'den açıkken çıkarırken udevadm monitor --environment --udevtoplanan bilgiler:
UDEV [979.022342] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
ACTION=change
DEVNAME=/dev/dri/card0
DEVPATH=/devices/pci0000:00/0000:00:02.0/drm/card0
DEVTYPE=drm_minor
HOTPLUG=1
ID_FOR_SEAT=drm-pci-0000_00_02_0
ID_PATH=pci-0000:00:02.0
ID_PATH_TAG=pci-0000_00_02_0
MAJOR=226
MINOR=0
SEQNUM=2650
SUBSYSTEM=drm
TAGS=:master-of-seat:uaccess:seat:
USEC_INITIALIZED=3775241
Monitörü takarken:
UDEV [1111.426386] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
ACTION=change
DEVNAME=/dev/dri/card0
DEVPATH=/devices/pci0000:00/0000:00:02.0/drm/card0
DEVTYPE=drm_minor
HOTPLUG=1
ID_FOR_SEAT=drm-pci-0000_00_02_0
ID_PATH=pci-0000:00:02.0
ID_PATH_TAG=pci-0000_00_02_0
MAJOR=226
MINOR=0
SEQNUM=2651
SUBSYSTEM=drm
TAGS=:seat:uaccess:master-of-seat:
USEC_INITIALIZED=3775241
UDEV [1111.522857] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
ACTION=change
DEVNAME=/dev/dri/card0
DEVPATH=/devices/pci0000:00/0000:00:02.0/drm/card0
DEVTYPE=drm_minor
HOTPLUG=1
ID_FOR_SEAT=drm-pci-0000_00_02_0
ID_PATH=pci-0000:00:02.0
ID_PATH_TAG=pci-0000_00_02_0
MAJOR=226
MINOR=0
SEQNUM=2652
SUBSYSTEM=drm
TAGS=:seat:uaccess:master-of-seat:
USEC_INITIALIZED=3775241
udevMonitör takılıyken donanımı algılayabiliyor gibi görünüyor , bu yüzden xrandryeni monitörü kullanmanıza yardımcı olmak için bir udev kuralı oluşturdum . İçin betiğim /etc/udev/rules.d/95-monitor-hotplug.rulesşöyledir:
ACTION=="change", SUBSYSTEM=="drm", RUN+="/usr/local/bin/hotplug_monitor.sh"
ve /usr/local/bin/hotplug_monitor.sholduğu
#!/bin/sh
export XAUTHORITY=/home/chong/.Xauthority
function connectDP1(){
DISPLAY=:0 xrandr --output DP1 --auto --right-of eDP1
}
function disconnectDP1(){
DISPLAY=:0 xrandr --output DP1 --off
}
function connectDP2(){
DISPLAY=:0 xrandr --output DP2 --auto --right-of eDP1
}
function disconnectDP2(){
DISPLAY=:0 xrandr --output DP2 --off
}
xrandr | grep "DP1 connected" &> /dev/null && connectDP1 || disconnectDP1
xrandr | grep "DP2 connected" &> /dev/null && connectDP2 || disconnectDP2
Betik normal olarak çalışır ve kapanır, ancak daha sonra xrandr --queryyine de gösterilir DP1ve DP2bağlantısı kesilir.