Monitor HDMI non rilevato dal laptop dopo averlo scollegato e ricollegato

5

Ho un monitor esterno collegato alla porta HDMI del mio laptop. Quando avvio il mio portatile, sia lo schermo del laptop che il monitor si attivano correttamente e funzionano perfettamente. Tuttavia, ogni volta che scollego il monitor esterno, e poi lo ricollego, Ubuntu non riesce a rilevare che il monitor è stato collegato nuovamente e lo mostra come disconnesso. L'unico modo per riaccendere il monitor esterno è riavviare il mio laptop.

Specifiche del portatile: Dell Inspiron 15 Gaming Nvidia GeForce GTX 960M

Output della sezione display lshw:

       *-display
            description: 3D controller
            product: GM107M [GeForce GTX 960M]
            vendor: NVIDIA Corporation
            physical id: 0
            bus info: [email protected]:01:00.0
            version: a2
            width: 64 bits
            clock: 33MHz
            capabilities: pm msi pciexpress bus_master cap_list rom
            configuration: driver=nvidia latency=0
            resources: irq:130 memory:e2000000-e2ffffff memory:d0000000-dfffffff memory:e0000000-e1ffffff ioport:e000(size=128) memory:e3000000-e307ffff

Ecco l'output xrandr quando sono collegate entrambe le schermate:

Screen 0: minimum 8 x 8, current 3840 x 1113, maximum 16384 x 16384
eDP-1-1 connected primary 1920x1080+0+33 344mm x 193mm
   1920x1080     60.00*+  59.93    48.00  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98  
   1280x1024     60.02  
   1440x900      59.89  
   1280x960      60.00  
   1360x768      59.80    59.96  
   1152x864      60.00  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   960x600       60.00  
   960x540       59.99  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   800x512       60.17  
   700x525       59.98  
   640x512       60.02  
   720x450       59.89  
   640x480       60.00    59.94  
   680x384       59.80    59.96  
   576x432       60.06  
   512x384       60.00  
   400x300       60.32    56.34  
   320x240       60.05  
DP-1-1 connected 1920x1080+1920+0 510mm x 290mm
   1920x1080     60.00*+
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1152x864      75.00  
   1024x768      75.03    60.00  
   832x624       74.55  
   800x600       75.00    60.32    56.25  
   640x480       75.00    59.94  
   720x400       70.08  
HDMI-1-1 disconnected

Dopo aver scollegato e ricollegato, DP-1-1 si presenta come disconnesso.

Inoltre, xrandr --auto non riaccende lo schermo. Ho anche provato a riavviare lightdm e unity ma senza risultati.

Ho provato con i seguenti driver di visualizzazione e nessuno risolve il problema:

  • noveau driver open source
  • nvidia-375.26 (consigliato da nvidia)

Si noti che in Windows 10, il monitor viene riconosciuto dopo la disconnessione, il ciclo di plug-in, quindi questo non dovrebbe essere un problema con la scheda madre.

Ho bisogno di scollegare il mio schermo molto mentre devo andare alle riunioni ecc. e usare il mio portatile lì. Fondamentalmente, il problema di cui sopra mi sta causando il riavvio del mio laptop fino a 5 volte al giorno. Per favore aiuto!

Nota questo non è lo stesso di Secondo monitor non rilevato Dopo HDMI scollegato e ricollegato

    
posta mdewit 21.01.2017 - 13:31

1 risposta

1

Il più vicino possibile al tuo problema è questo thread ( ubuntuforums.org - Nvidia GTX 950 e TV non vedere il segnale dopo la modifica dell'ingresso o spegnimento / accensione ) che fa riferimento a soluzioni per nVidia 970/980. Sembra che il tuo 960 sia nel mezzo.

La soluzione proposta è quella di ripristinare il monitor in una cattiva modalità e quindi una buona modalità usando questo codice:

#!/bin/sh
#Fix TV state when HDMI link is lost.
#By Mario Limonciello <email address hidden>
sleep 10
OUTPUT="HDMI-0"
BAD_MODE="1280x720"
GOOD_MODE="1920x1080"

for MODE in $BAD_MODE $GOOD_MODE; do
DISPLAY=:0 xrandr --output $OUTPUT --mode $MODE
sleep 2
done

Penso che questo script possa essere migliorato ma volevo pubblicarlo nella sua incarnazione originale.

Uno degli autori nel link voleva impostare udev per chiamare automaticamente lo script sull'evento hot-plug. Ho fatto questo per HDMI con questo codice ( hotplugtv ) in passato per correggere il bug di Pulseaudio 8 di Ubuntu 16.04:

#!/bin/bash

if [[ $(cat /sys/class/drm/card*-HDMI-A-1/status | grep -Ec "^connected") -eq 1 ]]; then
        /bin/sleep 2;
        export PULSE_RUNTIME_PATH="/run/user/1000/pulse/";
        sudo -u rick -E pacmd set-card-profile 0 output:hdmi-stereo;
else
        export PULSE_RUNTIME_PATH="/run/user/1000/pulse/";
        sudo -u rick -E pacmd set-card-profile 0 output:analog-stereo;
fi

exit 0

Dovrai modificare il test if con la tua directory /sys/class/drm/... . Quindi modifica il lato vero del test if con il file di script che ripristina lo schermo hdmi. Sul lato falso del test if basta sostituire il codice con un : (noop) se non c'è nulla da fare quando il dispositivo hdmi è scollegato.

Per chiamare questo script da udev durante gli eventi hot-plug, crea il file /etc/udev/rules.d/99-hotplugtv.rules contenente:

ACTION=="change", SUBSYSTEM=="drm", ENV{HOTPLUG}=="1", RUN+="/path/to/hotplugtv"

Modifica /path/to/ nel percorso in cui hai inserito lo script hotplugtv .

    
risposta data WinEunuuchs2Unix 27.01.2017 - 01:23

Leggi altre domande sui tag