Ноутбук не видит внешний монитор (hdmi)
Добрый день! Есть необходимость на Ubuntu 16.04 (Unity) подключить монитор к ноутбуку (DELL Inspiron 7559-1257) с единственным видеовыходом — HDMI. В ноуте две видеокарты: Intel и Nvidia, но с установкой свежих драйверов наконец-то удалось полностью переключиться на Nvidia, однако внешние мониторы как не определялись, так и не определяются.
На видеокарту Nvidia GTX 960M установлен драйвер nvidia-375 (375.66). При подключении разных мониторов через разные переходники к порту HDMI результат нулевой, система вообще не видит, что к порту что-либо подключается (загрузка с подключенным монитором тоже результат не дает).
Пробовал следующие шнуры/переходники и мониторы: HDMI->DP, HDMI->DVI-D, HDMI->DVI, HDMI->DVI->D-Sub(VGA). Единственное, что при этом меняется, — при подключении на мониторе пропадает надпись, что кабель не подключен, но больше ничего не происходит, экран всегда черный.
Подскажите, пожалуйста, что нужно сделать, чтобы подключались внешние мониторы.
Ты-то его сам видишь?
А покажи содержимое директории /sys/class/drm/, когда подключен внешний монитор.
И с подключенным, и с отключенным содержимое вот такое:
А это выход HDMI. Тогда следующее. Включи на всякий случай ноут с подключенным монитором, потом зайди в этот каталог и найди файлик edid. Этот файлик пустой или там есть что-то?
Пробовал следующие шнуры/переходники и мониторы: HDMI->DP, HDMI->DVI-D, HDMI->DVI, HDMI->DVI->D-Sub(VGA).
А можно поподробнее про этот эксперимент? Кабели были все время разные или один и тот же? То есть кабель HDMI-HDMI один и тот же плюс разные переходники или кабели разные были?
Во-первых, поставь бумблиби (или что там сейчас в онтопике для оптимуса).
Во-вторых, чаще всего на мониторах с тройным входом (VGA/DVI-D/(DP/HDMI)) по умолчанию первым стоит VGAшник. Так что открывай мануал к монитору и перещелкивай входы вручную.
Поставил по этой инструкции. Как и прежде с более ранними драйверами nvidia, иксы после установки bumblebee не запускаются.
Мониторы максимум с двойным входом. С компа без проблем выводится изображение по DVI-D.
Кабели разные: DVI-D→DVI-D, HDMI→DP, D-Sub→D-Sub.
Переходники: HDMI→DVI-D, HDMI→DVI, DVI→D-Sub.
Мониторы: DVI-D+D-Sub, DP+D-Sub, D-Sub.
С компа без проблем выводится на DVI-D и D-Sub, так что за исключением входа DP одного из мониторов, кабеля HDMI→DP и переходников все проверено.
Понятно. У тебя по входу HDMI не запрашивается EDID, поэтому система считает, что ничего не подключено. А монитор понимает, что к нему кабель подключили, по сигналу Hot Plug Detect. Но видеокарта (кто-то из двух: intel или nvidia) ничего не запрашивает при подключении монитора. Можно попробовать насильно прописать EDID и посмотреть, что будет и в этом ли проблема.
Вот, например, такой траблшутинг описан:
Но только там решение исходит из того, что кто-то все же EDID получил (у intel забирается EDID из card0), а у тебя вообще его нет. Но его можно в файлик поместить и прописать таким же образом.
А когда работаешь на intel, то второй монитор intel видит?
Неа. С предыдущими драйверами nvidia вообще на nvidia переключить не удавалось, и монитор внешний точно так же не виделся. На lspci вообще почти наглухо зависало. Боялся, что с железом могли быть какие-то косяки, но теперь с nvidia-375 хоть lspci как надо работает. )
Попробую с EDID поэкспериментировать по инструкции.
Попробую с EDID поэкспериментировать по инструкции.
Для начала его надо раздобыть. Или же варинат — по документации монитора правильные ModeLine прописать и другие параметры. EDID ты можешь вытащить из PC. Должен быть файлик 128 байт. Его поместить в /etc/X11/ , а в строчке Option «CustomEDID» прописать путь к нему. Но только надо не CRT-0 использовать, а DFP-0 или DFP-1.
Если что-то получится, то напиши сюда. Мало ли — может, кому-то пригодится.
И вот еще опуию ConnectedMonitor попорбуй. Это из документации nvidia. Тут как раз написано, что ее можно использовать, если по DDC ты не получил EDID. Вдруг после пинка получит EDID.
With this option you can override what the NVIDIA kernel module detects is connected to your graphics card. This may be useful, for example, if any of your display devices do not support detection using Display Data Channel (DDC) protocols. Valid values are a comma-separated list of display device names; for example:
«CRT-0, CRT-1» «CRT» «CRT-1, DFP-0»
WARNING: this option overrides what display devices are detected by the NVIDIA kernel module, and is very seldom needed. You really only need this if a display device is not detected, either because it does not provide DDC information, or because it is on the other side of a KVM (Keyboard-Video-Mouse) switch. In most other cases, it is best not to specify this option.
Таак. Продолжаем эксперименты. Пошел искать EDID на компе — обнаружил, что у видеокарты есть HDMI-выход. ))) Давно очень покупал, уже и запамятовал. Итак, результаты тестов.
Схема HDMI→DP — не работает. Возможно, насчет шнура обманули, и он работает только в направлении DP→HDMI. На самом деле, долго искал шнур именно с направлением HDMI→DP, и, похоже, таких действительно не осталось в продаже.
Схема HDMI→DVI→D-Sub — не работает.
Схема HDMI→DVI-D — работает! И это удивительно, поскольку тут тоже Nvidia (GeForce 9800 GT) и та же ось Ubuntu 16.04.
Хотя драйвер сейчас стоит nouveau: из-за того, что при выводе на DVI nvidia-340 в большинстве случаев не определяет разрешение и ставит какое-то очень низкое, а если тот же монитор подключаю в D-Sub, то такой проблемы нет.
По крайней мере, выявилась рабочая схема, с которой надо проводить дальнейшие тесты на ноуте: HDMI→DVI-D.
И не будет работать. В HDMI *нет* аналоговых выходов! Они есть только в DVI (и то не всегда). Поэтому ожидать на D-SUB чего-то не стоит.
HDMI can only be used with older analog-only devices (using connections such as SCART, VGA, RCA, etc.) by means of a digital-to-analog converter or AV receiver, as the interface does not carry any analog signals (unlike DVI, where devices with DVI-I ports accept or provide either digital or analog signals).
Хотя драйвер сейчас стоит nouveau: из-за того, что при выводе на DVI nvidia-340 в большинстве случаев не определяет разрешение и ставит какое-то очень низкое
Похоже, что еще и кабель DVI плохой. Это наиболее частая причина. Или же монитор не отдает EDID через цифровой выход.
С nouveau на DVI все отлично выводится. Да и раньше вроде бы до nvidia-340 какой-то более ранний проприетарный драйвер стоял — тоже все хорошо было. Так что вряд ли дело в кабеле.
Насчет HDMI→D-Sub понятно теперь. Думал, как и в DVI, в нем аналог тоже передается (про подвиды DVI знаю, что может только цифра либо только аналог передаваться).
С nouveau на DVI все отлично выводится. Да и раньше вроде бы до nvidia-340 какой-то более ранний проприетарный драйвер стоял — тоже все хорошо было. Так что вряд ли дело в кабеле.
А, я не так понял. Я прочел и понял так, что на nouveau проблемы с определением разрешения.
Насчет HDMI→D-Sub понятно теперь. Думал, как и в DVI, в нем аналог тоже передается (про подвиды DVI знаю, что может только цифра либо только аналог передаваться).
EDID—то он получит, скорее всего, если только с линиями DDC нет проблем в переходниках по пути. но на экране все равно будет чернота.
Попробую с EDID поэкспериментировать по инструкции.
У тебя не получится, так как в инструкции предполагается, что intel получил EDID, а строчкой CustomEDID ты его просто передаешь еще и nvidia. Мы выше проверили, что у тебя вообще никто ничего не получил через HDMI — файл edid пустой. В card1-eDP-1 как раз EDID окажется, но это EDID матрицы ноута. Поэтому если EDID вообще железо не получает (это очень странно), то надо тогда этот файл снять с писюка твоего (тот же файлик edid из /sys скопировать) и положить в каталог /etc/X11. А дальше уже xorg.conf нужным образом подправить. Не знаю, какой идентификатор будет использоваться nvidia для HDMI: DFP-0 (это, скорее, матрица будет), DFP-1 и т. д.
…и положить в каталог /etc/X11. А дальше уже xorg.conf нужным образом подправить.
Ок, спасибо за подсказку, попробую так. ) А то по оригинальному пути никак не дает файл пересохранять.
Ну, да, надо монитор подключить к компу, где он нормально определяется. тогда файлик EDID в /sys уже будет. Его скопировать, записать на ноут и пробовать, что получается. Файл — 128 байт.
Приехал-таки мне (со второй попытки) из Китая переходник HDMI→D-Sub. И (о, чудо!) оба монитора на лету опознаются, корректно определяются и сами подключаются дополнительным рабочим столом. Магия! )
Вопрос в том, что же мешает видеокарте то же самое делать без аналогово-цифрового преобразования сигнала от монитора к ноуту. Загадка… Но хоть так теперь работает, и то хорошо. ^_^
Приехал-таки мне (со второй попытки) из Китая переходник HDMI→D-Sub.
Преобразователь, ты хотел сказать?
Вопрос в том, что же мешает видеокарте то же самое делать без аналогово-цифрового преобразования сигнала от монитора к ноуту. Загадка… Но хоть так теперь работает, и то хорошо. ^_^
Пока трудно сказать, но я бы вместо того, чтобы покупать переходники на D-SUB прописал бы EDID монитора из HDMI в конфиг и попробовал бы с этим взлететь. Зачем сразу так деньги тратить? Тем более, что зачем-то теперь все работает через VGA.
Приехал-таки мне (со второй попытки) из Китая переходник HDMI→D-Sub. И (о, чудо!) оба монитора на лету опознаются, корректно определяются и сами подключаются дополнительным рабочим столом. Магия! )
Вот поэтому я бы первым делом проверил бы кабель HDMI, потому что если через переходник нормально опознается, то это значит, что HDMI получает EDID через переходник по линии DDC и генерит картинку. А раз у тебя чистый кабель HDMI не работает, то проблема может быть как раз в нем. По-моему, мы с этого и начали обсуждение.
Или же еще вариант, что через HDMI монитор не отдает EDID по какой-то причине. Через VGA отдает, а через HDMI — нет. Проверить можно только на другой системе (драйвере). Например, в виндах. Просто раз у тебя разрешение через VGA определилось, то, значит, порт HDMI компютера информацию таки пытается получить по DDC и получает: а порт VGA монитора EDID нормально отдает, а переходник его перенаправляет в HDMI компа.
А раз у тебя чистый кабель HDMI не работает, то проблема может быть как раз в нем. По-моему, мы с этого и начали обсуждение.
Я писал выше, что проверил с компа схему HDMI→DVI-D. То есть здесь у меня переходник HDMI→DVI-D + кабель DVI-D→DVI-D. Все работает. На компе тоже стоит Ubuntu 16.04 и видеокарта Nvidia.
1. DVI-D и HDMI у кого? У компа DVI-D, а монитор HDMI?
2. А на ноуте ты каким кабелем проверяешь? HDMI-HDMI?
Не, HDMI-монитора у меня нету, и кабеля HDMI тоже нету.
У компа выходы HDMI, DVI-I и D-Sub (Nvidia GeForce 9800 GT).
У монитора входы DVI-D и D-Sub.
Кабели проверенные DVI-D—DVI-D и D-Sub—D-Sub.
Переходники проверенные HDMI→DVI-D, HDMI→DVI-I и DVI-I→D-Sub.
Плюс преобразователь HDMI→D-Sub, тоже проверен.
1. А этот переходник как проверялся? У тебя компьютер с HDMI-выходом (кроме ноута)? Как ты узнал, что EDID через него получен? Смотрел? Проверь xrandr —verbose
2. Еще раз ход мысли повторю. Ты купил преобразователь HDMI-D-Sub. Если к ноуту его подключить, то монитор внезапно определяется и кажет картинку. Так? Если он EDID получает, то в выводе xrandr —verbose в информации по выходу HDMI-1-1 ты должен увидеть дамп полученного EDID. Ты его видишь?
3. Если видишь, то это означает, что драйвер через HDMI ноутбука все же пытается читать EDID по линиям DDC вплоть до монитора. То есть дело не в ноуте, получается. Значит, дальше идет кабель или сам монитор. Если кабель HDMI->DVI-D точно рабочий (см п .1 этого поста), то вопрос в мониторе: отдает ли он EDID через свой DVI-D. Это проверить можно, подключив через DVI-D этот монитор к компу. И проверить xrandr —verbose , видно ли EDID по этому входу от твоего монитора.
Пока я не могу понять, где же такое чудо происходит.
Да, и у компа, и у ноута есть HDMI-выход.
1. Монитор подключен к компу через переходник HDMI→DVI-D. Работает. Вывод xrandr —verbose : http://static.biznes-gazeta.ru/xrandr—verbose.txt.
При этом, как ни странно, edid пустой:
2. Монитор подключен к ноуту через преобразователь HDMI→D-Sub. Работает. Вывод xrandr —verbose : http://static.biznes-gazeta.ru/xrandr—verbose2.txt.
edid так же пуст.
3. Монитор подключен к ноуту через переходник HDMI→DVI-D. Не работает. Вывод xrandr —verbose : http://static.biznes-gazeta.ru/xrandr—verbose3.txt.
При этом, как ни странно, edid пустой:
Так не проверишь. Ты его открой — там должна быть информация, даже если он 0. Остальное сейчас посмотрю.
edid по порядку для приведенных выше тестов (HEX):
EDID в пп. 1 и 2 одинаковые по сути, но просто переходник расширил его до расширенной версии EDID. Что касается содержимого, то информацию из монитора компьютер и ноут через HDMI читают правильно.
Если честно, то какой-то полтергейст. Через преобразователь HDMI->VGA ноут читает EDID, а через HDMI->DVI-D не читает. Но тот же монитор, тот же переходник HDMI->DVI-D, но на компе все окей читает.
То есть установили, что монитор через DVI-D EDID отдает. И также видно, что выход HDMI ноута EDID спрашивает и все работает, когда он его получает.
Хочу еще раз уточнить:
1. Переходник HDMI->DVI-D в опытах с компом и ноутом один и тот же?
2. Версия плохого контакта разъема переходника HDMI->DVI-D в ноуте проверялась? Быть может, что преобразователь HDMI->VGA хорошо контачит, а этот плохо и поэтому чип не понимает, что к нему подключился монитор (есть там сигнальчик Hot Plug Detect, контакт 19) и просто не инициализирует запрос EDID.
The HPD (Hot-Plug-Detect) feature is a communication mechanism between a source and a sink device that makes the source device aware that it has been connected/disconnected to/from the sink device. When an HDMI cable is inserted between the two devices, the resulting hot-plug detection instantiates a start-up communication sequence. The EDID information stored in the sink device gets read by the source device though the DDC bus, and the source device typically presents itself on the CEC link and requests basic status information from the sink device such as its power status as well as other devices on the HDMI chain.
1. да, один и тот же.
2. контакт хороший, везде достаточно плотно подключается, нигде ничто не болтается.
может со временем где-нибудь попадется мне HDMI-монитор — проверю на нем еще. )
2. контакт хороший, везде достаточно плотно подключается, нигде ничто не болтается.
Плотно подключается — это не показатель того, что контакт плохой.
может со временем где-нибудь попадется мне HDMI-монитор — проверю на нем еще. )
Неправильный эксперимент. Эта фраза должна быть такой: «может со временем где-нибудь попадется мне HDMI->DVI-D переходник — проверю на нем еще. )» И я бы все же нашел еще какой-нибудь, потому что тема висит неразрешенная и ответа не найдено. Моник EDID отдает, кабель проверен, HDMI у ноута работает и процедуру запроса EDID выполняет. Пока более вменяемого объяснения, чем потеря контакта в HDMI-порте, я придумать не могу.
И я бы все же нашел еще какой-нибудь
Протестировал с еще двумя переходниками HDMI->DVI-I — результат тот же: не видит монитор.
Блин, хрень какая-то. Тогда более фантастическое предположение (я в него не верю, но уже версий нет): какая-то электрическая несовместимость выхода HDMI и входа монитора. Скажем, уровни сигналов разные. То есть действительно тогда с другим монитором проверить.
Вопрос, пока не забыл: а с преобразователем HDMI->VGA горячее подключение работает? Ну, то есть, ты загружаешься, а потом подключаешь в HDMI монитор. Срабатывает?
И туда же вопрос: а когда в Ubuntu втыкал, то в какой конфигурации это происходит? Ты в Ubuntu втыкал вторым монитором на горячую? Или основным?
с преобразователем HDMI->VGA горячее подключение работает?
Ты в Ubuntu втыкал вторым монитором на горячую? Или основным?
На компе на горячую и основной менял, и двухмониторный режим вроде тоже работает. Правда преобразователь к компу не подключал. Можно попробовать одновременно задействовать порты DVI и HDMI.
Аналогичная проблема.
Простите за некропостинг, но как я понимаю, проблема так и не решена, ау меня на данный момент аналогичная проблема. Может еще какие нибудь варианты есть? Добавить могу только то, что этот же ноутбук с этим же монитором в винде отлично работают.
Источник