LINUX.ORG.RU

Xorg, vga-to-dvi и страдания

 ,


1

1

Привет, народ! Небольшое вступление: обычно не пишу на форумы за помощью, т.к. обычно все проблемы по 10 раз разбирались и обсуждались, но в случае с этим не смог найти ничего подходящего.

Дано: Комп с nvidia 650ti boost и монитор viewsonic va2016w с VGA выходом, у видеокарты 2 DVI-D входа соответственно используется переходник.

Проблема: xorg serever не видит монитор и не может выставить адекватное разрешение экрана сам. Но ничего, есть xrandr им подкоректируем. Но при использовании xrandr комп виснет намертво после 5-10 минут стабильной работы, логи ничего подозрительного не показывают, работала система и работает вот только картинка на мониторе не меняется. Проверено на Ubuntu разных версий. Mint просто не устанавливается, виснет таким же образом при работе Live версии при установке. Но мы легких путей не ищем, было решено собрать arch и сконфигурировать иксы с нуля что бы избавиться от этой напасти. И вот голые иксы монитор не видят от слова вообще. По дефолту без xorg.conf файла выдают на монитор что-то с явно большей частотой чем монитор может вывести отсюда черный экран и ошибка «вне диапазона» (out of range) любая конфигурация xorg.conf приводит к крашу иксов на старте с ошибкой что иксы не видят устройство вывода. ¯\_(ツ)_/¯ С горя использую винду.

9 из 10 случаев проблем с определением мониторов - испорченные или плохо сделанные кабели/переходники.

Elyas ★★★★★ ()
Ответ на: комментарий от Elyas

Мне тоже все больше кажется что проблемма чисто в железе а именно в переходничке и нерешаема программными средствами. Мне кажется через переходник xorg не может получить инфу с монитора через dvi

Zmeu213 ()
Ответ на: комментарий от Zmeu213

Скорее всего, переходник.

С горя использую винду.

А винда монитор видит? Не просто разрешение, которые ты выставил, а чтобы прямо вот все. Модель монитора, например, винда видит в списке устройств или ставит что-то типа «Generic monitor» или «Стандартный монитор» (не знаю, как это сейчас в виндах зовется)?

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)

«xrandr -s 1920x1080_60.00»? Попробуй через «nvidia-settings», может получится

ZenitharChampion ★★★★★ ()

придется xorg.conf самому сделать с modeline для своего монитора

modeline можно нагуглить или монитор обычной видеокарте с vga подключить и логи xorg посмотреть. Еще вроде команда есть dmidecode для получения инфы о мониторе.

irton ★★★★★ ()

Переходники вга-дви частенько не имеют двух проводков - шины DDC (физически i2c).Соттветственно - xorg serever не видит монитор.

anonymous ()

у видеокарты 2 DVI-D входа соответственно используется переходник.

К DVI-D аналог не стыкуется. Контактов не хватит!:-)

SergeySVold ★★★★ ()
Ответ на: комментарий от anonymous

Ого, надо же... Век живи... Эра vga мне запомнилась этим сокровенным SIGNAL OUT OF RANGE. Почему тогда даже венда не умела блокировать неподдерживаемые режимы?

anonymous ()

Данные взяты из Service Manual для твоего монитора. Создай xorg.conf и впиши туда:

Section "Monitor"
	Identifier "<default monitor>"
	VendorName "ViewSonic"
	ModelName "VA2016W"
	DisplaySize 433 271
        Gamma 2.20
	HorizSync 30-82
	VertRefresh 50-75
	Option "PreferredMode" "1680x1050"
	# Horizontal:
	#    Active Time: 1680 px
	#    Sync Offset: 104 px
	#    Border: 0 px
     	#    Blanking Time: 560 px
	#    Sync Pulse Width: 176 px
     	#    Frequency 65.29 kHz
     	# Vertical:
     	#    Active Time: 1050 lines
     	#    Sync Offset: 3 lines
     	#    Border: 0 lines
     	#    Blanking Time: 39 lines
     	#    SyncPulse Width: 6 lines
     	#    Frequency: 59.95 Hz
	ModeLine "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089  -hsync +vsync
EndSection
Zubok ★★★★★ ()
Ответ на: комментарий от Zubok

Спасибо! сейчас попробую воткнуть это в свежий дебиан. К слову в нем повторилась история с ubuntu. Да винда не видит модели монитора и стандартные драйверы тоже не выводят оптимальное разрешение, драйвера от nvidia правят ситуацию.

Zmeu213 ()
Ответ на: комментарий от Zmeu213

К слову, ты проприетарный драйвер используешь или nouveau?

Zubok ★★★★★ ()
Ответ на: комментарий от Zmeu213

Я спрашиваю, потому что как-то раз кому-то давал ModeLine, а проприетарный отказался понимать PreferredMode, хотя нужное разрешение в списках появлялось, оно по умолчанию не ставилось.

В случае с проприетарным можно вариант такой.

Вот ссылка на EDID твоего монитора. Это файл 128 байт. Его кладешь в /etc/X11/

http://rgho.st/75nrKq79Y

И далее в xorg.conf пишешь только это:

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    Option         "CustomEDID" "CRT-0:/etc/X11/edid.bin"
EndSection

И тогда наверняка вдруг запляшут облака и кузнечик запиликает на скрипке.

Zubok ★★★★★ ()
Ответ на: комментарий от Zubok

Спасибо огромное! Прямо сейчас используется nouveau так как онидет из коробки к дистрибутивам и на арче я тоже его ставил. С Вашим conf файлом я уже работаю прямо сейчас и крашей нет что уже огромной прогресс. Попробую сейчас поставить проприетарщину по вашему совету. Еще раз спасибо.

Zmeu213 ()
Ответ на: комментарий от Zmeu213

Решено

Да, это действительно сработало. Ни одного краша за весь день.

Zmeu213 ()
10 апреля 2017 г.
Ответ на: комментарий от Zubok

аналогичная проблема

Здравствуйте! Уже долгое время мучаюсь с аналогичной проблемой как и у ТС, но уровень знаний не дает возможности в этом разобраться. Не могли бы вы, если не трудно, помочь с аналогичной проблемой?

lilinux ()
Ответ на: аналогичная проблема от lilinux

Лучше, конечно, создать новую тему и туда все повесить. Ну, можно и тут. Только так вопросы не задают. Что значит, что аналогичная проблема? Проблема с чем? Что за карта, что за монитор, что за проблема? Эти данные и без уровня квалификации можно рассказать.

Вот, что нужно:

1. Описание конфигурации (какие карты и как все подключено) и проблемы.

2. Лог исков /var/log/Xorg.0.log выложить на pastebin.com

3. Файл конфигурации, если он вообще есть, /etc/X11/xorg.conf или файлы из /etc/X11/xorg.conf.d/*

4. Вывод команды xrandr --verbose.

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

Спасибо, что откликнулись!

1. Видеокарта NVIDIA GeForce GTX 650, монитор Benq vw2245z, также использую переходник VGA-DVI. На винде всё нормально, но как ставлю любой дистрибутив линукса - экран никогда не обнаруживается нормальный, в итоге обходными путями каждый раз запускаю данный скрипт:

#!/bin/sh
xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
xrandr --addmode DVI-I-1 1920x1080_60.00
xrandr --output DVI-I-1 --mode 1920x1080_60.00

2. Лог - https://pastebin.com/gQ05jYM9

3. в X11 нет ни файла xorg.conf, ни папки xorg.conf.d :(

4. https://pastebin.com/nb1s6trb

Если поможете, то очень меня выручите. Заранее благодарю!

lilinux ()
Ответ на: комментарий от lilinux

Значит, так. EDID твоя карта не получает. Я все же считаю, что проблема с переходником.

На винде всё нормально, но как ставлю любой дистрибутив линукса - экран никогда не обнаруживается нормальный,

А вот тут несколько вопросов:

1. Можно ли в виндах удалить монитор из диспетчера устройств и заново загрузиться? Что он скажет? Какое разрешение устанавливается? Понятно, да? Удалить монитор и заново чтобы он задетектился. Важно: какие-то драйвера монитора не ставить!

2. Как мне сказали, фирму и модель монитора из списка устройств увидеть нельзя (я сто лет не работал в виндах). Но можно зайти в панель управления Nvidia и там посмотреть, что он видит из подключенных мониторов. На что обратить внимание: видит ли он после удаления монитора и перезагрузки виндов модель и производителя монитора, есть ли там EDID? Вот тема по ссылке, про что идет речь: http://nvidia.custhelp.com/app/answers/detail/a_id/2867/~/how-do-i-capture-th...

Zubok ★★★★★ ()
Ответ на: комментарий от Zubok

1. Нашел монитор в диспетчере устройств под виндой - удалил, ничего не произошло.

2. Пытаюсь найти информацию об EDID - всё безуспешно, уже и перезагрузился, не могу найти что-нибудь подобное.

lilinux ()
Ответ на: комментарий от lilinux

1. Нашел монитор в диспетчере устройств под виндой - удалил, ничего не произошло.

До перезагрузки ничего и не произойдет. После перезагрузки какое разрешение выставлено автоматом?

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от lilinux

Ещё раз удалил и ребутнулся, загрузилось сразу же в 1920x1080

Тогда надо в виндах найти, как EDID получить, посомтреть, что монитор получил. ТЫ смотрел в nvidia control center (или как он там?), там монитор отображается? Там по ссылке выше кнопочка есть под монитором dump EDID. Или что там показывает View System Topology? Или этого пункта вообще нет?

Zubok ★★★★★ ()
Ответ на: комментарий от kostik87

Ну как бы это вариант, но если станет понятно, что EDID в виндах получает, а тут нет. (интересно, в чем дело? Уже вторая тема по этому поводу и тоже оказывается, что NVIDIA в винде все получает, а в Линукс - фиг).

Zubok ★★★★★ ()
Ответ на: комментарий от lilinux

но как ставлю любой дистрибутив линукса - экран никогда не обнаруживается нормальный,

А с каким драйвером? nouveau, который по умолчанию, пробовал? Вообще, какие дистрибутивы пробовал без установки проприетарного драйвера?

Zubok ★★★★★ ()
Ответ на: комментарий от lilinux

в X11 нет ни файла xorg.conf, ни папки xorg.conf.d :(

Так, стоп. Как это нет? Где-то же nvidia прописана? Надо найти. Где-то должен быть. Ты точно проверял путь /etc/X11/, а не какой-то другой. Проверь еще раз. Если нет, то глянь в /usr/share/X11/xorg.conf.d" . Если там что-то есть, то, плиз, повесь.

Zubok ★★★★★ ()
Ответ на: комментарий от Zubok

Когда только начал использовать линукс - пытался ставить какие-то драйвера nvidia, но всё тщетно. Не подскажете, как пользоваться nouveau? Гуглю - ничего вразумительного не нахожу, кроме апдейта

lilinux ()
Ответ на: комментарий от Zubok

Как раз когда только начинал пользоваться - ставил какой-то драйвер nvidia, и что-то вроде бы шаманил с связанным xorg.conf. Но недавно переустанавливал систему, сейчас вот что лежит в папке

/etc/X11/
: http://screenshot.ru/upload/images/2017/04/11/EKRANAOT2017-04-1116-13-09c8316...

Перешел по

/usr/share/X11/xorg.conf.d
, тут есть такие файлы: http://screenshot.ru/upload/images/2017/04/11/EKRANAOT2017-04-1116-15-0005568...

lilinux ()
Ответ на: комментарий от lilinux

Ай, блин, у тебя же и есть nouveau! Чего это я решил, что у тебя проприетарный nvidia, я не знаю. Блин.

[    16.420] (--) NOUVEAU(0): Chipset: "NVIDIA NVE7"

Вот что показывает данная программа, запустил под администратором: https://pastebin.com/KHeb4KMx

Если эта программа работает правильно, то она явно сообщает свой какой-то внутренний EDID (я немножко посмотрел - нет такого производителя ABC - это, похоже, стандартная затычка внутри программы Monitor Asset Manager):

Model name............... ABC 302008WS
Manufacturer............. ABC
Plug and Play ID......... ABC8014

DDC/CI................... n/a

Другими словами, винды, похоже, не видят твой монитор и просто выставляют стандартное разрешение 1920x1080 по EIA/CEA-861 (наугад?). Еще раз: или программа неправильно работает (этого я не знаю), либо еще что-то надо нажать в ее менюшках, либо твой переходник DVI-VGA имеет дефект по линиям DDC, что тоже очень вероятно. Я пока считаю, что проблема у тебя в переходнике. В результате твоя карточка nvidia не знает, что за монитор к ней подключен и выставляет умолчательное скромное разрешение.

Расшифровка твоего EDID должна показать производителя и модель монитора. У тебя два варианта: либо поискать другой переходник, либо вручную вписать данные монитора в xorg.conf. Сейчас попробую написать.

Zubok ★★★★★ ()
Ответ на: комментарий от lilinux

1. От root создай файл /etc/X11/xorg.conf.

2. В этот файл помести вот это:

Section "Monitor"
 	Identifier   "<default monitor>"
        ModelName "BenQ VW2245Z"
        VendorName "BNQ"
        Option "SyncOnGreen" "true"
        DisplaySize 480 270
        Gamma 2.20
        Option "DPMS" "true"
        Horizsync 30-83
        VertRefresh 50-76
        PreferredMode "1920x1080"
        # Maximum pixel clock is 210MHz
	Modeline "1920x1080" 148,500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
EndSection

3. Сохрани файл и перезагрузи иксы полностью (не сессию, а иксы). Если не знаешь как, то лучше просто перезагрузи компьютер.

Должно заработать. Если заработает, то вот что мы сделали: так как видеокарта не получает от монитора информацию, мы ей подсовываем описание того, что она должна получить. Проблема, скорее всего, у тебя в переходнике. Если заработает, то программно мы эту проблему обошли, но, разумеется, переходник от этого лучше не стал. KMS, например, не увидит монитор. Можно EDID прописать прямо для KMS. Вот тебе ссылка на бинарный EDID твоего монитора:

http://rgho.st/8qDdwrn5T

Zubok ★★★★★ ()
Последнее исправление: Zubok (всего исправлений: 1)
Ответ на: комментарий от Zubok

Кстати, у этого монитора, если судить по мануалу, есть опция в меню DDC/CI on/off. глянь-ка, не выключена ли она случайно?

Zubok ★★★★★ ()
Ответ на: комментарий от Zubok

Занятная программа. Показала все мониторы, которые хотя бы раз к ноутбуку подключал, и их сохраненные EDID.

Radjah ★★★★★ ()
Ответ на: комментарий от Zubok

После перезагрузки по началу выдает примерно подобное сообщение:

 The system is running in low-graphics mode your screen, graphics card, and input device settings could not be detected correctly. You will need to configure these yourself. 

После чего выпадает меню: http://i.imgur.com/QvZe9uC.jpg

lilinux ()
Ответ на: комментарий от lilinux

Выложи тогда лог, который с моим конфигом получается /var/log/Xorg.0.log. Может, я ошибся где-то.

Zubok ★★★★★ ()
Ответ на: комментарий от Radjah

Занятная программа. Показала все мониторы, которые хотя бы раз к ноутбуку подключал, и их сохраненные EDID.

Винда следит за тобой!!1!11 Я вообще подозреваю, что винда очень часто просто выставляет «по догадке» разрешения из чего-то ранее запомненного. А иксы тупо каждый раз читают из монитора информацию. Например, вот сейчас как-то она догадывается поставить 1920x1080, хотя EDID отсутствует.

Zubok ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.