PDA

Просмотр полной версии : EDID и все что ему сопутствует...


Leobor
11.01.2016, 22:08
Не буду цитировать википедию, что такое EDID и для чего он нужен. Тема создается в основном для помощи в расчетах и создании этого зверя.
Но все же некоторые особенности разжую. Итак, EDID - блок объемом 128 байт. Обращаю на это внимание, поскольку некоторые редакторы из-за кривизны могут сделать его и другого размера. Тогда нужно в HEX редакторе оставить 128 байт, а остальные "нули" удалить.
Для создания массива EDID чаще всего используют программу EDID-Editor. Их бывает много, но суть одна. Для того, чтобы создать блок EDID помимо основных (разрешение, частота) нужно иметь некоторые данные, имеющие отношение к временнЫм характеристикам матриц, т.н. тайминги. В некоторых даташитах на матрицы EDID выкладывают как есть готовый, в других - нет. Тогда его нужно рассчитать исходя из таймингов на матрицу. Однако зачастую тайминги бывают довольно мудро зашифрованы и разобраться довольно сложно. Вот тогда в помощь годится очень полезное понятие - моделайн. Это массив неких усредненных данных, который является расчетом из исходных разрешения и частоты обновления экрана. Причем хоть и данные усредненные, но их вполне достаточно, чтобы заработали любые матрицы равного разрешения - большинство временных параметров матриц имеют "ворота".
К сожалению калькулятор моделайна в виде самостоятельной программы я не могу выложить (я попросту его не встречал), но есть сайт, на котором онлайн можно это сделать: http://www.arachnoid.com/modelines/
Заходим туда, а там все очень просто. Не буду пояснять слишком глубоко, нам интересна таблица Required inputs. Правая таблица - это опциональная и для разжевывания ее нужно время, при том что сами опции не сильно то требуются в нашем случае. Ниже по тексту идет расшифровка некоторых понятий и величин. Даже рисунок, который тоже многое объясняет.
Вводим разрешение, например 1024*600 и частоту 60Гц. Результат:
# 1024x600 @ 60.00 Hz (GTF) hsync: 37.32 kHz; pclk: 48.96 MHz
Modeline "1024x600_60.00" 48.96 1024 1064 1168 1312 600 601 604 622 -HSync +Vsync
Ну а теперь подвожу к тому, для чего все это нужно.
Взглянем на окно программы EDID Editor
42187
Как видим, для создания массива EDID нужны тайминги, которые я обвел прямоугольником. Вот их то мы и берем из моделайна.
Итак, как они там "зашифрованы":
"1024x600_60.00" 48.96 1024 1064 1168 1312 600 601 604 622 -HSync +Vsync"
- 1024x600_60.00: Resolution_Refresh (Hz, после точки - дробная часть)
- 48.96: Pixel Clock (MHz, после точки - дробная часть)
- 1024: H. Active Pixels
- 1064: H. Start of Sync Pulse
- 1168: H. End of Sync Pulse
- 1312: H. End of Blanking Interval
- 600: V. Active Lines
- 601: V. Start of Sync Pulse
- 604: V. End of Sync Pulse
- 622: V. End of Blanking Interval
-HSync +Vsync - эти "галочки" ставятся в программе расчета.
Я намеренно не стал переводить все строчки, потому что в программах расчета по-русски не бывает. H и V - означает, что величина относится к горизонтальным и вертикальным параметрам соответственно. Поскольку для расчета нужны еще и некоторые промежуточные параметры, поэтому привожу, как они взаимосвязаны с уже имеющимися:
H. Start of Sync Pulse = H. Active Pixels + H. Sync Offset
H. End of Sync Pulse = H. Start of Sync Pulse + H. Sync Width
H. End of Blanking Interval = H. Active Pixels + H. Blank Pixels
и точно так же для "вертикали":
V. Start of Sync Pulse = V. Active Lines + V. Sync Offset
V. End of Sync Pulse = V. Start of Sync Pulse + V. Sync Width
V. End of Blanking Interval = V. Active Lines + V. Blank Lines
В этих взаимосвязях вы найдете все необходимые для расчета величины. Их же можно взять для подстановки не только в редактор EDID, но и в любой другой (например EMGD).
Да, вот еще, иногда в редакторах некоторые тайминги называют по разному. Поэтому привожу известные мне вариации:
H. Sync Offset = H. Front Porch
V. Sync Offset = V. Front Porch

Теперь можно перейти к практике.
Напомню еще один важный момент. Для какой цели нужен блок edid - от этого зависит как его "приготовить".
1. Если он нужен для внедрения в МОНИТОР (к примеру в тело прошивки того же "народного контроллера"), то тогда в редакторе необходимо будет указать, для какого входа (аналоговый или цифровой) он создается. Но главное вовсе не это. Для всех мониторов свойственно иметь определенный набор поддерживаемых разрешений на борту для того, чтобы графический адаптер компьютера "мог" на них ориентироваться. Что имеется в виду. Наилучшее разрешение для работы монитора - это физическое разрешение матрицы (еще это называется нативное разрешение). Т.е. когда пиксел формируемого изображения попадает точно в физический пиксел матрицы. В редакторах edid это понятие называется detailed timings (еще бывает native или preferred timings). Все остальные разрешения, поддерживаемые монитором, называются established и standard timings. Для чего они нужны вообще: Во время загрузки ОС на экране проходят различные этапы - POST, BIOS, экраны приветствия и наконец сам интерфейс ОС. Все они имеют различные разрешения и частоту обновления. Для того, чтобы монитор отображал все эти этапы, графический адаптер "смотрит" в список поддерживаемых разрешений и при наличии нужного выводит изображение на экран. Если нужного нет, то будет либо черный экран, либо включено ближайшее разрешение. Все зависит от графического адаптера, производителя МП и БИОСа, а также от схемотехнических возможностей скалера монитора.
2. Если блок EDID нужен только для описания матрицы в БИОС (это при подключении матрицы напрямую к LVDS интерфейсу материнской платы), то необходимо оставить только detailed timings, а все остальные (established и standard) исключить. Почему? Все просто: материнка должна знать только нативное разрешение матрицы чтобы выставлять его при основной работе. Все остальные разрешения тогда обеспечивает графический адаптер совсем по другому алгоритму.
Надеюсь, понятно изложил.
Ну и теперь, основываясь на вышеприведенном примере с моделайном рассчитаем блок edid для VGA входа контроллера монитора для матрицы EJ070NA-01.
Я приведу пример как работать с EDID редактором от Deltacast. Почему он. Я пробовал несколько редакторов. Редактор от Phoenix мне не понравился тем, что он сохраняет файл только в формате .raw (напомню - нам нужен .bin). Редактор от Viewsonic (да, да, тот самый производитель мониторов) оказался неспособным сделать edid большинства широкоэкранных матриц. В общем, мне понравился от Deltacast...
Итак, открываем окно редактора, жмем на "Создать" (New) и выскакивает окошко, в котором предлагается выбрать "рыбу" заготовки под поколение HDMI. Но нас это не особо интересует - мы же делаем под VGA, поэтому неважно. Я просто ткнул на HDMI 1.3.
42351
Открывается окно на вкладке General/Video Input Definition/Feature, в котором нам необходимо заполнить 4 блока:
42352
В первом блоке можно заполнять, а можно и нет данные о производителе монитора, дату создания, модель - это все лишнее. Ну на всякий я наберу производитель SAM (это международный кодификатор Samsung). Гамма-коррекцию набираем 2.20. Не спрашивайте почему, наверное так повелось издавна, но во всех EDID стоит именно 2.20. Возможно она ни на что и не влияет, но пойдем за стадом.
Во втором блоке все уже установлено. Единственное - поставим галочку на композитной синхронизации. В современных системах она поддерживается везде.
В третьем блоке можно ввести геометрические размеры изображения (можно и не вводить - это ни на что не влияет, просто информативно будет отражено).
В четвертом блоке ставим галку Standby Mode (не знаю, влияет она и ли нет, но я ставлю всегда), в профиле Color Type выбираем RGB Color (он точно не влияет - проверял, но для красоты пойдет) и галочки sRGB и Preferred Timing Mode:
42353
Переходим во вторую вкладку (Color Established Timings I & II).
42355
Здесь два блока. В левом (Display x.y. Chromacity) нам необходимо ввести данные по цветовым характеристикам. Берутся они из даташита на матрицу. Иногда в ДШ есть данные по каждому цвету, иногда только для белого. В даташите на выбранную матрицу (EJ070NA-01) именно такая ситуация:
42354
Поэтому берем и вбиваем ТИПОВЫЕ данные для "белого" из ДШ. Что касается величин для других цветов, можно ввести усредненные данные, описанные в стандарте CIE 1931 (https://en.wikipedia.org/wiki/CIE_1931_color_space) (на который есть ссылка в ДШ). Но можно сказать только одно - данные по каждому цветовому параметру продиктованы цветовой гаммой матрицы по отношению к цветовосприятию человеческого глаза и практически у всех матриц одинаковые (различие в сотых или тысячных долях). Поэтому можно смело ставить Rx=0.640, Ry=0.330, Gx=0.285, Gy=0.600, Bx=0.15, By=0.080.
Во втором блоке выбираются СТАНДАРТНЫЕ (общеизвестные) разрешения, которые нужны нам. Не стоит выбирать все. Я для примера выбираю 720*400 70Hz (это разрешение POST экрана), 640*480 60Hz (это BIOS) и 800*600 60Hz (это экран приветствия WinXP):
Далее переходим на вкладку Standard Timings. Здесь можно добавить то разрешение, которое будет присутствовать в списке поддерживаемых монитором, но которого не было на предыдущей вкладке. Например для добавления 1600*900 нужно поставить галочку Enable, набрать 1600 по горизонтальному разрешению, набрать частоту 60Гц и поставить галочку в соотношении сторон 16:9. Таким образом разрешение 1600*900 60Гц появится в списке поддерживаемых.
Последняя вкладка Detailed Timigs & Display Descriptions - главная и самая важная. Здесь то как раз и вводятся тайминги нативного разрешения.
Итак, что мы видим в этой вкладке.
42356
Слева в колонке Block Descriptor перечислены блоки, которые мы можем внедрить в массив EDID. Правее в колонке Block Descriptor Type - выбор того, что именно будет описывать выбранный блок. Обратите внимание, что первый блок по умолчанию является уже назначенным Detailed Timing и его нельзя изменить. Правее идет расшифровка выбранного блока, в которую и подставляются все выбранные параметры. В моем примере подставлены значения, подсчитанные в modeline. От себя я добавил только размеры изображения в миллиметрах. Они ни на что не влияют - это только справочная информация.
Внизу под введенными параметрами виден результат автоматического подсчета частот "строк" и "кадров" (светло-серым). Они зависят именно от введенных временнЫх параметров.
Выбираем в левой колонке второй блок и уже открывается возможность выбора что именно мы собираемся описывать. Например я выбрал серийный номер монитора
42357
Однако, иногда бывают ситуации, когда нужно чтобы монитор имел не один, а два значения Preferred timing. Например если это блок EDID для входа HDMI. В случае с "народным" контроллером, например матрица у нас 1024*600. Если подключить ко входу HDMI компьютер, нужно чтобы его графический адаптер "знал", что нужно выдать разрешение 1024*600. Это мы уже проделали выше. Но если к этому входу подключить какой либо медиадевайс (например тот же цифровой приемник DVB-T2), нет никакой гарантии, что изображение появится на экране - приемник не "знает", что по интерфейсу HDMI может быть такое разрешение. Просто на экране в лучшем случае появится надпись "неподдерживаемое разрешение", а в худшем - просто будет черный экран. Поэтому необходимо прописать еще одно разрешение, но такое, чтобы любая медиаприставка "поняла", что это - HDMI и по нему можно транслировать изображение. В этом случае мы выбираем во втором блоке еще раз Detailed Timing и описываем в нем разрешение либо HD Ready (1280*720, называется еще "режим 720p"), либо Full HD (1920*1080, режим 1080р). Таким образом блок EDID будет уже нести информацию о двух рабочих разрешениях монитора.
Надо отметить, что все остальные описания носят скорее информативный характер и уже не вносят какой либо серьезной "машинной" составляющей. Однако, есть еще один важный блок (Range Limits), который обязательно должен быть описан - диапазоны введенных величин и добавочные тайминги (Display Range Limits & Additional Timings)
42358
Тут я вбиваю нигде не вычисленные пределы - просто из соображений запаса. По горизонтали - от 15 до 81кГц, по вертикали - от 24 до 75Гц.
Ну и напоследок "обзываю" свой монитор в блоке 4
42359.
Все. На этом сохраняем файл (сохраняется он в формате .bin). Иногда почему то Deltacast сохраняет 256, а не 128 байт. Возможно это результат выбора типа HDMI на начальном этапе - не знаю, не задавался целью. Поэтому необходимо убедиться, какого размера сохраненный файл. Если он все таки 256 байт, то можно открыть его в HEX Editor и обрезать 128 байт "нулей", либо опять в Deltacast Editor, выбрать во вкладке Tools пункт Hexa Editor и тогда файл откроется во встроенном гекс эдиторе дельтакаста. Отрезаем "лишнее", жмем ОК. Он спросить, хотите ли вы сохранить файл. Отвечаем "Да" и все, файл готов.

Это был пример, как приготовить файл EDID для МОНИТОРА.
Если нам нужен файл только для BIOS (в случае подключения матрицы к порту LVDS материнской платы), то проделываем все то же самое, только снимаем все "галочки" во вкладках Established Timings и Standart Timings и удаляем всю ненужную информацию (название дисплея, серийный номер и т.д.). Они нам не нужны. Блок EDID должен содержать только одно разрешение - разрешение самой матрицы и цветовой профиль.

Ну и напоследок пару хитростей от себя. Как показала практика, калькулятор моделайн не всегда точно считает величины. Замечено, что чем выше разрешение, тем больше расхождение с EDID, взятым от какого нибудь "правильного" производителя. В связи с этим я бы не рекомендовал использовать его огульно, но для нахождения величин для матриц низкого разрешения (800*480...1280*800) этого калькулятора вполне достаточно. Что же делать с более высокими разрешениями, где брать правильный EDID? Все очень просто. Например нам нужен EDID для монитора 1680*1050. Узнаем в Яндексе или берем из головы, какой именно промышленно изготовленный монитор имеет такое разрешение. Samsung SyncMaster 205bw, 225bw, 206bw, 226bw. Думаю, хватит. Скачиваем прошивку (например на remont-aud.net или monitor.net), открываем ее в HEX Editor (или другой аналогичной программе)и ищем в ней строчку 00 FF FF FF FF FF FF 00. Это и есть первые 8 байт EDID. Ну а далее выделяем их и плюс еще 121 байт, чтобы получилось 8 строк по 16 байт. Сохраняем его в формате .bin. Это и будет блок EDID:

00 ff ff ff ff ff ff 00 1c 54 05 21 06 09 13 20
28 15 01 03 85 2f 1d 78 ea 64 b5 ab 52 38 ab 25
13 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01
01 01 01 01 01 01 7c 2e 90 a0 60 1a 1e 40 30 20
36 00 d9 28 11 00 00 1e 00 00 00 10 00 50 4b 35
37 33 37 41 47 35 37 35 55 0a 00 00 00 fc 00 41
49 4f 20 50 43 0a 20 20 20 20 20 20 00 00 00 fd
00 38 3c 1e 46 0d 00 0a 20 20 20 20 20 20 00 66

Для того, чтобы "прочесть" информацию, закодированную в блоке EDID, необходимо установить программу Moninfo и открыть его в ней. Там будут видны абсолютно все установленные разрешения и атрибуты.
Если что то нужно подкорректировать (например приготовить EDID для BIOS), открываем его снова в EDID editor и вычищаем все "лишнее", как я уже говорил выше.
Для чего мы искали прошивку и выбирали из нее EDID - чтобы иметь ТОЧНЫЕ уже подсчитанные (компанией Samsung) данные Detailed Timigs & Display Descriptions. Они то уж точно должны быть правильными...

Есть еще один способ - добыть данные для EDID прямо из даташита на матрицу (обычно указывается где то на последних страницах документа). Этот способ является самым точным, потому что это будут уже абсолютно точные данные от производителя. Следует заметить, что эти EDID данные будут чисто для материнской платы, а не для мониторов (в чем отличие - я указывал выше). Но эти данные можно смело править в EDID-эдиторе и под мониторы. Однако, такая информация в даташитах встречается нечасто - обычно это "удел" брендовых матриц. В большинстве же даташиты на всякую "шушару" увы, не содержат этой полезной информации.

И еще одна хитрость (просто нет смысла заводить отдельную тему для этого). Это касается уже не EDID, а самой прошивки. Но при этом EDID используется как отправная точка.
Иногда бывает необходимо чуть изменить прошивку на предмет битности подключенной матрицы. Например у вас есть прошивка под 8-битную матрицу EJ080NA-04B, а вы захотели использовать этот контроллер с какой нибудь 15-дюймовой матрицей от монитора - а она 6-битная. Что делать? Да ничего сложного (по крайней мере с китайскими прошивками) нет. Все показываю на картинке:
45491
Внимательно рассмотрите и увидите всего 4 отличия прошивок. Меняйте - и все заработает.
Кстати сказать, справа от этих значений находится байт, отвечающий за количество каналов LVDS. 00 - это для одноканального, 08 - для двухканального. Его так же можно безболезненно заменить.
Да, и не забудьте, что этот способ - для китайской прошивки под контроллер на RTD2660H и конечно же не будет применим к контроллерам на TSUM или MStar...

Vlad-bodryi
11.01.2016, 23:45
нужная тема! когда я это победил, думал тоже написать, но интереса ни у кого не возникло, у меня так и прошла эта затея. смотрю последние полгода, народ прям со жгучим рвенеем интересуется ЭДИД... отстаём товарищи, отстаём... и это когда я боролся уже наверное как три года прошло, то-есть на вскидку минимум на шесть лет отстаём!!!

Leobor
11.01.2016, 23:52
Да она (необходимость) время от времени вылезает. Кидаешься искать свои записи в закромах. Уж лучше тут пусть перед глазами будет...

Vlad-bodryi
11.01.2016, 23:59
ага, я тоже так делаю, читаю свой проект!

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

Leobor
12.01.2016, 01:12
В файлах 36B6 и LOADFW по 11 едидов. Что нужно прочитать? Файлы полностью идентичны.

Vlad-bodryi
12.01.2016, 01:28
ХМ...

я тут намедни, думаю, дайка я наипу этот гигапит, вообщем подключил матрицу к интелу2800 и снял ЭДИД с чипа матрицы 101EW05, той программой, которую ты мне дал когда-то. подменил файл 36в6, заметил что размер файла гигапита в 8кб, а слизанной - 1кб, вообщем не хочет принимать биос гигапита мой подменный файл. поддержка надо мной издевается...

чем открывал/читал?

Leobor
12.01.2016, 01:37
Во! А чем еще можно бинарники открывать? Конечно HEX Editor.
Не, ну там в файлах не просто голые едиды - там какая то прошивка, в которой 11 едидов: 1920*1080, 1600*900, 1366*768, 1024*768, 800*600, 1280*1024, 1280*800, 1920*1200, 1440*900, 1600*1200 и 1680*1050.

Vlad-bodryi
12.01.2016, 02:10
хрень какая-то...

Leobor
12.01.2016, 02:39
Ну что дал. Я же не сам это придумал...

Vlad-bodryi
12.01.2016, 11:46
Ну что дал. Я же не сам это придумал...

ты то тут не причём...

у тебя случаем нет установочника хекса?

nektomaks
17.01.2016, 13:24
у каждого производителя свои прошивки с едид
мне асрок разные присылали, даже производителя чипа лвдс потревожили)
да все бес толку, настройки оставались прежними
чудом запустил на профиле 640х480, видно на нем эдид считывается
только интел по видимому использует стандартные файлы едид

Leobor
17.01.2016, 14:10
Нет, ребятки. EDID строго привязывается к матрице - это ее физика, а не прихоть производителя материнок. Почему? Рассказываю, как я в этом убедился позавчера.
Я сделал едид на VGA и вживил его в прошивку "народного" под матрицу 1024*600. Это железно, понятное дело - это кадр матрицы. А вот интервалы blanking и porch я взял из одной прошивки здесь на форуме. Не буду говорить откуда брал, потому что вылез косяк, а значит edid неправильный. Подключаю к материнке на H67 и в настройках VGA не вижу разрешения 1024*600 - его попросту там нет и никак заставить не могу. Делаю ребут и монитор прекрасно устанавливается в 1024*600. Уже успех. Ну а потом перетаскиваю программу в это окно и разворачиваю во весь экран и обнаруживаю, что верхняя панель окна наполовину спрятана вверху. Делаю автоподстройку - то же самое. Вручную из настроек монитора (на народном имеется в виду) опускаю изображение вниз, но все равно до конца не получается. Делаю автоподстройку и снова окно уходит вверх. Рассчитываю параметры в моделайне и обнаруживаю, что в имеющемся едид параметр front porch по вертикали установлено 11 строк, а моделайн говорит, что должна быть 1 строка. Переделываю на 1 строку, меняю на новый и как к бабушке сводили - окно программы четко вошло в экран матрицы. Так что
а) калькулятор моделайн работает
б) я - не интел, не асрок и не гигабайт, но рассчитанный EDID лег в прошивку как надо. Потому что он привязан к ФИЗИКЕ матрицы.

lvds
17.01.2016, 14:46
А вот у меня, как писал в той теме, не получилось запустить с параметрами от калькулятора. Различия с файлом от самсунга уже с Pixel Clock начинаются: 147 в калькуляторе и 119 в файле. А частота 119, кстати, в даташите самсунга упоминается как оптимальная. А в даташите Chi Mei - про неё не слова.
В общем - кто во что горазд.

Leobor
17.01.2016, 15:39
У меня появилось небольшое подозрение, что калькулятор подбрехивает. Чем выше разрешение, тем больше ошибка. Но я ему готов простить и это, ибо обычные мониторные едиды добыть - раз плюнуть (я позже выложу в шапке как это сделать, просто не готов материал), а вот добыть "планшетные" - проблема практически нерешаемая. И тут как раз моделайн в помощь.

Leobor
25.01.2016, 15:44
Обновил шапку...

lvds
26.01.2016, 12:08
Великолепно! Спасибо!

Vlad-bodryi
08.02.2016, 21:47
НУЖНА ПОМОЩЬ!

кто может помочь исправить EDID от гигабита?

техподдерка мне мозг ипёт уже ПОЛГОДА! ни одного рабочего файла не прислали!
переписка - сплошная ахинея!

Leobor
09.02.2016, 21:15
Что исправить? И подо что? Давай "на пальцах" разберем. Выкладывай сюда...

Vlad-bodryi
09.02.2016, 21:39
Большое спасибо Leobor, подошла от другой матрицы, высланной пользователем.

но было бы хорошо самим править тайминги от гигабита, там какая-то хрень.

надо разобраться как это делать

Vlad-bodryi
09.02.2016, 21:51
рабочие файлы матриц для GIGABYTE GA-H77TN

HSD101PWW2
B101EW05

Leobor
09.02.2016, 22:35
... было бы хорошо самим править тайминги от гигабита, там какая-то хрень.

надо разобраться как это делать
Где хрень? С чем разобраться? А мой первый пост?
ПРИМЕР.
Открываем даташит на B101EW05. Листаем до пункта 6.5.1 Timing Characteristics. Смотрим в него и собираем моделайн для этой матрицы:
42534
Для того, чтобы собрать EDID нам нужен был моделайн - мы его получили. А дальше все в EDID эдиторе легко корячится - я же расписал что и как там делать...

Leobor
09.02.2016, 22:49
Смотрим в прошивку, которую прислал гигабайт на эту матрицу. Как искать едиды - я написал в 1 сообщении. В хексэдиторе открываем прошивку, ищем все едиды, сохраняем каждый отдельно. Затем открываем каждый в Moninfo (Monitor Asset Manager), пока не найдем тот, что нам нужен:
42536
Прямоугольником я выделил моделайн, который забит в едид от гигабайта. Открываем этот едид в едид эдиторе и согласно моделайна, который мы получили из даташита на матрицу, корректируем его. Вот и все. Абсолютно ничего сложного...

nektomaks
10.02.2016, 03:07
не прокатит, пробовал как то подобное, видимые едид только отображают инфо о профилях, а сами они закодированы
причем в файле прописано какой прфиль по умолчанию должен работать, т.е. в биосе нельзя их выбирать
с асроком похожая ситуация, присылали кучу прошивок под 1280х800, в итоге менялась только видимая инфа в биосе а профили оставались прежние:dntknw:

nektomaks
10.02.2016, 03:12
Нет, ребятки. EDID строго привязывается к матрице - это ее физика, а не прихоть производителя материнок. Почему? Рассказываю, как я в этом убедился позавчера.
Я сделал едид на VGA и вживил его в прошивку "народного" под матрицу 1024*600. Это железно, понятное дело - это кадр матрицы. А вот интервалы blanking и porch я взял из одной прошивки здесь на форуме. Не буду говорить откуда брал, потому что вылез косяк, а значит edid неправильный. Подключаю к материнке на H67 и в настройках VGA не вижу разрешения 1024*600 - его попросту там нет и никак заставить не могу. Делаю ребут и монитор прекрасно устанавливается в 1024*600. Уже успех. Ну а потом перетаскиваю программу в это окно и разворачиваю во весь экран и обнаруживаю, что верхняя панель окна наполовину спрятана вверху. Делаю автоподстройку - то же самое. Вручную из настроек монитора (на народном имеется в виду) опускаю изображение вниз, но все равно до конца не получается. Делаю автоподстройку и снова окно уходит вверх. Рассчитываю параметры в моделайне и обнаруживаю, что в имеющемся едид параметр front porch по вертикали установлено 11 строк, а моделайн говорит, что должна быть 1 строка. Переделываю на 1 строку, меняю на новый и как к бабушке сводили - окно программы четко вошло в экран матрицы. Так что
а) калькулятор моделайн работает
б) я - не интел, не асрок и не гигабайт, но рассчитанный EDID лег в прошивку как надо. Потому что он привязан к ФИЗИКЕ матрицы.

на народном видимо это все прокатывает, а на мамках другие чипы стоят поэтому и иначе все

Leobor
10.02.2016, 10:48
Ну не скажу за все платы, у меня был опыт только на Атоме 2700 и на гигабайтовской мамке от моноблока (GA61-1DI, кажется так...). Я подсовывал еепромку чтобы не корячиться с прошивкой. Вроде все получилось

Vlad-bodryi
10.02.2016, 17:36
Leobor, какие цифры и где найти я знаю, а вот куда их вбить без программ и инструкций - не могу!

открыл хекс эдитором, а там только двоичный код. что с ним делать и что править - ума не приложу

Vlad-bodryi
10.02.2016, 17:39
на материнке GIGABYTE GA-H77TN, подсунуть еепромку неполучится, т.к. попросту нет этой хреновины, только перепрошивка...

Leobor
10.02.2016, 19:27
Leobor, какие цифры и где найти я знаю, а вот куда их вбить без программ и инструкций - не могу!

открыл хекс эдитором, а там только двоичный код. что с ним делать и что править - ума не приложуТы нашел блоки EDID? Если нет, нажимаешь в хексе на лупу (поиск) и вбиваешь туда 00 ff ff ff ff ff ff 00. Жмешь поиск. Находится первый edid. Копируешь 128 байт (начиная с первого байта с нулями) и сохраняешь в отдельный файл. Снимешь выделение, жмешь рядом с лупой "найти дальше". Находится следующий блок edid. Выделяешь 128 байт, копируешь и сохраняешь. И так далее. Не забывай в хексе снимать выделение, а то скопируется все, что было выделено ранее. Наберется 11 edeid-ов. Сохрани все под номерами чтобы не запутаться. Потом каждый открывай в Moninfo и ищи под твою матрицу. Запомни каким по счету он был в прошивке. Вот его корректируй и сохраняй. Потом открываешь его тоже в хексе, копируешь, находишь исходный блок в прошивке и вставляй вместо него откорректированный. Сохраняй прошивку. Все.

Leobor
10.02.2016, 19:38
на материнке GIGABYTE GA-H77TN, подсунуть еепромку неполучится, т.к. попросту нет этой хреновины, только перепрошивка...
Не рассказывай мне сказки. Я знаю три стандарта интерфейса LVDS на материнках и в каждом есть пины Vedid, CLKedid и DATAedid. К ним цепляется епромка, к этим пинам, на четырех проводках висит. Она изображает встроенную епромку матрицы. Если гигабайт херово расписал этот фейс, открывай и смотри на D2800MT - там абсолютно такая же распиновка:
42548

Vlad-bodryi
10.02.2016, 19:47
ГЛУБОКО УВАЖАЕМЫЙ Leobor! я с вами соглашусь полностью! но есть один нюанс!

эта матрица уже с чипом EDID, но и это не всё! она прекрасно отработала на интеловских материнках(77-я и 2800-я) автоматом определяясь! и это не оконечный нюанс! я её просто переключаю разъёмом, где вся распайка уже сделана несколько лет назад! мало того, я недавно её специально подключил к 2800-й дабы снять тайминги для удостоверки...
:dntknw::dntknw::dntknw::dntknw::dntknw:

Vlad-bodryi
10.02.2016, 19:50
очень интересно то, что чипы-то абсолютно одинаковые, что на интеле, что на гигабите, а вот взаимодействие через жопу, как и тех.поддержка...
кстати управление яркостью тоже через жопу..., точнее в жопе у гигабита...

Leobor
10.02.2016, 19:56
Аааа... Ну я же не знал, что на матрице есть edid... В биосе, надеюсь все выбрано правильно, откуда берется едид? И что, гигабайт не подхватывает его? Тогда только пробовать править именно в прошивке...

Кстати сказать, управление яркостью не совсем через ж... Просто мы не умеем пользоваться. У меня только один раз корректно заработала регулировка яркости на D2700. И то я после бесконечных бубнов испугался, что драйвер слетел, пока не допетрил, что это заработала регулировка и убавила яркость...

Leobor
10.02.2016, 20:01
Влад, а может взять и попробовать накатить самый старый биос? Обычно первый биос самый правильный, а последующие как тришкин кафтан - одно допилят, другое отвалится...

Vlad-bodryi
10.02.2016, 20:05
я-ж не просто так хай-вай поднимаю...

по делу всё, по делу...

а теперь ещё по делу скиншоты, поиском не находит(наверное нужна лицензия), пишет что не найдено, но в списке их видно, какая область блока, если это вручную выделять?

Vlad-bodryi
10.02.2016, 20:10
Влад, а может взять и попробовать накатить самый старый биос? Обычно первый биос самый правильный, а последующие как тришкин кафтан - одно допилят, другое отвалится...

там просто железно это не сделано и скорей всего не завязано ещё и программно... иными словами, чтоб заработал нормально чип ЛВДС, непосредственно его нужно перепрограммировать, а этого не сделать не подключив программатор и как-то это ещё и с биосом связать!

Vlad-bodryi
10.02.2016, 20:12
также в гигабите одинаков чип звука, но подпаявшись к пину spdif(цифра) - звука нет! и что только не делали - не работает! нужна прописка где-то и чего-то...

nektomaks
10.02.2016, 20:28
также в гигабите одинаков чип звука, но подпаявшись к пину (цифра) - звука нет! и что только не делали - не работает! нужна прописка где-то и чего-то...

для активации уже говорил нужно на определенный пин повесить сопротивление нужного номинала, что б сам чип понял что нужно активировать spdif

Vlad-bodryi
10.02.2016, 20:31
для активации уже говорил нужно на определенный пин повесить сопротивление нужного номинала, что б сам чип понял что нужно активировать spdif

мы-ж вроде с тобой это дело пробовали заводить, не завелось оно тогда... ты мне ещё прислал даташит на реалтек

nektomaks
10.02.2016, 20:36
по поводу яркости из 3 производителей только асус управлял програмно, гигабит и асрок только кнопками, что я и делаю
гигабит не умеет считывать едид, пройденный этап, другим но опытным человеком, только правка прошивки, причем поидее они должны отличаться только только разными едид в одном из профилей, ан нет еще и остальное содержимое отличается, так что ...

nektomaks
10.02.2016, 20:38
так же вроде и не пробовал

Leobor
10.02.2016, 20:49
...поиском не находит(наверное нужна лицензия), пишет что не найдено, но в списке их видно,Ды как же он в анси то найдет???

какая область блока, если это вручную выделять?
См. скриншот
42553

koAsh
15.06.2016, 09:11
Здравствуйте.
Посмотрите пожалуйста, правильно ли я значения для edid-а из пдфки вычленил?

H. Start of Sync Pulse = H. Active Pixels + H. Front Porch = 1366 + 26 = 1392
H. End of Sync Pulse = H. Start of Sync Pulse + H. Sync Width = 1392 + 32 = 1424
H. End of Blanking Interval = H. Active Pixels + H. Blank Pixels = 1366 + 106 = 1472

V. Start of Sync Pulse = V. Active Lines + V. Front Porch = 768 + 6 = 774
V. End of Sync Pulse = V. Start of Sync Pulse + V. Sync Width = 774 + 5 = 779
V. End of Blanking Interval = V. Active Lines + V. Blank Lines = 768 + 22 = 790

H. Active Pixels = 1366
H. Front Porch = 26
H. Sync Width = 32
H. Start of Sync Pulse = 1392
H. End of Sync Pulse = 1424
H. Blank Pixels = 106
H. End of Blanking Interval = 1472

V. Active Lines = 768
V. Front Porch = 6
V. Sync Width = 5
V. Start of Sync Pulse = 774
V. End of Sync Pulse = 779
V. Blank Lines = 22
V. End of Blanking Interval = 790

Смущает, что в ней нет ни слова о H. Blank Pixels и V. Blank Lines, их взял из расчета Period минус Active...

Спасибо.

Leobor
15.06.2016, 11:28
Все правильно.

Учитесь работать с документацией - в даташите этой матрицы есть EDID, вы его можете срисовать на трех последних страницах. Берете значения из колонки Value (Hex) и переписываете последовательно по 16 значений в строке. Итого будет 8 строк. Пусть в нем не будет каких то атрибутов для идентификации имени монитора, но это и есть самый точный EDID, от производителя.

koAsh
15.06.2016, 19:15
Все правильно.

Учитесь работать с документацией - в даташите этой матрицы есть EDID, вы его можете срисовать на трех последних страницах. Берете значения из колонки Value (Hex) и переписываете последовательно по 16 значений в строке. Итого будет 8 строк. Пусть в нем не будет каких то атрибутов для идентификации имени монитора, но это и есть самый точный EDID, от производителя.

Спасибо!
Еще такой вопрос.
В открытой прошивке четыре раза встречается edid, чтобы под мою матрицу ее модифицировать, нужно все 4 заменить на мой?

Leobor
15.06.2016, 23:23
Упс... Про открытую ничего не могу сказать - она не универсальная, а написана под конкретное ТЗ.
И еще, EDID - это всего лишь подсказка со стороны монитора, адресованная видеокарте, какой оптимальный режим выдать. Он не меняет режим работы самого контроллера. Режим описывает алгоритм работы контроллера как утрамбовать входные сигналы чтобы они правильно легли в пикселы матрицы. Поэтому хотите - копайтесь в прошивке, ищите, где зарыт этот режим, но со сменой EDID контроллер не станет вдруг настроенным под другое разрешение матрицы.
Возьмите китайскую прошиву и не парьтесь...

basurman
16.06.2016, 00:48
Возьмите китайскую прошиву и не парьтесь...
Борь, в прошивке ancc есть возможность изменить время включения-выключение КЗХ, это само по себе дорогово стоит, не говоря о других возможностях.
Поэтому китайская не канает)))

Leobor
16.06.2016, 02:43
Нет, Сань, я про другое говорил. Найти и изменить режим в прошивке под другую матрицу весьма сложно. Прошивкописатель знает, где это, а прошивкокопатель - нет. Человек хочет подкинуть к контроллеру совсем другую матрицу. У него два варианта:
1. заказать новую прошивку ancc.
2. взять готовую китайскую и прошить.
Что проще? Догадайся с одного раза!

А что касается возможностей открытой прошивки - так я ее когда то держал в руках. Не могу разделить твоего восторга. По мне китайская гораздо удобнее. И даже время переключения на КЗХ и кастомный выбор входа под нее - не вижу особой ценности. Самый большой плюс вижу только в ее индивидуальности, т.е. она написана под конкретную матрицу и в ней нет ничего лишнего в отличие от китайских - в них 9 блоков EDID, среди них четыре (!!!) для несуществующего DVI. И из 262 (или 323) килобайт, лишних - больше половины. А значит на открытой контроллер меньше подвержен болезням.
Хотя и на китайской он сильно не хворает...
В общем, кому - что...

basurman
16.06.2016, 12:10
Так на то он и копатель, а вдруг получится, тебе жалко чтоль.
А чинская это накрайняк, если совсем все плохо.

Leobor
16.06.2016, 12:47
...А чинская это накрайняк, если совсем все плохо.
Да ладно! Нормальная прошива. Я неделю назад исправил 8-битную 1280*800 под 1280*720 - работает. А с открытой такой фокус не прокатил бы...

koAsh
16.06.2016, 18:17
У него два варианта:
1. заказать новую прошивку ancc.
2. взять готовую китайскую и прошить.
Что проще? Догадайся с одного раза!
Да, по первому пункту к сожалению у прошивкописателя нет времени на добавление матрицы, вот и ищу другие пути...
С китайской прошивкой пугает то, что в один прекрасный момент перестанет сохранять изменения =\

Leobor
16.06.2016, 18:39
Не, нуачо... Можно ничего не шить и дальше сидеть пугаться китайской прошивки, пока другие вполне успешно ей пользуются. И не один год...

koAsh
03.07.2016, 11:23
Не, нуачо... Можно ничего не шить и дальше сидеть пугаться китайской прошивки, пока другие вполне успешно ей пользуются. И не один год...
Чуда не произошло.
После замены выдранным из ПДФ edid-ов в открытой, при запуске только вертикальные полосы были.
Так же при замене edid-ов из родной китайской - та же картина.
Мало того, при замене edid-ов в открытой на выдранные из китайской - те же яйца.
После восстановления бекапа китайской прошивки при включении оставались вертикальные полосы некоторое время...
Сейчас вроде сошли на нет. Мог я чего спалить? :shok:

Leobor
03.07.2016, 11:47
А какова конечная цель?

koAsh
03.07.2016, 12:04
А какова конечная цель?
Чтобы избежать отказа сохранять настройки в будущем.
Подцеплена камера заднего вида, туда-сюда по десять раз на дню будет переключаться...

Leobor
03.07.2016, 15:43
Нет, я не про это. Какая матрица была и какая теперь будет?

koAsh
03.07.2016, 23:01
Нет, я не про это. Какая матрица была и какая теперь будет?

Открытая прошивка была для N070ICG, пытался адаптировать для LP101WH4, если вы об этом.

Leobor
04.07.2016, 14:50
Да об этом... Но сложно это - вряд ли сходу что получится...

Алл_
06.07.2016, 13:44
...В открытой прошивке четыре раза встречается edid, чтобы под мою матрицу ее модифицировать, нужно все 4 заменить на мой?
Если внимательно посмотреть - hdmi фактически только одна.
Чуда не произошло.
После замены выдранным из ПДФ edid-ов в открытой, при запуске только вертикальные полосы были.
Так же при замене edid-ов из родной китайской - та же картина.
Мало того, при замене edid-ов в открытой на выдранные из китайской - те же яйца.
После восстановления бекапа китайской прошивки при включении оставались вертикальные полосы некоторое время...
Сейчас вроде сошли на нет. Мог я чего спалить? :shok:
Позвольте банальный вопрос - перед заливкой прошивки (например, той же "китайской") память "чистили"?
ps
Менял в открытой прошивке edid на свой (это обеспечило получение полного натива в радхе без необходимости подмены стандартных режимов в исходниках ядра, получил все что нужно). Все прошло без проблем. (но это без необходимости замены матрицы - если ставить другую матрицу, придется копать гораздо глубже)

koAsh
06.07.2016, 20:47
Если внимательно посмотреть - hdmi фактически только одна.

Позвольте банальный вопрос - перед заливкой прошивки (например, той же "китайской") память "чистили"?
ps
Менял в открытой прошивке edid на свой (это обеспечило получение полного натива в радхе без необходимости подмены стандартных режимов в исходниках ядра, получил все что нужно). Все прошло без проблем. (но это без необходимости замены матрицы - если ставить другую матрицу, придется копать гораздо глубже)
Имеющаяся на руках открытая для N070ICG, а новая матрица LP101WH4...

Что вы имеете ввиду под "память чистили"?

Алл_
07.07.2016, 12:43
...Что вы имеете ввиду под "память чистили"?
меня смутила фраза После восстановления бекапа китайской прошивки при включении оставались вертикальные полосы некоторое время...Скорее всего, при прошивке не провели процедуру очистки памяти (многие программы позволяют прошивать не проверяя "чистоту" памяти всего чипа), в области, грубо, "пользовательских переменных", до которых "не добралась" прошивка, остались "следы" старых данных...

Leobor
07.07.2016, 18:24
Смотря чем шить. Postal например чистит при прошивке...

koAsh
07.07.2016, 19:16
меня смутила фраза Скорее всего, при прошивке не провели процедуру очистки памяти (многие программы позволяют прошивать не проверяя "чистоту" памяти всего чипа), в области, грубо, "пользовательских переменных", до которых "не добралась" прошивка, остались "следы" старых данных...

Шил через контроллер от Юрия, после заливки прошивки нажимал "сброс". Больше там ничего не сделать вроде.

Progressor
02.10.2016, 10:52
Тема в основном софтовая, но софт без железа бесполезен, поэтому спрошу тут.
Как залить файл bin с EDID сгенерированный тем же делкастовским эдитором в BIOS?
У меня в настройках LVDS в BIOS (D2550MUD2) в меню EDID data source при выборе Pre-Defined нет нужного мне разрешения.
Если выбрать пункт Custom Payload, появляется еще один пункт Custom EDID Payload, при его выборе - окно "Enter custom EDID payload filename ediddata.bin".
Где BIOS ищет этот файл?

Leobor
02.10.2016, 11:49
На многих материнках предлагается два способа ввода EDID (в БИОСе):
- из файла с USB носителя
- через интерфейс матрицы (у которых есть такая возможность, выводы Vedid, Clk edid, Data edid)
Я использовал второй, но брал 24С02, зашивал в нее EDID и цеплял к этим контактам.
С USB наверное удобнее...

Progressor
02.10.2016, 11:58
Как минимум, для экспериментов, с USB конечно будет намного удобнее!
А потом можно и через ЕПРОМ реализовать, контакты эти на разъеме LVDS на матери есть, не задействованы, вот как раз и повесить. Спасибо, повожусь пока с флешкой!

А как залить bin в 24С02?

_________________
О, с USB с первого раза все пошло! Спасибо за отличное описание редактора и настроек в начале темы!
"Съел" файл EDID, потом флешка и не нужна. Не буду внешнюю память вешать. Сохранил bin файлик вместе с ранее сгенерированными драйверами EMGD под ХР.
Еще бы в ДОСе работало и была бы полная лафа.

Leobor
02.10.2016, 16:27
Я уже говорил, что не перевариваю EMGD, ну не нравится он мне. Так вот когда первый раз столкнулся с ним, то видел 2 его варианта - для Windo и для DOS. Тоже в DOS потыкался и ничего не произошло. Потом тут на форуме в теме про мамку на 230 или 330 атоме прочитал, что там какие то свои "заговорные" слова есть. Кстати, из-под винды тоже сильно не разбежишься - у меня ничего и в виндовс не вышло. В разных ревизиях EMGD мамки то поддерживаются, то нет. EMGD предлагается интелом еще и в качестве драйвера видео. Искал на D510MO дрова. Корячил несколько ревизий EMGD - бесполезно, так ни одна настройка и не запомнилась. Хорошо, что какое то сообщество малайских энтузиастов написало нормальный драйвер - поставил его.

Progressor
02.10.2016, 19:02
Не понял проблем с EMGD. Собственно, обычный конструктор дров. Из всего что он генерирует берем только непосредственно дрова. Потом софтину можно хоть удалить.
Дрова от малайцев под видео 3600 я видел, но они не дали мне возможность выставить нужное разрешение и второе, у них практически нет никаких настроек. У дров полученных с помощью конструктора все-таки разнообразнее менюшки. У этой софтинки есть пара моментов, при настройке страниц, возможно тут косяки были? Сам не сразу получил рабочий драйвер.

Про ДОС поищу. Нужно...

________________
P.S. Хых, прикольно. Сейчас удалил драйвера в Windows, но матрица как ни в чем не бывало работает в нужном разрешении. Это потому что прописал EDID в BIОS?
_________________
P.P.S.
А вот вам еще один сюрприз. Я видел малайские драйвера которые вы выкладывали в какой то теме.
А вы не просматривали их внимательно? :wink2:
Это просто скопированные файлы из папки Driver которую в числе прочих при компиляции генерирует... правильно, EGMD :smile1:
Вот так, однако.

Leobor
02.10.2016, 21:35
Про ДОС поищу. Нужно...Придется тогда полистать тему про материнки ... что то такое... Intel *** GCLF или GCLF2. Я уж не помню где это...
________________
P.S. Хых, прикольно. Сейчас удалил драйвера в Windows, но матрица как ни в чем не бывало работает в нужном разрешении. Это потому что прописал EDID в BIОS?Конечно.
_________________
P.P.S.
А вот вам еще один сюрприз. Я видел малайские драйвера которые вы выкладывали в какой то теме.
А вы не просматривали их внимательно? :wink2:
Это просто скопированные файлы из папки Driver которую в числе прочих при компиляции генерирует... правильно, EGMD :smile1:
Вот так, однако.Ну я же не просто так их вспомнил - они то становятся и работают (когда в БИОСе прописан натив, то и в них ничего уже не надо менять), а из EMGD я так и не смог установить. Да это было пару раз, когда на WinXP делал. А например Win 7 ставит свои WDM дрова и никаких танцев не надо - все и так работает.

Progressor
02.10.2016, 21:53
а из EMGD я так и не смог установить. Да это было пару раз, когда на WinXP делал. А например Win 7 ставит свои WDM дрова и никаких танцев не надо - все и так работает.
Вообще то из EMGD их и нет смысла ставить. Вернее, это крайне неудобно.
Просто зайти в папку с готовыми дровами и либо стартануть бат-файл, либо через inf в оборудовании.
Разница для вас будет в том, что последняя версия EMGD таки посвежее, чем та, которую использовали малайцы.
Кстати, если действительно не удалось поставить драйвера, вернее так - вы их ставите, но эффекта ноль, то это 100% забыли пару галочек в софтине поставить, сам на это напоролся.
А вот с семерой я пролетел - нифига она не поддерживала ни нужного разрешения, ни двух моников. А сейчас спокойно работают LVDS и VGA, правда, последний только в клоне.
Тоже кстати, интересный момент - если вообще не ставить никаких дров, то матрица работает в своем разрешении, а VGA в своем, не клонируется ничего.

Intel *** GCLF или GCLF2
Наверняка 945 чипсет, спасибо поищу!
_________________________
Нашел, правда в другом месте совсем http://pccar.ru/showpost.php?p=264014&postcount=95
Но прикол - теперь в досе все норм, но пропала картинка логотип при старте компа, хотя все надписи насчет клавиш F2, F7 и прочее видно, на черном фоне )))

Leobor
02.10.2016, 22:53
Да на атомных мамках с GMA графикой дрова только для галочки. Я ставлю только ради того, чтобы в диспетчере устройств не висело "вопросов". А так достаточно в БИОС подсунуть натив и все уже работает.
В любом случае одно я уяснил точно - сначала натив в БИОС, а потом все остальное.
И про семерку я говорил в этом же ключе - EDID подсунул и потом семерочные WDM дрова уже предложат 1024*600. Без EDID конечно оно не предлагается...

Nkr13
06.03.2017, 16:17
откуда брать эти данные?в датащите их нет.

bieber
14.06.2017, 01:47
Ковыряя скейлер, попутно научился считать тайминги EDID. Поделюсь выводами здесь, вдруг кому пригодится.

Горизонтальный и вертикальный blanking считаются следующим образом:
blanking = front porch + sync width + back porch
Как уже говорилось, иногда front porch ещё называют sync offset'ом.


А так считается pixel clock:
pixel clock = (horizontal active + horizontal blanking) * (vertical active + vertical blanking) * frame rate
Исходя из этой формулы можно вычислить и frame rate, зная pixel clock.
Хорошая визуализация для лучшего понимания:
https://i.stack.imgur.com/tGTx3.png

Вот лично у меня была проблема с тем, что периодически пропадало изображение по HDMI. Решилось увеличением vertical blanking.
Потом появились чёрные полосы по бокам экрана. Оказалось, китайская прошивка пыталась отресайзить изображение до пропорции 4:3. Выставил auto в меню. Правда, это уже не имеет отношения к EDID.

Leobor
16.06.2017, 17:47
откуда брать эти данные?в датащите их нет.Хоть и запоздало (просто я не так часто здесь бываю), но все же отвечу.
Я неспроста в шапке написал это:
47608
Аж два надежных способа. Чем они вам не понравились?
У вас матрица fullHD и уж на нее то найти EDID проще некуда. Все, что в шапке - это для недоматриц от всякой безродной мелюзги, а в даташитах на нормальные брендовые изделия, по моему в каждом есть готовый EDID, только он не в таблице с параметрами, а в самом конце документа, написан весь готовенький, от самого производителя. И ничего не надо пересчитывать - взять как есть целиком.
Например вот кусок даташита B101AW03:
47609
где слева в столбце и есть тот самый EDID. Набираете его в гексэдиторе и сохраняете.

gonzickus
12.06.2018, 20:05
крутая тема.мало чего в ней понял,но прошу совета.
надумал прикупить матрицу
http://www.panelook.com/VVX13F009G00_Panasonic_13.3_LCM_overview_22524.htm l
и к ней EDP-контроллер
https://ru.aliexpress.com/store/product/HDMI-VG-frequency-HD-universal-eDP-LCD-screen-driver-board-10-17-3inch/1038287_32776687404.html?spm=a2g0v.12010615.0.0.42 ba2e72FUoe5D
продавец говорит-работать матрица с его контроллером должна,но 100% гарантий не даёт.
и вот вопрос-понадобятся ли какие -нибудь манипуляции с EDID ?
или контроллеру всё-равно в отличии от материнской платы ?
cgfcb,j

Leobor
13.06.2018, 02:06
...понадобятся ли какие -нибудь манипуляции с EDID ?Скорее всего нет. И то только потому, что матрица фульная (а это все таки обычные данные, не экзотические), а контроллер - относительно свежий (все таки китайцы совершенствуются). Все будет видно только по результатам тестов.
...или контроллеру всё-равно в отличии от материнской платы ?Что значит "все равно" и что значит "в отличии"? Материнка - источник сигнала, контроллер - приемник сигнала. Материнка, прежде чем выдать сигнал на видеовыход, "обращается" к контроллеру, который ей должен "рассказать", какой именно сигнал ему нужен. И если он вместо корректных своих данных "расскажет" материнке какую нибудь чушь - она тогда и выдаст чушь. В EDID и зашифровано то самое, что он должен "рассказать". А вот "рассказ" этот содержит данные о нативном разрешении и обо всех режимах, которые контроллер может осилить.

gonzickus
13.06.2018, 06:58
спасибо.надо обдумать это.
может я неправильно сформулировал вопрос.
делает ли EDP-контроллер какой либо запрос к матрице,или выдаёт сигнал и всё

Leobor
13.06.2018, 12:37
спасибо.надо обдумать это.
может я неправильно сформулировал вопрос.
делает ли EDP-контроллер какой либо запрос к матрице,или выдаёт сигнал и всёУниверсальный контроллер - это не компьютер и мозгов у него нет. Поэтому к матрице такие контроллеры не обращаются. К тому же EDID на борту имеют только матрицы для ноутов и нетбуков. У остальных этого нет. Соответственно EDID, который находится в прошивке контроллера (к нему обращается графика компьютера) к EDID матрицы не имеет никакого отношения. В нем просто должны содержаться данные матрицы, с которой этот контроллер работает.

gonzickus
13.06.2018, 12:55
Универсальный контроллер - это не компьютер и мозгов у него нет. Поэтому к матрице такие контроллеры не обращаются. К тому же EDID на борту имеют только матрицы для ноутов и нетбуков. У остальных этого нет. Соответственно EDID, который находится в прошивке контроллера (к нему обращается графика компьютера) к EDID матрицы не имеет никакого отношения. В нем просто должны содержаться данные матрицы, с которой этот контроллер работает.спапсибо.значит у меня есть шанс,что матрица заработает с этим контроллером.уж больно сладкая матрица по параметрам-хочу её

ank1965
31.07.2018, 23:19
Иногда бывает необходимо чуть изменить прошивку на предмет битности подключенной матрицы. .......Да, и не забудьте, что этот способ - для китайской прошивки под контроллер на RTD2660H и конечно же не будет применим к контроллерам на TSUM или MStar...

Вопрос: Для переделки не китайской прошивки под контроллер на RTD2660H с 6 бит на 8 надо найти (где-то перед данными EDID) байт 12h и заменить его на 0ah. При этом, возможно, следующий байт определяет количество каналов LVDS и равен 00h. Т.е. байт 12h в системе команд RTD2660H означает работу в режиме 6 бит, а 0ah - 8 бит? Команда, задающая работу в режиме 6/8 бит - это только один байт или все же последовательность из нескольких байт (типа записи в определенный регистр нужного значения)?

Leobor
01.08.2018, 00:31
... байт 12h в системе команд RTD2660H означает работу в режиме 6 бит, а 0ah - 8 бит? Команда, задающая работу в режиме 6/8 бит - это только один байт или все же последовательность из нескольких байт (типа записи в определенный регистр нужного значения)?Только один байт

ank1965
01.08.2018, 13:29
Только один байт

т.е. это значение некоего управляющего регистра у 2660, который задает ее режим работы: 8 или 6 бит?
И это значение не привязано к прошивке (и в китайской и в любой другой 12h это 6 бит, 0ah - 8 бит)?

Leobor
05.08.2018, 00:14
Не совсем так. Прошивка компилируется. Этот байт привязан к тому месту, где прописан рабочий режим и появляется там в результате компиляции, а не просто от балды. Ведь в программу-компилятор вносятся данные, не привязанные ни к чему, а уж потом компилятор привязывает их сам к нужным регистрам. Например в китайских прошивках он именно там (в области рабочего режима) и в прошивках разных лет выхода (или для разных контроллеров) этот байт может находиться по разным адресам, но все равно в области описания рабочего режима.
Фактически изменяя этот байт, мы вмешиваемся в продукт компиляции только для коррекции, а что касается копнуть поглубже (например попытаться втиснуть логотип или изменить алгоритм работы контроллера в целом) - уже не получится.

toweroff
04.06.2019, 11:48
Добрый день
Есть преобразователь HDMI->LVDS (2 канала) на связке от TI (TFP401A+DS90C387A). Рабочий :yes2:
То есть никаких скалеров
В ДШ на китайскую матрицу только вот такая информация:

И никак не получается собрать в дельтакасте EDID - матрица никак не воспринимает то, что ей гонится по LVDS
Или моргает перебором цветов по кругу (как при отсутствии сигнала), или что-то более-менее осмысленное появляется при "вдвигании" любого окна в область второго монитора.
Помогите, пожалуйста, с выставлением правильных значений в DetailedTimings