УПРАВЛЕНИЕ ТЕЛЕВИЗОРОМ LG SM9800 ЧЕРЕЗ USB Порт

Про внешнее управление телевизором LG через порт RS232 я уже писал. Это был телевизор модельного ряда 2010 года и разъем RS232 в форм факторе DE9 (D-Sub 9pin) у него присутствовал на задней панели. В последующие годы LG сменили привычный разъем DE9 на Jack 3.5. При этом изменения коснулись только внешнего вида разъема, цифровой интерфейс остался RS232.

Разъем RS232 DE9 (D-Sub 9pin)  для внешнего управления телевизором LG
Разъем RS232 DE9 (D-Sub 9pin) для внешнего управления телевизором LG
Разъем Jack 3.5 — RS232 для внешнего управления телевизором LG
 Разъем Jack 3.5 - RS232  для внешнего управления телевизором LG
Разъем Jack 3.5 — RS232 для внешнего управления телевизором LG

Когда встала задача добавить телевизор LG модели 2019 года в систему «умный дом», я использовал для внешнего управления  Web API работающее через TCP, так как это Smart TV, работающий под управлением операционной системы WebOS. Но как оказалось API поддерживает не весь функционал который доступен в телевизоре.

Было решено подключить использующийся ранее переходник для управления через RS232. Взглянув на заднюю панель телевизора, я надеялся увидеть на ней знакомый порт RS232 в форм факторе Jack 3.5 или DE9, но на удивление я не обнаружил такого разъема вовсе. 

Настало время заглянуть в инструкцию. Из которой стало ясно, что телевизор все таки умеет управляться не только через API, но так же и через USB разъем, т.е. LG отказались полностью от RS232 в пользу USB. При этом для управления поддерживается не любой переходник USB-UART, а только выполненный на микросхеме Prolific PL2303, причем VID и PID устройства должны быть определенными: Vendor ID : 0x0557, Product ID : 0x2008.

USB разъем для внешнего управления телевизором LG
USB разъем для внешнего управления телевизором LG

 Для изготовления переходника покупаем на али готовый USB-UART переходник за ~ 40 рублей.

USB - UART TTL переходник на микросхеме PL2303
USB — UART TTL переходник на микросхеме PL2303

Так как чипы PL2303 по умолчанию имеют VID 0x067B / PID 0x2303, то для того чтобы телевизор увидел наш переходник нам нужно их поменять на  VID 0x0557/ PID 0x2303. Тут стоит обратить внимание, что есть как минимум две ревизии данного чипа PL2303HXA и PL2303HXD, их отличия хорошо видны на блок схеме:

Чип PL2303HXD имеет встроенный тактовый генератор на 96 МГц и встроенную OTPROM (одноразово программируемое ПЗУ) память для записи в нее необходимых VID и PID устройства. На али, как правило, переходники продаются на чипе PL2303HXA, который не имеет встроенной памяти, отличить визуально их можно по наличию у PL2303HXA внешнего кварцевого резонатора на 12 МГц. У этих чипов нет встроенной EEPROM, но есть возможность подключения внешней I2C EEPROM, например серии 24c02.

Как видно по типовой схеме, EEPROM подключается к пинам 13 и 14 с положительной подтяжкой линии через резисторы.

Типовая схема переходника USB-UART с использованием внешней EEPROM
Типовая схема переходника USB-UART с использованием внешней EEPROM

Припаиваем микросхему EEPROM к переходнику, я сделал это так:

Для программирования установленной EEPROM можно воспользоваться программой EEWriter.

Подключаем переходник USB-UART к компьютеру, запускаем программу EEWriter, выставляем нужные значения VID и PID, нажимаем кнопку Write EEPROM, Все.

Скриншот программы EEWriter

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

Можно управлять телевизором, набор команд можете посмотреть в руководстве по эксплуатации телевизоров LG LED TV (см. ниже).  Если вы используете в качестве сервера «умного дома» IoBroker, то для него я написал драйвер IoBroker.lgtv-rs.

1
Отправить ответ

avatar
1 Цепочка комментария
0 Ответы по цепочке
0 Последователи
 
Популярнейший комментарий
Цепочка актуального комментария
0 Авторы комментариев
Авторы недавних комментариев
Новые вначале Старые вначале По голосам
trackback

[…] продолжении истории с управлением телевизором LG через USB порт, решил […]