Показать сообщение отдельно
Старый 25.07.2019, 00:03   #7098 (permalink)
Завсегдатай
 
Регистрация: 11.07.2019
Сообщений: 335
Вы сказали Спасибо: 87
Поблагодарили 86 раз(а) в 48 сообщениях
Сказал(а) Фууу!: 3
Сказали Фууу! 0 раз(а) в 0 сообщениях
Откуда: Планета Земля
По умолчанию

Цитата:
Еще можно добавить замечание, что приборы, сделанные на флешках AMD AM29LV160DB и ST M29F160BB не могут быть перепрошиты штатной процедурой PDUAPI. Будут работать только с той версией (и возможно с более старыми), с которой прибор пришел от китайцев.
Еще раз собрал все вместе и мое понимание процесса выглядит так:

1. При проведении теста в D-PDUAPI_Test.exe, адаптер опрашивается и если версия прошивки (Module FW-Version) в нем отличается от версии в файле VCFUSBLU.BIN (в нем версия находится в трех байтах по смещению 0x2C), микроконтроллеру передается на выполнение Flash54.bin

2. Код Flash54 принимает от D-PDUAPI_Test.exe файлы BOOT54.bin и SYS54.bin которые пытается шить в flash память находящуюся на борту микроконтроллера, а SYS54BK.bin и VCFUSBLU.BIN во внешний flash чип. Если микроконтроллер защищен от прошивки, либо flash чип отличается от AMD или Fujitsu с Device ID=0x22D8 (например AMD AM29LV160DB или ST M29F160BB), прошивка становится невозможной и процесс прерывается с ошибкой IFH-0036: LOAD ERROR (в самотесте это ошибка 200.46)

3. Если все успешно прошилось, микроконтроллер перезаружается и запускает из внешнего flash чипа файл VCFUSBLU.BIN, содержащий операционную систему CMX-RTXS RTOS V5.30D, которая в зависимости от версии содержит различные проверки на оригинальность адаптера:
FW 2.10.48 не делает ни каких проверок;
FW 2.20.20 проверяет серийник в eeprom FW 2.20.41 содержит дополнительные проверки eeprom;
FW 2.20.42 проверяет eeprom на присутствие строк VAS505 и VW, проверяет manufactuter и device ID внешнего flash чипа на соответствие AMD 0x22D8, тестирует чипы OKI M6636, AU5780A, TJA1054TA, проверяется" сигнатура "A55A" (возможно тоже в eeprom, проверка происходит до теста типа флеш-памяти), усиленно щупает-дергает 9-ый порт микроконтроллера, а также возможно содержит прочие проверки.

Если какие либо проверки провалились, тестирование прерывается с ошибкой PDU_ERR_MODULE_FW_OUT_OF_DATE: Firmware software out of date (Программное обеспечение прошивки устарело).

Отсутствие, либо присутствие фейковой платы блютуз в процессе проверок не участвует и влияет только на возможность редактирования настроек связанных с блютуз (активацию звукового сигнала если адаптер забыли в OBD2 разъеме и мощность) в ODIS. Настройки записываются в eeprom.

Таким образом, если плата содержит заблокированный от перезаписи микроконтроллер, либо eeprom c некорректным содержимым, либо flash чип который flash54.bin не умеет шить, может понадобиться перепрограммирование eeprom и flash чипа вручную, так как PDU не сможет их обновить.

Flash54.bin в PDU от версии 1.10.48 до 1.20.42 не менялся (CRC16=4992). Возможно его тоже можно подлечить патчем и тогда он будет шить все остальное, что отличается от AMD и Fujitsu?

Заранее благодарен за исправления и уточнения информации приведенной выше.
lprot вне форума   Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо lprot за сообщение:
adolf80 (25.07.2019), Hellcat (03.10.2019), Дмитрий 42 (25.07.2019), СамДляСебя (25.07.2019)