В продолжение прошлой статьи на тему DisplayPort-LVDS, решил написать о своей новой разработке контроллера HDMI-LVDS на чипе TSUMV59 от MStar. Контроллер имеет много интересного на борту, например, аналоговый выход звука, ИК порт, кнопки управления и даже OSD меню.
Основные требования к плате контроллера
- наличие OSD меню;
- наличие USB для прошивки/проигрывания файлов;
- выход аналогового или цифрового звука;
- два канала LVDS (с возможностью переключения и использования одного);
- двухпиксельный режим работы конвертера;
- поддержка матриц разной битности, в идеале от 6 до 10;
- рабочее напряжение конвертера 12В;
- рабочее напряжение панели 3,3В, 5В, 12В;
- управление яркостью/включением подсветки: 3,3В.
Требования к конструктиву
- геометрические размеры платы должны быть удобны для встраивания и максимально соответствовать плате «AHL-14.3»;
- включение/выключение, регулировка яркости кнопками на плате.
Реализация
До этого проекта мы активно использовали контроллер HDMI-LVDS «AHL-14.3», но он аппаратный и не хватало функционала OSD и звука, поэтому пришлось задуматься на счет нового устройства. Для начала я заказал плату на чипе TSUMV29, протестировал и сделал универсальную плату для TSUMV29 и TSUMV59. Для этого понадобилось изучить несколько схемотехнических решений на данном чипе (на них делают шасси для телевизоров) и прозвонить имеющуюся плату. Основное отличие TSUMV29 от TSUMV59 в том, что более новая модель позволяет использовать USB не только для прошивки, но и для проигрывания мультимедиа файлов. Также чипы имеют немного разные питания.
На входе контроллер поддерживает такие интерфейсы, как HDMI и VGA, Разрешение FullHD. На выходе одно- и двухканальный LVDS + звук 2 канала по 3W.
Что получилось после первой итерации
Рис.1. Внешний вид платы контроллера на TSUMV59 (первая итерация v1)
Плата сверху слева – это внешний EEPROM, я его пробовал подкидывать для тестов. Нижняя светлая платка – это DC/DC. На всех схемах для этого питания (1V3) используется LDO, но мне жутко не понравился его нагрев и было решено поменять его на ST1S10 (а в последствии на AP3418). В целом плата завелась сразу. Загрузчик заливается программатором на SPI Flash, затем плату можно прошивать через USB.
Рис.2. Внешний вид платы контроллера на TSUMV59 (первая итерация v2)
На этой версии тоже, стоит LDO (U2). Так как обе платы делались одновременно под разные шлейфы матриц – ошибки у них одинаковые. Также, в отличие от версии v1, на плате v2 выведен VGA, ИК-порт, выход на колонки, присутствуют некоторые настройки по питанию (DIP переключатели) и др…
Рис.3. Работа платы контроллера на TSUMV59 (первая итерация v2)
Тестил на этом мультике. Теперь я наизусть знаю песенку «Котики, вперед!».
Релизная версия
Рис.4. Релизная версия платы контроллера на TSUMV59
В итоге, после очередного витка доработок, была рождена текущая релизная версия. У нее есть все необходимые для управления кнопки, разъем для подключения клавиатуры и многое другое.
Рис.5. Релизная версия платы контроллера на TSUMV59
К сожалению, в данные момент, не имею на руках ни одной спаянной платы последней версии, так как первая спаянная партия очень быстро разошлась.
Прошивка и OSD меню
Для тех, кто не знает откуда берутся прошивки, я расскажу. Под эту схематику есть набор прошивок под разные матрицы. Китайцы клепают похожие платы в различных вариантах. Прошивок очень много, у меня их около 3Гб. Достаточно знать разрешение и размер матрицы, а также количество каналов LVDS чтобы подобрать необходимую прошивку. Из нескольких десятков матриц у меня так и не заработала только одна, что, в принципе, совсем не плохо.
Фотографии меню контроллера приведены ниже.
Рис.6. Фото меню
Рис.7. Фото плеера
Выводы
Получилась отличная разработка, которую можно использовать в своих проектах. Теперь не нужно подстраиваться под заданные габариты покупных плат, а можно развести свою в нужные габариты и с необходимыми интерфейсами.
Если у кого-то нет времени/желания заниматься разработкой, то рекомендую готовые платы с Ali, так как чип очень хорошо показал себя. Нагрев на fullHD приемлемый даже без радиатора.
Моя мечта встроить таких два контроллера и матрицами по 7 дюймов в подголовники авто, чтобы детям было чем развлекаться на заднем сидении.
Преимущества разработки
- универсальность;
- присутствует звук;
- наличие OSD меню;
- простота в настройке.
Недостатки разработки
- плата на 4-х слоях;
- нельзя доработать/изменить прошивку.
Спасибо за внимание!
Комментарии (19)
Shtucer
30.07.2019 19:03Я очень хочу такую штуку. У меня есть померший планшет от NEC, в нем есть матрица, по внешнему виду — рабочая (ни трещин, ни чего такого). Мечтаю поженить её с одной из своих малинок. Присматриваюсь к разработкам всем известного поставщика разной степени экзотичности электроники, но останавливает скудость данных о совместимости таких контроллеров с матрицами. Какие тут могут быть подводные камни и какие есть решения для обхода оных? И, конечно же, я с интересом присматриваюсь к экземплярам из ваших статей. Где? Когда? Сколько стоит? А мне подойдёт?
buksttabu
31.07.2019 13:41+1Не знаю, есть ли у вашей матрицы интерфейс LVDS, но наверняка есть подходящие скалеры, на том же Али например
Сколько стоит?
В пределах 50$
the_bat Автор
30.07.2019 19:12СЛУЧАЙНО отклонил комментарий)
Комментарий пользователя ramzes2 к публикации «HDMI-LVDS. Разработка на TSUMV59 от MStar» ожидает вашего одобрения:
А исходников прошивок для MStar чипов у вас случайно нет?the_bat Автор
30.07.2019 19:13Отвечаю) Нет, исходников, к сожалению нет.
Был проект на реалтек RTD2662, вот для него мы пилили исходники.pvvv
31.07.2019 14:08раз пилили, может сможете подсказать:
в процессе раскуривания даташита так пока и не понял, можно ли всю вот эту вот зачёркнутую красоту
поотключать совсем, заодно с синхронизацией и из аналогового VGA -> TTL, получить просто АЦП 3 х 8бит х 210МГц.
а вообще идеально было бы что-нибудь готовое, вроде FL2000 только в обратную сторону, но по такой же цене :)the_bat Автор
31.07.2019 15:50+1не могу точно сказать. Мы пилили свое меню, заставку, обрабатывали GPIO, формировали EDID. На входе было только два HDMI.
ionicman
31.07.2019 11:17+1А вопрос такой — сложно сделать такой вариант, но с управлением и дата-трансфером через цифровой интерфейс?
Например с одной стороны LVDS, а с другой I2C или SPI?
С командами типа:
- установить / считать параметры: яркость, контраст, параметры матрицы
- включить / отключить подсветку
- включить / отключить весь экран (но контроллер в спячку не уводить)
- получить / считать весь экран в формате RGB
- получить / считать кусок экрана в формате RGB по координатам X,Y и размером W,H
- уйти в сон (контроллер)
- проснуться (можно через отдельный вывод)
Вот это было-бы очень удобно для различный поделок.
Может быть что-такое встречали, или хотя-бы на чем можно сделать.the_bat Автор
31.07.2019 15:47+1это на плис)
ionicman
31.07.2019 16:57Почему на плис? Специализированного ничего нет?
the_bat Автор
31.07.2019 17:09Мы делали проект на реалтеке, там было
установить / считать параметры: яркость, контраст
включить / отключить подсветку
включить / отключить весь экран (но контроллер в спячку не уводить)
уйти в сон (контроллер)
проснуться (можно через отдельный вывод)
А вот с этми вопрос
установить / считать параметры: параметры матрицы
получить / считать весь экран в формате RGB
получить / считать кусок экрана в формате RGB по координатам X,Y и размером W,H
Как это сделать? Нужно парсить всю картинку в реалтайм, резать, сохранять. Я не знаю как это сразу так сделать.
ScriptKiddo
31.07.2019 15:46+1Прочитал в datasheet к TSUMV59 что есть поддержка до 1080p. Не в курсе, есть похожие чипы на 1440p?
zedroid
Это только из-за плеера?
PH800480T013-IHC08 — работает сразу на HDMI, А его можно подключить сразу к USB плееру.
the_bat Автор
Нет, конечно основное — это поддержка разных матриц и работа с HDMI