Монитор HDMI, не обнаруженный ноутбуком после отключения и включения назад

Мне присоединили внешний монитор к моему порту HDMI ноутбука. Когда я загружаю свой ноутбук, оба, экран ноутбука и Монитор успешно включают и работают отлично. Однако каждый раз, когда я отключаю внешний монитор и затем включаюсь, он въезжает задним ходом, Ubuntu не удается обнаружить, что монитор включается снова и показывает его, как разъединено. Единственный способ заставить внешний монитор включать снова, должен перезагрузить мой ноутбук.

Спецификации ноутбука: Dell Inspiron 15, Играющий NVIDIA GeForce GT 960M

Вывод lshw раздела Display:

       *-display
            description: 3D controller
            product: GM107M [GeForce GTX 960M]
            vendor: NVIDIA Corporation
            physical id: 0
            bus info: pci@0000: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

Вот мой вывод xrandr, когда оба экрана присоединяются:

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

После отключения и включения назад, DP-1-1 обнаруживается, как разъединено.

Кроме того, xrandr - автоматический не снова включает экран. Также испытанный перезапуск lightdm и единица, но напрасно.

Я попробовал следующими драйверами дисплеев, и ни один не решает проблему:

  • драйвер с открытым исходным кодом noveau
  • nvidia-375.26 (рекомендуемый Nvidia)

Обратите внимание, что в Windows 10, монитор повторно обнаруживается, когда после отключения, включите цикл, таким образом, это не должно быть проблемой с материнской платой.

Я должен отключить свой экран много, когда я должен перейти к встречам и т.д. и использовать свой ноутбук там. В основном вышеупомянутая проблема заставляет меня перезагружать свой ноутбук до 5 раз в день. Помогите!

Обратите внимание, что это не то же как Второй Монитор, Не Обнаруженный После того, как HDMI отключил и включил назад

5
задан 13 April 2017 в 05:24

1 ответ

Самым близким, который я мог найти к Вашей проблеме, является этот поток ( ubuntuforums.org - Nvidia GTX 950 и ТВ, не видя сигнал после входного изменения или питания прочь/на ) который ссылочные решения для Nvidia 970/980. Казалось бы, что Ваши 960 являются промежуточными.

решение, предложенное там, состоит в том, чтобы сбросить монитор к плохому режиму и затем хорошему режиму с помощью этого кода:

#!/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

я думаю, что этот сценарий может улучшаться, но требоваться для регистрации его в, он - исходное воплощение.

<час>

Один из авторов в ссылке хотел установить udev для автоматического вызова сценария на событии замены в горячем режиме. Я сделал это для HDMI с этим кодом (hotplugtv) в прошлом для фиксации ошибки pulseaudio 8 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

необходимо будет изменить если тест с Вашим /sys/class/drm/... каталог. Затем измените истинную сторону, если тест с Вашим файлом сценария, который сбрасывает экран HDMI. На ложной стороне, если тест просто заменяет код : (noop), если там не имеет отношения, когда hdmi устройство отключается.

для вызова этого документа на получение от udev во время событий замены в горячем режиме, создают файл /etc/udev/rules.d/99-hotplugtv.rules, содержащий:

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

Изменение /path/to/ к пути, куда Вы поместили hotplugtv сценарий.

1
ответ дан 23 November 2019 в 10:41

Другие вопросы по тегам:

Похожие вопросы: