Информация: Пожалуйста, уделите немного вашего времени и перейдите в профиль для выбора вашего национального флага.

JTAG - по нашему ДжеТагJTAG ДЛЯ ТЮНЕРОВ GLOBO НА ПРОЦЕССОРАХ ALI M3329B/M3329C

Модераторы: KOSTEY, RomaamoR, boom, kakgrek, Дима75, suen, Мордовораторы


Аватара пользователя

JTAG ДЛЯ ТЮНЕРОВ GLOBO НА ПРОЦЕССОРАХ ALI M3329B/M3329C

Сообщение RomaamoR » 20 июл 2011, 19:43

JTAG ДЛЯ ТЮНЕРОВ GLOBO НА ПРОЦЕССОРАХ ALI M3329B/M3329C

Начнём с того, что такое Jtag.

JTAG (сокращенно Joint Test Action Group - специализированный интерфейс для отладки и программирования ,стандарт IEEE 1149.1 ) – это отладочный интерфейс, предусмотренный производителями электроники в первую очередь для своих сервис-центров. Используя его можно получить доступ ко всем устройствам аппарата, опросить их, считать данные, записать и т.п. и т.д. Но это нам не сильно интересно, наиболее интересным, ценным и единственным свойством этого интерфейса, которое мы используем, является возможность внутрисхемного программирования микросхем памяти ресиверов. Т.е. мы можем с помощью этого интерфейса восстанавливать потерянное или испорченное содержимое флэш-памяти спутниковых ресиверов не выпаивая микросхем и без необходимости использования программаторов.

Для чего это нужно.

Появляется эта необходимость в тех случаях, когда в ресивере отсутствует возможность загрузки в него программного обеспечения через последовательный порт стандартным способом. Причин много, начиная от того, что во время смены ПО может просто хотя бы кратковременно пропасть электричество в сети, может зависнуть компьютер и заканчивая тем, что можно просто по ошибке а во многих случаях и по незнанию залить в ресивер софт, не предназначенный для данной модели. Вот тогда и приходиться либо выпаивать микросхему памяти и восстанавливать её содержимое на программаторе или же использовать отладочный интерфейс. Естественно, что для первого варианта восстановления нужно иметь программатор, желательно универсальный, потому что в ресиверах даже одной марки и модели может быть использовано несколько типов микросхем, для каждой из которых нужен свой программатор. Даже в мастерских, не во всех есть такое удовольствие, да и процедура просто выпаивания микросхемы, тем более с условием, что она при этом не должна быть повреждена и, нужно не повредить печатную плату, требует не любительских навыков, опыта и некоторого количества оборудования, опять таки не совсем дешёвого и не у всех имеющегося. И вот здесь на выручку приходит отладочный интерфейс – JTAG. Он универсален и, как отмечено выше, соответствует единому стандарту для всех, в данном случае, ресиверов. С его помощью мы может произвести программирование микросхемы флэш-памяти ресивера не выпаивая её.

Что для этого нужно.

Для того, что бы запрограммировать флэш ресивера с помощью JTAG кроме собственно «пациента», т.е. ресивера, который нам необходимо «оживить» нам нужно иметь следующее:
1.Интерфейс, т.е. простыми словами переходник, через который мы будем подключать ресивер к порту компьютера.
2.Компьютер с параллельным портом(LPT), наличие параллельного порта обязательно, поскольку наиболее распространённые интерфейсы и программы работают через этот порт.
3.Программа EJTAG TT 1.0.6.14 , с помощью которой мы будем производить данную процедуру.
4.Если на компьютере ОС Windows XP, то ещё и драйвер giveio.sys .
5.То, что мы будем записывать во флэш. Это может быть или полный дамп флэш или только загрузчик тюнера(лоадер), подробней – далее.
6.Шнур LPT, которым будет соединён интерфейс с компьютером.
7.Ну и самое главное – желание и необходимые знания. С желанием я не помогу, а со знаниями постараюсь.

Где всё это взять.

1.Либо купить готовый, либо самому собрать. Первый случай пропускаю, о втором напишу.
2.Компьютер уже есть у того, кто это читает, а вот параллельный порт не знаю. Если мамка без него, то хуже, оставляю эту проблему каждому на своё усмотрение. Можно попользоваться чужим компьютером с портом, можно мамку поменять, можно купить порт на PCI шине. Впрочем, здесь разговор не об этой проблеме.
3.Программа. Для реанимации ресиверов Глобо и всех их клонов а так же Евросатов/Евроскаев и их клонов на данных процессорах я использую EJTAG TT 1.0.6.14.
4.Запускаем файл inst giveio.exe.
5.Если нам нужен полный дамп флэш ресивера – искать его не надо, потому что файл ПО ресиверов Глобо и Евросат и есть дампом флэш. Для Глобо надо только сменить расширение файла с *.abs на *.bin, а ПО Евросатов и так имеет это расширение. Если мы имеем случай, когда нам для заливки нужен только загрузчик(лоадер) ресивера, то поступаем одним из двух способов – или скачиваем готовый файл с загрузчиком, или делаем его самостоятельно. Для этого в HEX-редакторе отрезаем от файла ПО первые 65536 байт и сохраняем как отдельный файл *.bin. Это и есть загрузчик.
6.Шнур можно купить в любом компьютерном магазине.
7.Желание у того, кто дочитал до этой строки, видимо есть, так что пора давать обещанные знания.

Шаг первый.

Первое, что нужно – это собрать схему. В Интернете распространены два варианта схемы интерфейса. Первый вариант самый примитивный, на резисторах. Вот его схема:
Изображение
Единственным его преимуществом является простота. И именно из-за простоты и своей примитивности у него есть недостатки. Во-первых, длина соединения через такую схему не должна превышать нескольких сантиметров, очень желательно не более трёх-четырёх. Иначе большая вероятность сбоев и ошибок при работе. Во-вторых, попадаются некоторые тюнера, с которыми вообще невозможно ничего сделать при таком подключении. В лучшем случае кое-каких результатов можно добиться тщательно подбирая сопротивления резисторов. Можно пробовать если нужно восстановить единственный свой тюнер. Я пробовал такой вариант схемы и несколько тюнеров восстановил, но не всегда чётко определялся процессор и были ошибки записи, из-за чего приходилось повторять всё по несколько раз. Несколько тюнеров при таком варианте мною были просто списаны, поскольку, не смотря на все старания коннекта с программой не было и я думал что вышел из строя процессор. В последствии эти тюнера были успешно восстановлены с использованием интерфейса на микросхеме. О нём речь дальше. Вот один из предлагаемых в интернете вариантов схем интерфейса на микросхеме и рисунок печатной платы для него:
Изображение
Данная схема не имеет недостатков предыдущей, поэтому с ней нет проблем, присущих первой схеме.
Питание на схему подаётся от ресивера, к которому она подключается. В использовании внешнего источника питания для схемы нет необходимости по двум причинам. Во-первых, потребляемый ток очень мал и не создаёт дополнительной нагрузки на блок питания ресивера, во-вторых, питание от того же источника, что и процессор с флэш-памятью улучшает согласование логических уровней. В Интернете я встречал такую же схему, но отличающуюся отсутствием резисторов между шиной 3,3 вольт и выводами 2, 4, 6 микросхемы. Не считаю такое упрощение нужным, так как стоимость трёх резисторов не настолько велика, насколько снижается надёжность работы устройства.
Именно этой схемой я пользуюсь и именно с ней были успешно восстановлены тюнера, которые просто не определялись со схемой на резисторах.
Когда схема собрана, нас ждёт

Шаг второй.

Для работы с ресиверами на процессорах Ali M3329B/M3329C нужна программа EJTAG TT 1.0.6.14. Программа не требует инсталляции, достаточно распаковать архив в папку в удобном месте на компьютере и можно её запускать. Но, если операционная система Windows XP, то для работы нужно ещё установить драйвер. Для этого запускаем файл inst giveio.exe и после его выполнения перегружаем компьютер. В дальнейшем драйвер giveio.sys будет запускаться при запуске ОС.
Программа есть, драйвер установлен, следующим будет

Шаг третий.

Подготавливаем то, что предстоит записывать во флэш. В любом случае, если не производилась замена микросхемы флэш-памяти, стоит начать с записи загрузчика ресивера. Поэтому его и готовим. Если он скачан из Интернета и упакован в архив, то распаковываем его в удобное место на жёстком диске, можно и в ту же папку, что и программа. Если такового не найдётся, то можно его сделать самостоятельно. Для этого файл ПО(прошивки, софта) тюнера открываем в HEX-редакторе, я пользуюсь для этого программой WinHex , выделяем блок с начальным и конечным адресами соответственно 0000 – FFFF и сохраняем этот блок в новый файл, присваиваем ему имя на свой вкус и расширение *.bin. Файл должен получиться размером 65536 байт. Это и есть загрузчик или иначе лоадер тюнера. Если в тюнере менялась микросхема флэш, то понадобится заливать полный дамп. Так же полный дамп понадобится если заливка загрузчика не дала нужного результата. Для удобства в ту же папку ложим и полный дамп - для евросатов/евроскаев просто копируем файл софта, можно даже и выкачанный из исправного ресивера, вместе с настройками и ключами, тогда после реанимации тюнер получится уже полностью настроенным, для глобо – поступаем точно так же, но кроме этого меняем расширение файла с *.abs на *.bin.

Шаг четвёртый.

Подключение к тюнеру и перевод его в отладочный режим(Debug mode).
Кроме того, что нам надо подключить через уже имеющийся интерфейс тюнер к компьютеру, нужно ещё перевести тюнер в режим отладки, иначе его называют на английском языке Debug mode. На разных ресиверах это производится по разному. Для ресиверов Евросат/Евроскай на обеих типах процессоров необходимо соединить перемычкой предназначенные для этого контактные площадки на плате. Эти точки обведены на рисунках красным цветом. В ресиверах на процессоре 3329В возле этих точек есть надпись CPU PROBE EN, в ресиверах на процессоре 3329С стоит обозначение JP1.
Изображение
Изображение
Несколько иначе переводятся в отладочный режим ресиверы Глобо. Для Глобо 7010А и клонов(3329В) для этого рекомендуется отпаять резистор R36 и припаять его в позицию R35. На практике используется другой способ – надо соединить точку соединения этих резисторов с источником напряжения 3,3 вольта через резистор сопротивлением 3,3 кОм. Подчеркну, что на плате ресивера установлен только R36, а R35 нет, есть только место для его установки, и устанавливать его не надо.
Изображение
Изображение
В Глобо/оптикум 4100С и их клонах(3329С) для перевода в отладочный режим нужно снять джампер, отмеченный на плате позицией JP1.
Точки подключения интерфейса на рисунках обведены синим цветом. Последовательность назначения точек во всех моделях одинакова и в точности соответствует последовательности, указанной на схемах переходников. Однако если в Евросатах/Евроскаях сложности не возникает по причине того, что точки подписаны на плате тюнера, то в большинстве Глобо 7010А и клонов ничего не подписано. А в Глобо/Оптикум 4100С и клонах я неоднократно встречал надписи, сделанные в обратной последовательности, т.е. ошибочные. Здесь выход очень прост – достаточно определить точку GND, т.е. точку, соединённую с общим проводом схемы и от неё вести отсчёт и ошибка будет исключена. Сделать это можно либо просто визуально, внимательно осмотрев плату, либо прозвонить прибором.
Теперь ресивер подключен к компьютеру, произведены действия, необходимые для включения отладочного режима, подготовлены программа и дамп, драйвер установлен и запущен.


Шаг пятый.

Включаем ресивер в сеть и запускаем EJTAG TT 1.0.6.14. Видим вот такое окно программы.
Изображение
Для начала смотрим настройки. Слева находится окошко с адресом параллельного порта. Изменять надо если в компьютере он имеет отличный от устанавливаемого по умолчанию. Ниже указан базовый адрес ресивера. Не трогаем, должен быть как на рисунке. Второй и третий столбцы так же не трогаем. В четвёртом столбце нужно выбрать тип флэши. Что где стоит - останавливаться не буду, кто не знает – пробуйте всё по очереди. Что бы быстро писать флэшку ставим галочку напротив «Fast AMD/SPI». Далее жмём «коннект». В окне программы должен побежать текст лога. Для примера приведу скриншоты, сделанные при записи загрузчика в тюнер Евросат 3023 (3329В), в который было залито ПО от Евросата 3023 Супер (3329С).
Изображение
Если после нажатия кнопки «коннект» программа сообщает, что флэш ID нету в *.ini –файле, то надо правильно выставить тип флэши в правом столбце программы. В данном случае в тюнере установлена флэш SST 39VF1681, установки для неё видны на рисунке. Выше я уже написал, что можно просто попробовать наугад перебрать разные комбинации «точек» и «галочек», нажимая после каждого раза «коннект» и наблюдая за логом. Не буду вдаваться здесь в подробности как правильно определить, что надо установить, поверьте, что перепробовать разные комбинации и попасть на правильную будет гораздо быстрее, чем разбираться с теорией и вникать во все тонкости, конечно, это в том случае, если вы восстанавливаете свой единственный тюнер или занимаетесь этой процедурой очень редко. Ну а если вы занимаетесь этим регулярно, то я думаю сами знаете что и как, да и зачем вам это вообще читать, вы и так сами всё знаете и умеете.
Итак, флэшка успешно определилась, движемся далее. Хочу строго-настрого предупредить – ни в коем случае не надо стирать флэшку, ни поблочно, ни, тем более, полностью!!! Потому что потом в неё придётся писать полный дамп, что иногда занимает очень много времени. Да и вообще, не надо ничего стирать, перед записью программа сама сотрёт столько памяти, сколько ей надо записать, она умеет это делать. Если же стереть флэш полностью, а записать только лоадер, то это не даст желаемого результата, потому что не будет работать ком-порт тюнера и всё равно придётся писать полный дамп. Или же заполнять три определённых области памяти, останавливаться не буду на этом, потому как здесь начнут возникать вопросы с правильностью выбора смещения и длины, да и времени это занимает не сильно меньше, чем запись полного дампа. И в самом деле, гораздо проще запустить полный дамп и пойти чем ни будь полезным заняться, чем сидеть и дежурить возле компьютера в ожидании, когда запишется очередной блок, что бы запустить следующий, и так аж три раза.
Следующим шагом жмём «Записать» и в окне проводника выбираем нужный файл, в случае данного примера загрузчик для Евросат 3023 (3329В).
Изображение
В окне программы видим, что она сама стёрла нужный блок и приступила к записи. В самом низу окна наблюдаем прогресс выполнения в процентах. По окончании имеем вот такой вид
Изображение
Последний шаг.

Теперь можно закрыть программу, отключить от сети ресивер и отключить от него jtag-интерфейс, так же надо не забыть вывести его из отладочного режима, в зависимости от тюнера снять или установить на место джампер или перемычку. Далее подключаем ресивер уже через ком-порт и заливаем в него софт обычным способом.
Привет. Приглашаем Вас зарегистрироваться для качественного просмотра каналов через шаринг Для просмотра ссылок Вы должны быть авторизованы на форуме.


Аватара пользователя

JTAG ДЛЯ ТЮНЕРОВ GLOBO НА ПРОЦЕССОРАХ ALI M3329B/M3329C

Сообщение sanic » 14 сен 2011, 17:55

Во вложениях файлы, необходимые для работы JTAG :

EJTAG_TT_1.0.6.14
EJTAG_TT_1.0.6.16- программы.
inst_giveio - инсталлятор драйвера giveio.sys
EJTAG_TT_1.0.6.14.rar
EJTAG_TT_1.0.6.16.rar
inst_giveio.rar
Программы аналогичны только в EJTAG_TT_1.0.6.16. добавлено большее количество распознаваемых флешек и работает она пошустрее,но то что видит EJTAG_TT_1.0.6.14. может не видеть EJTAG_TT_1.0.6.16. и наоборот так, что для контроля используйте по очереди проги начиная с EJTAG_TT_1.0.6.14.

Столкнулся при востановлении старенькой модели реса на проце ALI M3329B с дилемой при работоспособном интерфейсе ни EJTAG_TT_1.0.6.14.,ни EJTAG_TT_1.0.6.16. не видят флеши.Решил так для смеха попробовать старенькую прогу EJTAG_TT_1.0.6.12. и :tanc: процесс пошел.Выкладываю эту прогу и появилась новая EJTAG_TT_1.0.6.17.(ее еще не тестировал)
EJTAG_TT_1.0.6.12.rar
EJTAG_TT_1.0.6.17.rar
Глобо 7010С-1CI. Как и на предыдущих рисунках красным цветом обведён джампер, который надо снять для перевода проца в Debug mode, а синим место подключения интерфейса.Обращаю внимание-очень важно!!!,что некоторые ресы входят Debug mode с включенной "мордой",а некоторые наоборот с отключенной
Для просмотра ссылок Вы должны быть авторизованы на форуме.

Загрузчики.
boot SMT01---0.9.9 - Eurosat 3329B - Евросат/Евроскай 3023 и 8004 без надписи "Super", процессор 3329В
Boot SMT03---3.0.7 - Eurosat 3329C - Евросат/Евроскай 3023 Super и 8004 Super , процессор 3329C
boot 1.0.2 -Globo 4100C - Globo/Opticum 4100C, процессор 3329С
boot 1.0.3 -Globo 7010C-1CI - Globo 7010C-1CI, процессор 3329В
boot 1.1.1 - Globo7010A - Globo 7010A, процессор 3329В
boot 1.1.2 - Globo7010A - Globo 7010A, процессор 3329В

Для "убитых" Globo 7010A выложил две версии загрузчика по следующей причине. Было замечено, что практически во всех случаях для "оживления" тюнера достаточно заливки только лоадера. Однако он должен быть той версии, что и софт в тюнере. А поскольку как правило такой информации нет, то есть смысл если заливка одной версии лоадера не помогла попробовать другую. У меня такой вариант проходил неоднократно. И, поскольку, когда заливка лоадера не спасает все рекомендуют лить полный дамп, то удачная заливка другой версии сильно экономит время. Особенно это касается уже многим известных OpenFox 7010A, которые как известно умирают от софтов с загрузчиком 1.1.2.
boot SMT01---0.9.9 - Eurosat 3329B.rar
Boot SMT03---3.0.7 - Eurosat 3329C.rar
boot 1.0.2 -Globo 4100C.rar
boot 1.0.3 -Globo 7010C-1CI.rar
boot 1.1.1 - Globo7010A.rar
boot 1.1.2- Globo7010A.rar

JTAG CosmoSat 7100С ( ALI 3329С )

- для ввода в Дебуг снимается JP1
-конектится только с подключеной мордой
-контакты подключения интерфейса подписаны наоборот
-EJTAG_TT_1.0.6.12.exe или EJTAG_TT_1.0.6.16.exe(EJTAG_TT_1.0.6.14.exe-не использовать для данного реса)выставляется флешь SPI(ALI)
фото материнки (извините за качество снимал мобильником)
Для просмотра ссылок Вы должны быть авторизованы на форуме.
Да кстати ремонтировал Техносат 4100С и Евроскай ES-4050 еще два чудо китайских манипуляций -"конструктор", как в песне "Я тебя слепила,из того,что было"- мама один к одному с CosmoSat 7100С -JP1 только нету а вместо него "0"Ом резистор-перемычка которую нужно выпаять на время EJTAG,а после процесса сново установить на место
-конектится без морды и с мордой(нужно эксперементировать)
-контакты подключения интерфейса подписаны наоборот
-EJTAG_TT_1.0.6.12.exe или EJTAG_TT_1.0.6.16.exe,выставляется флешь SPI(ALI)



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

Распиновка LPT(папа)
Изображение
Лучше быть умным и иногда тупить, чем быть тупым и всегда умничать!
Мои ресиверы: Sat-Itegral 7200PVR+Sat-Integral S-1210 HD Aron + разные
Мои спутники: (4*-4.8*-13*)90+(75*)90


Аватара пользователя

JTAG ДЛЯ ТЮНЕРОВ GLOBO НА ПРОЦЕССОРАХ ALI M3329B/M3329C

Сообщение artim » 12 окт 2012, 09:05

Реанимация тюнеров CosmoSat 7100С ( ALI 3329С ),Техносат 4100С( ALI 3329С )
При проверке интерфейса(подключал рабочий CosmoSat 7100С ( ALI 3329С )-опробывал три программы EJTAG_TT_1.0.6.12-все определяет мгновенно;EJTAG_TT_1.0.6.14-вообще ничего не определяет выдает "FFFFFFFFFFF";EJTAG_TT_1.0.6.16.ex
e-думает пару секунд и определяет все и получил такие результаты

JTAG CosmoSat 7100С ( ALI 3329С )

- для ввода в Дебуг снимается JP1
-конектится только с подключеной мордой
-контакты подключения интерфейса подписаны наоборот
-EJTAG_TT_1.0.6.12.exe или EJTAG_TT_1.0.6.16.exe(EJTAG_TT_1.0.6.14.exe-не использовать для данного реса)выставляется флешь SPI(ALI)

Да кстати ремонтировал Техносат 4100С,Евроскай 4100С еще одно чудо китайских манипуляций "конструктор", как в песне "Я тебя слепила,из того,что было..."- мама один к одному с CosmoSat 7100С -JP1 только нету а вместо него "0" резистор.Выпаиваем "0" резистор,входим в Дебуг.Востановили ресивер,сняли интерфейс Джитаг,упаяли на место "0" резистор.

Внимание!!! Некоторые ресы входят в Дебуг с подключеной мордой,а некоторые- с отключеной

Кто сейчас на конференции

Сейчас этот форум просматривают: и 0 гостей