Прошивка еепром что это
ПЕРЕПРОШИВКА FLASH И EEPROM
В последнее время, снова как и раньше, мне пришлось частично вернуться к самозанятости по ремонтам электроники. Получив на основном месте работы избыток свободного времени, правда немного в ущерб стабильности дохода, получил взамен хорошую возможность развиваться как мастер-ремонтник. Сотрудничаю параллельно с маленькой мастерской по ремонту электроники, находящейся в проходном месте, как совместитель, плюс выкупаю технику на Авито и Юле, привожу в норму и реализую там же. Через мои руки проходит много материнских плат, блоков питания АТХ, ЖК мониторов и ТВ, и другой электронной техники.
Значительная часть современной техники является цифровой, а следовательно, содержит в своем составе микроконтроллер или процессор управляющий работой устройства. Но все эти устройства должны где-то хранить управляющую программу и настройки техники, выставленные пользователем в меню. Несмотря на то, что микроконтроллеры зачастую имеют встроенную EEPROM память, обычно для хранения настроек используется небольшая по объему отдельная микросхема памяти.
На современной технике обычно эти микросхемы идут в планарном исполнении, типа поверхностный монтаж. Ремонт техники, помимо замены деталей на плате, а иногда и вместе с ними, включает в себя условно программную часть ремонта, перепрошивку данной микросхемы.
Микросхема EEPROM SMD
Зачастую нам даже не приходится браться за паяльник для того чтобы совершить перепрошивку, достаточно просто использовать специальную клипсу для прошивания, подключающуюся к программатору. Но здесь есть один важный нюанс, который касается перепрошивки микросхем 24 и 25 серии, соответственно EEPROM и Flash памяти.
Первая (моя) версия программатора
Flash память 25 серия, часто используется для хранения прошивки BIOS устройств, таких как материнские платы, видеокарты, цифровые приставки, недорогие ЖК ТВ и современные мониторы. Так вот, особенность прошивания микросхем без выпаивания заключается в том, что иногда прошиваемое устройство у нас запитывается по линии 3.3 вольта через клипсу для прошивания. И если материнские платы можно шить обычно без выпаивания микросхемы, за редким исключением, то роутеры, на которых кстати установлена точно такая же микросхема памяти, в большинстве случаев, по крайней мере на современных моделях, таким способом прошить уже проблематично.
Но если будет очень нужно есть один способ про который я читал в интернете: он заключается в двойном запитывании микросхемы BIOS, то есть мы сначала включаем питание устройства и микросхема запитывается штатно от блока питания устройства, а затем подключаем клипсу программатора к прошиваемой микросхеме и подключаем программатор к порту USB.
Способ этот опасен тем, что мы можем коротнуть что-нибудь на плате, не правильно, немного криво прицепив клипсу. Иначе говоря устроить короткое замыкание при подключении клипсы и сжечь как все устройство, так и прошиваемую микросхему, а в особо тяжелом случае может не поздоровиться даже и программатору.
Вторая версия программатора
Про худшее, короткое замыкание в USB порту, с последующим возможным выходом подгоранием Южного моста, я стараюсь не думать. Которое все же очень маловероятно, так как в программаторе используется буферная микросхема и в случае форс-мажора, скорее всего все ограничится только ее сгоранием. Причем даже если вы захотите использовать этот способ, у вас не будет 100 процентной уверенности в правильности сохранения Бекапа прошивки перед перепрошивкой устройства, так как во включенном устройстве на выводах микросхемы в момент сохранения прошивки может быть какая-то активность.
роутер микросхема с прошивкой
Предпочитаю пользоваться другим способом, тогда, когда это реально необходимо, перепрошивкой микросхемы с выпаиванием, то есть уже демонтированной микросхемы и последующим запаиванием обратно. На самом деле при наличии опыта все эти операции можно провести максимум за 30-40 минут.
Но как быть если у вас в мастерской нет паяльного фена? В таком случае сплав Вуда или Розе нанесенный на все ножки, с целью снижения температуры плавления припоя, с обоих сторон микросхемы, и обычный паяльник типа ЭПСН 40 ватт, помогут вам. Микросхема буквально отлетает от платы в два касания паяльника, попеременно прогревая обе стороны микросхемы.
После остается только пройтись оловоотсосом а затем оплеткой по выводам как микросхемы, так и контактных площадок на плате и мы можем спокойно шить микросхему программатором, а затем запаять обратно. Причем если вы занимаетесь ремонтом монитора и если подозрение на слетевшую прошивку – не торопитесь сразу начинать шить микросхему BIOS, для начала можно поискать на спец сайтах дамп EEPROM памяти микросхемы сохранения настроек.
Если же по каким-то причинам сохраненный ранее кем-то дамп найти не удалось, встречал в интернете на специализированных сайтах по ремонту электроники рекомендацию сохранить родной дамп EEPROM памяти, очистить микросхему и затем залить снова родной дамп. Не совсем понятно в чем смысл этой процедуры, но видимо раз люди пишут, это все таки имеет смысл.
Цифровая приставка – микросхема с прошивкой
В самом крайнем случае можно попробовать включить монитор или другую технику просто очистив EEPROM память от старых данных, при включении устройства, в нее, если это было запланировано производителем сохранятся текущие настройки. Если же вы пытаетесь сохранить родной дамп и оболочка для прошивания выдает ошибку, либо при верификации, мы получаем каждый раз несоответствие залитого или сохраненного дампа с дампом прошивки, который загружен в буфер программы оболочки для прошивания, и такая микросхема однозначно требует замены на новую или как минимум проверенную с донора.
Стоимость микросхем EEPROM памяти
Это касается как микросхем Flash, так и EEPROM памяти. Причем микросхемы EEPROM памяти, так как имеют очень небольшой объем, стоят новые в радиомагазине копейки. Большинство микросхем как 24, так и 25 серии, имеющие одинаковые объем и напряжение питания, являются взаимозаменяемыми. То есть теоретически вы можете демонтировать микросхему Flash 25 серии объемом 4 МБ с нерабочего роутера и восстановить с ее помощью цифровую DVB-T2 приставку с микросхемой, например, погоревшей из-за грозы.
Как минимум слет прошивки после грозы на подобных приставках, имеющих внешние ДМВ антенны, которые часто устанавливают в частных домах за городом, там, где прием сигнала не уверенный, очень частое явление.
Подведём итог
В данной статье все нюансы восстановления прошивки устройств разобрать просто не возможно, но могу сказать, что перепрошивка программатором это один из самых легких видов ремонта, не требует вложений в ЗИП, по крайней мере дорогостоящий.
Прошивки мониторов на сайте
И если дамп прошивки есть в открытом доступе на специализированных сайтах, проблема с восстановлением устройства часто бывает решена уже в первый час выполнения ремонта. Причем для выполнения данного вида ремонта не требуется быть опытным мастером – любой человек выполнивший данную операцию хотя бы три-четыре раза будет совершать его в дальнейшем уже машинально, на автоматизме. Всем удачных ремонтов – AKV.
Работа с EEPROM памятью
Вот и добрались мы до третьего типа памяти, доступного на Arduino: EEPROM (англ. Electrically Erasable Programmable Read-Only Memory – электрически стираемое перепрограммируемое постоянное запоминающее устройство (ЭСППЗУ)), она же энергонезависимая память. Вспомним остальные типы памяти, Flash и SRAM, и их возможности по хранению данных:
Тип | Чтение из программы | Запись из программы | Очистка при перезагрузке |
Flash | Да, PROGMEM | Можно, но сложно | Нет |
SRAM | Да | Да | Да |
EEPROM | Да | Да | Нет |
Простыми словами: EEPROM – память, к которой мы имеем полный доступ из выполняющейся программы, т.е. можем во время выполнения читать и писать туда данные, и эти данные не сбрасываются при перезагрузке МК. Круто? Круто. Зачем?
Единственный важный момент: EEPROM имеет ресурс по количеству перезаписи ячеек. Производитель гарантирует 100 000 циклов записи каждой ячейки, по факту это количество зависит от конкретного чипа и температурных условий, независимые тесты показали 3-6 миллионов циклов перезаписи при комнатной температуре до появления первой ошибки, т.е. заявленные 100 000 взяты с очень большим запасом. Но есть небольшое уточнение – при заявленных 100 000 циклах перезаписи гарантируется сохранность записанных данных в течение 100 лет при температуре 24°C, если перезаписывать по миллиону – данные испортятся быстрее. В то же время количество чтений каждой ячейки неограниченно.
EEPROM представляет собой область памяти, состоящую из элементарных ячеек с размером в один байт (как SRAM). Объём EEPROM разный у разных моделей МК:
Основная задача при работе с EEPROM – не напутать с адресами, потому что каждый байт имеет свой адрес. Если вы пишете двухбайтные данные, то они займут два байта, и следующие данные нужно будет писать по адресу как минимум +2 к предыдущему, иначе они “перемешаются”. Рассмотрим пример хранения набора данных разного типа, расположенных в памяти последовательно друг за другом (в скобках я пишу размер текущего типа данных, на размер которого увеличится адрес для следующего “блока”):
Важный момент: все ячейки имеют значение по умолчанию (у нового чипа) 255.
Скорость работы с EEPROM (время не зависит от частоты системного клока):
Возможны искажения при записи данных в EEPROM при слишком низком VCC (напряжении питания), настоятельно рекомендуется использовать BOD или вручную мониторить напряжение перед записью.
При использовании внутреннего тактового генератора на 8 МГц, его отклонение не должно быть выше 10% (7.2-8.8 МГц), иначе запись в EEPROM или FLASH скорее всего будет производиться с ошибками. Соответственно все разгоны внутреннего клока недопустимы при записи EEPROM или FLASH.
Для работы с EEPROM в среде Arduino у нас есть целых две библиотеки, вторая является более удобной “оболочкой” для первой. Рассмотрим их обе, потому что в “чужом скетче” может встретиться всё что угодно, да и совместное использование этих двух библиотек делает работу с EEPROM невероятно удобной.
Библиотека avr/eeprom.h
Запись:
Обновление:
Макросы:
Рассмотрим простой пример, в котором происходит запись и чтение единичных типов данных в разные ячейки:
Точно так же можно хранить массивы:
В библиотеке avr/eeprom.h есть ещё один очень полезный инструмент – EEMEM, он позволяет сделать автоматическую адресацию данных путём создания указателей, значение которым присвоит компилятор. Рассмотрим пример, в котором запишем в EEPROM несколько переменных, структуру и массив, раздав им автоматически адреса. Важный момент! Адреса задаются снизу вверх по порядку объявления EEMEM, я подпишу их в примере:
EEMEM сам раздаёт адреса, основываясь на размере данных. Важный момент: данный подход не занимает дополнительного места в памяти, т.е. нумерация адресов вручную цифрами, без создания EEMEM “переменных”, не занимает меньше памяти! Давайте вернёмся к нашему первому примеру и перепишем его с EEMEM. При указании адреса через EEMEM нужно использовать оператор взятия адреса &
Ну и напоследок, запись и чтение блока через EEMEM. Адрес придётся преобразовать в (const void*) вручную:
Таким образом можно добавлять “данные” для хранения в EEPROM прямо по ходу разработки программы, не думая об адресах. Рекомендую добавлять новые данные над старыми, чтобы адресация не сбивалась (напомню, адресация идёт снизу вверх, начиная с нуля).
Библиотека EEPROM.h
Библиотека EEPROM.h идёт в комплекте с ядром Arduino и является стандартной библиотекой. По сути EEPROM.h – это удобная оболочка для avr/eeprom.h, чуть расширяющая её возможности и упрощающая использование. Важный момент: подключая в скетч EEPROM.h мы автоматически подключаем avr/eeprom.h и можем пользоваться её фишками, такими как EEMEM. Рассмотрим инструменты, которые нам предлагает библиотека:
В отличие от avr/eeprom.h у нас нет отдельных инструментов для работы с конкретными типами данных, отличными от byte, и сделать write/update/read для float/long/int мы не можем. Но зато у нас есть всеядный put/get, который очень удобно использовать! Также можем пользоваться тем, что нам даёт avr/eeprom.h, которая подключается автоматически с EEPROM.h. Рассмотрим пример с чтением/записью байтов:
Гораздо удобнее чем write_block и read_block, не правда ли? Put и get сами преобразовывают типы и сами считают размер блока данных, использовать их очень приятно. Они работают как с массивами, так и со структурами.
EEPROM.h + avr/eeprom.h
Ну и конечно же, можно использовать одновременно все преимущества обеих библиотек, например автоматическую адресацию EEMEM и put/get. Рассмотрим на предыдущем примере, вместо ручного задания адресов используем EEMEM, но величину придётся привести к целочисленному типу, сначала взяв от него адрес, т.е. (int)&адрес_еемем
С возможностями библиотек разобрались, перейдём к практике.
Реальный пример
Рассмотрим пример, в котором происходит следующее: две кнопки управляют яркостью светодиода, подключенного к ШИМ пину. Установленная яркость сохраняется в EEPROM, т.е. при перезапуске устройства будет включена яркость, установленная последний раз. Для опроса кнопок используется библиотека GyverButton. Для начала посмотрите на первоначальную программу, где установленная яркость не сохраняется. Программу можно чуть оптимизировать, но это не является целью данного урока.
Полезные трюки
Инициализация
Под инициализацией я имею в виду установку значений ячеек в EEPROM “по умолчанию” во время первого запуска устройства. В рассмотренном выше примере мы действовали в таком порядке:
При первом запуске кода (и при всех дальнейших, в которых в ячейку ничего нового не пишется) переменная получит значение, которое было в EEPROM по умолчанию. В большинстве случаев это значение не подойдёт устройству, например ячейка хранит номер режима, по задумке разработчика – от 0 до 5, а из EEPROM мы прочитаем 255. Непорядок! При первом запуске нужно инициализировать EEPROM так, чтобы устройство работало корректно, для этого нужно определить этот самый первый запуск. Можно сделать это вручную, прошив программу, которая забьёт EEPROM нужными данными. Далее прошить уже рабочую программу. При разработке программы это очень неудобно, ведь количество сохраняемых данных может меняться в процессе разработки, поэтому можно использовать следующий алгоритм:
Рассмотрим на всё том же примере со светодиодом и кнопками:
Сброс до “заводских”
Скорость
Как я писал выше, скорость работы с EEPROM составляет:
При большом желании можно использовать ячейку вместо переменной, т.е. выше мы с вами рассматривали пример, в котором EEPROM читался в переменную в программе, и дальнейшая работа происходила уже с ней. При сильной нехватке оперативной памяти можно читать значение напрямую из EEPROM, ведь это занимает ничтожно мало времени. А вот с записью всё гораздо хуже, там целых 3.3 мс. Например так:
Для изменения значения придётся прочитать ячейку, выполнить нужные операции, и снова в неё записать. Ещё один удобный хак: можно ввести макросы на чтение и запись определённых значений, например:
Получим удобные макросы, с которыми писать код будет чуть быстрее и удобнее, т.е. строка SET_MODE(3) запишет 3 в ячейку 0
Уменьшение износа
Важная тема: уменьшение износа ячеек частыми перезаписями. Ситуаций может быть много, интересных решений для них – тоже. Рассмотрим простейший пример – всё тот же код со светодиодом и кнопкой. Делать будем следующее: записывать новое значение будем только в том случае, если после последнего нажатия на кнопку прошло какое-то время. То есть нам понадобится таймер (воспользуемся таймером на millis), при нажатии на кнопку таймер будет сбрасываться, а при срабатывании таймера будем писать актуальное значение в EEPROM. Также понадобится флаг, который будет сигнализировать о записи и позволит записать именно один раз. Алгоритм такой:
Посмотрим на всё том же примере:
Вариантов уменьшения износа ячеек EEPROM можно придумать много, уникально под свою ситуацию. Есть даже библиотеки готовые, например EEPROMWearLevel. Есть очень интересная статья на Хабре, там рассмотрено ещё несколько хороших алгоритмов и даны ссылки на ещё большее их количество.
Видео
Прошивка еепром что это
Архив. Обзорный материал
EEPROM – многократно перезаписываемая память, используемая для хранения временной информации, сохраняемой при отключении питания. В EEPROM хранится коэффициент коррекции СО (в системах, где есть СО-регулирование), пароль и коды иммобилизатора, а так-же паспортные данные автомобиля: VIN, номер кузова, двигателя, имя прошивки и т.д. Доступ к этой памяти возможен как извне, с помощью программ – загрузчиков, так и изнутри управляющей программы. (Например, регулировка с тестера или компьютера уровня СО).
Все ЭБУ, упомянутые в этой статье, в полном объеме поддерживаются универсальным программатором CombiLoader (опция) и программой ChipTuning PRO (опция).
При записи ЭБУ обновляется только основная часть программы и калибровки. Бутлоадер по умолчанию не обновляется.
Если после записи в ЭБУ прошивки, бутлоадер которой отличается от исходной, появляется «Ошибка ПЗУ», рекомендуется считать из ЭБУ прошивку (уже с исходным бутлоадером), открыть ее в редакторе калибровок CTPro, сохранить (будет пересчитана контрольная сумма) и снова записать в ЭБУ.
Для обновления бутлоадера необходимо нажать клавишу Shift до нажатия на кнопку Запись и удерживать ее до начала процесса «Стирание FLASH». Однако при этом следует иметь ввиду, что при ошибке записи бутлоадера ЭБУ может перестать выходить на связь.
В случае, когда при записи с обновлением бутлоадера произошла ошибка, и ЭБУ не выходит на связь, необходимо произвести запись ЭБУ через бутлоадер процессора. Для этого необходимо произвести доработку ЭБУ.
М 73 пр-ва АВТЭЛ (идентификатор ПО A 3 xxxxxx):
Процессор ЭБУ защищен. При записи обновляется только основная часть программы и калибровки.
Если после записи в ЭБУ прошивки, бутлоадер которой отличается от исходной, появляется «Ошибка ПЗУ», рекомендуется считать из ЭБУ прошивку (уже с исходным бутлоадером), открыть ее в редакторе калибровок CTPro, сохранить (будет пересчитана контрольная сумма) и снова записать в ЭБУ.
ВНИМАНИЕ! Работа с этим типом ЭБУ через бутлоадер процессора после доработки недопустима и может привести к необходимости замены процессора!
Памятка: Следует иметь ввиду, что после снятия при установке блока на авто необходимо придерживаться следующего нехитрого правила.
Никакого «самообучения» и дополнительной «адаптации» не производится, шаманские пляски с бубном, рекомендованные на некоторых сайтах ставят своей целью озадачить клиента всей значимостью процедуры и облегчить его страдания при расставании с денежными знаками :). Данные, потерянные из ОЗУ при снятии питания восстановятся через некоторое время.
Ручной перевод ЭБУ в режим программирования
Для перевода контроллера в режим программирования необходимо подать + 12 В на вход разрешения программирования 47 и на 18 контакт (не отключаемое питание контроллера) перед (!) имитацией включения зажигания ( 27 контакт ЭБУ). Ну и «масса» электроники – 19 контакт.
A. Соколов (UncleSam) рекомендует подключать контроллер, как показано на рисунке справа. Суть, в принципе, не меняется. Горящий светодиод сигнализирует о том, что контроллер НЕ НАХОДИТСЯ в режиме программирования.
* Как видно из таблицы, использование 37 контакта необязательно на большинстве систем. Но, при постоянном подключении этого контакта, различие систем только в выборе ножки разрешения программирования.
Если контроллер не выходит на связь, необходимо выключателем S 2 снять питание с 13 ноги (IGN, зажигание) и сделать паузу не менее 7 – 10 секунд, после чего повторить попытку соединения.
Универсальный программатор ЭБУ CombiLoader автоматически все сделает за Вас без всяких переключателей. Следует иметь ввиду что этот программатор считывает/записывает прошивки не в простом бинарном виде, а в формате, доступном для редактирования программой Chip Tuning Pro.
Как известно, многие ЭБУ (по-видимому, в целях снижения себестоимости ЭБУ) не содержат элементов, необходимых для перевода в режим программирования. Такие ЭБУ требуют доработки. Подробнее об этом здесь. Но это, так сказать «официальный путь», до есть, доработка, предусмотренная, но неустановленная производителем. Здесь же мы рассмотрим «альтернативные» пути, которые, как правило, несколько проще.
Для перевода этого блока в режим программирования достаточно замкнуть контакт, отмеченный треугольником на массу через резистор 4 – 6 кОм. Можно (и даже нужно) изготовить щуп с резистором внутри и крокодилом с другой. Он понадобится Вам и для работы с любыми другими ЭБУ, переводимые в бутстрап. Замыкать нужно на время установки связи, как только процесс пошел, перемычку можно убрать.
Есть еще один вариант – аккуратно «нарисовать» резисторы очень мягким простым карандашом, графит выполнит функции резистора. После программирования следует тщательно удалить следы графита.
МИКАС 11
Для перевода этого блока достаточно замкнуть контакт, отмеченный кружком, на массу. Ближайшая удобная масса – корпус кварцевого резонатора. Замыкать нужно на время установки связи, как только процесс пошел, перемычку можно убрать.
Мой архив по ремонту Audi
Ремонт и обслуживание Audi
Простой программатор для чтения EEPROM приборок и мозгов
Простой программатор для чтения EEPROM приборок и мозгов из подручных материалов.
Понадобилось мне тут вычитать eeprom приборки VDO, то что он легко вычитывается KKL шнурком я в курсе 🙂 Программатора для этих флешек у меня не было. Полазив по сусекам нашел программатор USBASP, это программатор AVR микроконтроллеров, стоит всего 90 руб. Вспомнил что где то читал что его легко превратить в программатор spi, i2 и microwire флешек банально сменой прошивки. Эти флешки используются в приборках и практически во всех блоках управления двигателем. То что надо, перекрывает почти все мозги и приборки.
Вообще считать – записать eeprom обычно надо для того что б вытянуть пароль иммо, отключить иммо, скорректировать в мозгах вин номер и логин иммо, восстановить eeprom после не удачной прошивки и окирпичивании устройства… В общем полезный зверек, тем более не везде можно это сделать софтово.
Для начала берем вот такой программатор.
Соединяем программаторы вот так и меняем в одном прошивку. Будет он у меня программатором под флешки. Где взять прошивку и как прошить написано вот тут forum.easyelectronics.ru/viewtopic.php?t=10947 там же и программа для работы с usbasp в роли программатора флешек. Это пост автора проекта. Огромное ему спасибо!
Смотрим что он поддерживает в интересующем меня диапазоне машин. А поддерживает практически все 🙂 Все приборки и почти все блоки управления… Имею ввиду установленные в них микросхемы памяти.
Вот допустим модели мозгов Audi, зелеными галочками пометил что поддерживает.
Вот конкретно по моим любимым мозгам МЕ 7.5 из которых сделал себе двух прошивочные
Приступим к работе с ним.
У меня задача вытянуть eeprom из приборки VDO, узнать пароль иммо и при необходимости залить вытянутый дамп в другую сохранив калибровки стрелок и привязанные ключи. Почему я не делаю это софтово? Очень просто, приборка радостно сгорела с дымком и все такое. Кирпич в общем 🙂 В таких вот случаях без программатора не обойтись.
Берем приборку. Как разобрать писать не буду и так все знают 🙂
Вон она. Флешка с eepromом. 93С86…
Выпаиваем ее по быстрому…
Подключаем в соответствии со схемой. Схема разнится от типа флешки. У меня в VDO стоит microwire 93LС86… Значит по второй схеме…
Так как панельки у меня под SMD8 нет (заказал), то сделаю по быстрому переходник.
Возьму кусочек шлейфа, разделаю, нанесу цветовые метки.
И банально подпаяю, благо делов на минуту… Не очень фотогенично зато надежно 🙂
Напряжение питания выбираем в соответствии с даташитом на микросхему. Программатор выдает или 3.3v или 5v, переключается перемычкой. В моем случае любое, так как микросхема может работать в диапазоне 2.5-5.5 вольт.
Теперь можно подсоединить к компу и начать процесс считывания.
Запускаем программу. Смотрим что б был выбран программатор usbasp. Выбирает тип микросхемы с которой будем работать.
Далее все просто. Нажимаем считать. Идет процесс. Все считано.
Вот почти и все. EEPROM считан. Но есть одна тонкость, считан он правильно но не совсем. При чтении прошивки из EEPROM 93с86 байты в словах перевернуты. Например первое слово 02 03 а должно быть 03 02. Так как проект этого софта не коммерческий то он очень простой и в нем нет опции intel/motorola с которой сразу правильно. Но это не беда 🙂 Сохраняем файл.
Теперь запускаем редактор WinHex, открываем нем файл нашего eeprom и делаем ему свап.
Вот так:
Правка – Модифицировать данные
В менюшке выбираете «Обратный порядок байт», блин, у меня кота байтом зовут 🙂 Ставим 2 байта и жмем «ОК»
Вот и все, наш eeprom в нужном нам виде предстает 🙂
Ну и сохраняете его. В случае с приборкой VDO иммо3 можете на вин номер ориентироватся, если он стал правильно отображается то все правильно мы сделали
Теперь пароль на иммо вытянуть надо. Тут можно руками и все такое но на много проще сделать это с помощью всеми любимой программы, а именно VAG EEPROM Programmer.
Открываете полученный файл eeprom и в нем и сразу все что надо видите 🙂
Можно или ручками перенести данные в новую приборку а можно этот дамп залить со всеми калибровками и шкаламии ключами. Ну и пробег можете подкрутить пока законом не запретили 😉
Вот так все просто 🙂