Перейти к содержанию

Быстрые вопросы по ремонту телевизоров • Предварительная диагностика • KenotronBot

Оценить эту тему:


Сообщение добавил LiVan,

      Рубрика "Вопрос-ответ" на форуме KenotronTV

💬 Советы экспертов и обсуждение практических случаев

Правила темы:

  1. Данная тема функционирует без участия модераторов.
  2. Все пользователи обладают одинаковыми правами и обязанностями.
  3. При возникновении любых вопросов или замечаний относительно сообщений других участников воспользуйтесь кнопкой «Жалоба», расположенной под соответствующим сообщением.
  4. Соблюдение этих простых правил обеспечит комфортное и продуктивное взаимодействие внутри нашей темы.

Важно!

Данная тема предназначена для быстрых вопросов и предварительного обсуждения.

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

Это позволит сохранить полезную информацию, сделать её удобной для поиска и постепенно пополнять техническую базу знаний KenotronTV.

Порядок и техподдержку темы обеспечивает наш @KenotronBot

Рекомендуемые сообщения

Опубликовано

@ильшат , смотри. Ситуация классическая для этих "ноунеймов" на шасси ZP.256E (это китайский клон Вестела, часто встречается в DEXP, Hi, Novex и прочих).

То, что универсальный пульт работает, а родной нет — значит, ИК-тракт на плате жив (приемник, обвязка, питание 3.3/5V в норме). Проблема чисто софтовая: либо не тот keymap (таблица кодов), либо ТВ висит в factory/aging mode (режим прогона), где обычный пульт блокируется или работает только сервисный.

Что делать по шагам:

Выход из режима прогона.

Родная прошивка стартует сразу в "рр" (режим прогона/старения).

В этом режиме система часто игнорирует обычный пульт.

Попробуй зажать кнопку SOURCE или MENU на самом ТВ (если есть кнопки) на 10-15 секунд.

Или ищи на плате кнопку POWER (обычно рядом с разъемом кнопок) — удержание при включении может вывести из factory mode.

Если не помогает, нужен UART. В логе загрузки ищи строки aging mode, factory mode, burn-in.

Командой через UART (если есть adb shell или консоль) можно сбросить флаг: echo 0 > /sys/class/... (зависит от платформы), но проще найти сервисную комбинацию.

Лог UART — это обязательно.

Подключай UART (115200), включай ТВ и жми кнопки родного пульта.

Если в логе сыпется что-то типа key code 0x45, ir_decode, input: key XXXX — значит, плата видит пульт, но не знает, что это за кнопка. Тогда проблема в keymap.

Если в логе тишина при нажатии родного пульта (а универсальный дает коды) — значит, родной пульт выдает другой протокол (например, не NEC, а RC5 или китайский вариант с другой частотой/длительностью импульсов). Тут софтом не полечишь, только пульт менять или переделывать.

Какие разделы трогать?

Целиком разделы не подменяй — получишь кирпич или несовместимость ядер.

Keymap (коды кнопок) лежит в разделе system (иногда vendor) в файлах /system/usr/keylayout/*.rc или /vendor/etc/rc_keymap/.

Чтобы их править, нужно монтировать раздел, редактировать .rc файл и запаковывать обратно.

Это делается через UART/ADB или если есть доступ к файловой системе.

Раздел config или factory (иногда называется bdinfo, misc) — там лежат серийники, MAC-адреса и настройки типа пульта/панели.

Если в родном дампе там прописан "пульт тип 1", а в залитом "пульт тип 2" — работать не будет.

Но структура этого раздела у каждого производителя своя, просто так его не отредактируешь без утилиты от производителя.

Итог:

Сначала выведи ТВ из режима прогона (ищи комбинацию кнопок на плате или в сервисном меню).

Затем сними лог UART при нажатии родного пульта.

Если коды есть — правь .rc файл в system.

Если кодов нет — пульт несовместим по протоколу, только замена пульта на универсальный с обучением или подбором кода.

Дампы с "сибирского" могут быть кривые именно в части keymap или factory-раздела.

Ищи родной дамп именно под модель XX8855-32 и шасси ZP.256E.818R00, а не просто "похожий". 

Да, @ильшат , файл Samsung 32 ZP.256E.818R00 подвисает.rar весом 1.3 ГБ я сейчас не скачаю и не распакую. Это не тот инструмент для таких объемов, да и смысла гонять гигабайты мусора ради пары байт конфигурации нет.

Но раз у тебя этот архив на руках, давай работать по-взрослому. Распаковывай и смотри сам, либо выкладывай сюда конкретные фрагменты.

Что именно нужно вытащить из этого архива, чтобы решить проблему с пультом на шасси ZP.256E (это типичный китайский клон Vestel 17MB82/17MB130):

1. Лог загрузки (UART log) Мне нужен текстовый фрагмент консоли при включении и, самое главное, в момент нажатия кнопок родного пульта.

Если видишь ir_decode, rc_core, key code 0xXX — значит, плата пульт видит, но не знает, что это за кнопка. Проблема в маппинге (.rc файле).

Если при нажатии родного пульта в логе гробовая тишина, а универсальный сыплет кодами — значит, родной пульт шлет другой протокол (не NEC, а что-то кривое китайское), и софтом это не лечится. Только замена пульта.

2. Раздел factory, config или bdinfo В этих шасси тип пульта часто задается одним байтом или флагом в начале этого раздела.

Открой дамп этого раздела в HEX-редакторе (HxD или подобный).

Сделай текстовый поиск по словам IR, REMOTE, KEY, FACTORY.

Часто там есть байт, отвечающий за тип пульта (например, 00 = простой ИК, 01 = ИК с доп. функциями, 02 = BT). Сравнение этого байта в "родном" и "неродном" дампе часто дает ответ.

3. Файлы .rc из раздела system Если в архиве есть дамп system.img или распакованная файловая система, ищи пути /system/usr/keylayout/ или /vendor/etc/. Там лежат файлы типа Vendor_XXXX_Product_XXXX.kl или remote.kl. Сравни коды кнопок из этого файла с теми, что реально приходят от пульта (если они видны в UART).

4. Режим прогона (Aging/Factory mode) Ты писал, что "ТВ закрыт на прогоне" и "родная прошивка стартует сразу в рр". В этом режиме обычный пульт часто блокируется намеренно, чтобы не сбить настройки старения.

Ищи в логе UART строки aging mode = 1 или factory mode.

Сбрасывается это либо через сервисное меню (комбинация кнопок на корпусе: например, удержание Menu + Source, или удержание Power на плате при подаче питания), либо через запись 0 в соответствующий узел /sys/ через UART/ADB.

Твой следующий шаг: Не кидай мне гигабайтные архивы.

Подключи UART, включи ТВ, понажимай родной пульт. Скопируй сюда 20-30 строк лога, где видна реакция (или ее отсутствие) на кнопки.

Или открой дамп factory/config в HEX-редакторе и скажи, какие значения там прописаны по адресам, связанным с IR или Remote.

Действуем по схеме: диагностика (лог) -> анализ (hex/ключи) -> правка. Жду конкретные данные.

Онлайн поддержка в  🔗 Гостевой чат - 24 часа!

 

Опубликовано

целиком подменял не помогает и вендор по моему и систем  и слейвбут и фэстбут и бут по моему не помогает пробую на своём майне.

вот коды с постал3 родного и универсального пультов

Спойлер

R NUM: 0x3
IR KEY: 0x639cff00
IR KEY: 0xfe019088


Config Load Success.
SiUSBXp.dll loaded .
New style Dll in use ...
Count of USB-devices = 1
Num of device to use = 0
Connection opened .
- receiver started ...
******
NECx|A:4040|C:00
usb-device closed.
Connection opened .
- receiver started ...
***
NECx|A:4040|C:31
usb-device closed.
Connection opened .
- receiver started ...

NECx|A:4040|C:21
usb-device closed.
Connection opened .
- receiver started ...
********
NECx|A:4040|C:02
usb-device closed.
Connection opened .
- receiver started ...
***********
NECx|A:4040|C:71
usb-device closed.
Connection opened .
- receiver started ...

- NEC overload !
dec.bits=63
usb-device closed.
Connection opened .
- receiver started ...
********
NECx|A:4040|C:71
usb-device closed.
Connection opened .
- receiver started ...
**
NECx|A:4040|C:72
usb-device closed.


Config Load Success.
SiUSBXp.dll loaded .
New style Dll in use ...
Count of USB-devices = 1
Num of device to use = 0
Connection opened .
- receiver started ...
*****
NECx|A:BF00|C:10
usb-device closed.
Connection opened .
- receiver started ...
*****
NECx|A:BF00|C:13
usb-device closed.
Connection opened .
- receiver started ...
*
NECx|A:BF00|C:14
usb-device closed.
Connection opened .
- receiver started ...
**
NECx|A:BF00|C:0F
usb-device closed.
Connection opened .
- receiver started ...
**
NECx|A:BF00|C:4D
usb-device closed.
Connection opened .
- receiver started ...
********
NECx|A:BF00|C:44
usb-device closed.
Connection opened .
- receiver started ...
*
NECx|A:BF00|C:00
usb-device closed.
Connection opened .
- receiver started ...
**
NECx|A:BF00|C:16
usb-device closed.

 

а в логе на нажатие по моему нет реакции может так и должно быть.

но в логе есть какие ир коды при др вначале написал.

Опубликовано

@ильшат , вот теперь мы приблизились к делу.

Логи с Пост-3 — это то, что нужно.

Давай разберем эту картину по косточкам, потому что ответ лежит прямо в этих строках.

1. Главная причина игнора: несовпадение Адреса (Address)

Смотри внимательно:

  • Родной пульт шлет: NECx | A:4040 | C:xx
  • Универсальный пульт шлет: NECx | A:BF00 | C:xx

Инфракрасный протокол адресный.

Если прошивка ТВ (а точнее, его Device Tree или конфиг IR-драйвера) настроена слушать адрес BF00 (или 00FF, который часто маскируется под универсальные), то пакеты с адресом 4040 ядро Linux (модуль rc_core) молча отбрасывает на самом низком уровне.

До таблицы ключей (keymap) дело даже не доходит. Поэтому в UART тишина.

Это не «так и должно быть», это фильтр на уровне драйвера.

2. Критическая аномалия родного пульта

Вот эта строка: NEC overload ! dec.bits=63 Это красный флаг.

Стандартный пакет NEC — 32 бита. NECx (Extended) — 32 или 48 бит. 63 бита — это цифровой мусор.

Это значит, что родной пульт либо:

Имеет севшие батарейки (просадка питания МК искажает тайминги).

Имеет «битый» кварц 16 МГц или сам МК (ты его, кстати, грел/менял?

«пропаивал там мс МК» — если перегрел, он мог поплыть по частоте).

ИК-диод в пульте дает двойные срабатывания (дребезг), и приемник Пост-3 (и приемник ТВ тоже!) воспринимает это как один гигантский искаженный пакет.

Телевизор видит этот мусор, не может его корректно декодировать в рамках заданного протокола и просто игнорирует.

3. Режим прогона (Aging / Factory Mode)

Ты писал, что ТВ стартует сразу в «рр». На шасси типа ZP.256E (клоны Vestel 17MB...) в этом режиме стандартный ввод с пульта часто аппаратно или программно блокируется, чтобы рабочий на конвейере не сбил настройки старения.

ТВ ждет только определенные сервисные команды или команды с кнопок на плате.

План действий (от простого к сложному):

Шаг 1. Исключить аппаратный брак пульта. Прежде чем ковырять дампы, убедись, что родной пульт выдает чистый сигнал.

Замени батарейки на заведомо свежие.

Посмотри на ИК-диод пульта через камеру смартфона при нажатии.

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

Если Пост-3 снова выдаст dec.bits=63 или overload — пульт под замену или переделку (перепайка МК/кварца/конденсатора по питанию МК).

Шаг 2. Выход из режима прогона (без программатора).

Пока ТВ в aging mode, борьба с пультом бессмысленна.

Попробуй классические комбинации для этого шасси (делать на выключенном ТВ, затем включить):

Зажать кнопку POWER на самой плате (не на шлейфе кнопок, а именно пятачок на майне) и, не отпуская, подать питание.

Зажать MENU + SOURCE на корпусе ТВ (если есть) при включении.

Если есть сервисная клавиатура: MUTE -> 1 -> 9 -> 9 -> 9 -> ENTER.

Цель — увидеть нормальный запуск Android/Linux с запросом начальной настройки, а не серый экран с надписями прогона.

Шаг 3. Если пульт выдает чистый A:4040, а ТВ все равно молчит.

Значит, в твоем дампе (даже в «родном») прописан неверный протокол для этой конкретной модификации платы.

Чтобы это исправить, нужно лезть не в разделы целиком, а в Device Tree (.dtb / .dts), который обычно запакован в разделе boot или dtbo. Там есть узел, отвечающий за ИК, примерно такой:

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

Если в дампе, который работает с универсальным пультом, прописан маппинг под BF00, а ты хочешь использовать пульт 4040, тебе нужно:

Распаковать boot.img или dtbo.img.

Декомпилировать .dtb в .dts (инструментом dtc).

Найти секцию IR и проверить/изменить ожидаемый адрес или имя файла раскладки (rc-map-name).

Скомпилировать обратно и залить раздел.

Резюме:

Сначала добейся от родного пульта стабильных 32/48 бит без overload на Пост-3.

Затем выведи ТВ из режима прогона.

Если после этого универсальный работает, а родной нет — значит, в прошивке жестко зашит адрес BF00, и тебе либо нужен пульт с адресом BF00 (переобучить универсальный или найти донора), либо править Device Tree в дампе.

Что покажет Пост-3 на родном пульте после замены батареек и проверки пайки МК?

  • Положительно 1

Онлайн поддержка в  🔗 Гостевой чат - 24 часа!

 

Опубликовано

Ошибка Overload (перегрузка) возникла из-за случайного нажатия, такое иногда случается. Что касается ДТБО, мы планировали перенаправить его, но в итоге решили оставить всё без изменений, так как этот процесс оказался довольно трудоёмким. Спасибо.

Опубликовано

Добрый день. Волнуюсь за качество  реболлинга. Жду осциллограф и ЛБП

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Это очень просто!

Регистрация

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   1 пользователь онлайн

×
×
  • Создать...