Обновление прошивки в диагностическом сканере ELM327

Nov 03, 2023 22:45

Есть у меня несколько клонов ELM327 сканера. Первый куплен 10 лет назад - моя рабочая лошадка. Второй приобрел недавно на PIC18F25K80. Вот его и будем мучать....

Внутри две платы бутербродом. Прозвонил контакты для внутрисхемного программирования PIC18F25K80 на 28 ног:

pin 1 - MCLR
pin 19 - GND
pin 20 - +Vcc
pin 27 - PGC
pin 28 - PGD

Модуль Bluetooth YC1021 с внешним чипом памяти 24C32 на 4КБ. В нем прописан MAC адрес, пароль и скорость COM-порта.



модуль Bluetooth YC1021
С обратной стороны PIC18F25K80, высокоскоростной CAN-трансивер SIT1040 и кренка на 3.3в.



PIC18F25K80 с SIT1040
На нижней плате ничего не понятно, кроме регулятора на 5в.



нижняя плата ELM327
Дальше меня ждал облом - оказалось мой старичек TTL866 ничего не знает о PIC18F25K80. Попытка отключить проверку чипа и прикинуться PIC18F2580 не помогла. Гугление вывело на проект юзера AndrejChoo. Последняя версия лежит на github. Похоже за основу Андрей взял исходники Ho-Ro.

Не смотря на то, что AndrejChoo использует Arduino Nano ему не удалось полностью избавиться от навесных компонентов. Собирать монстроузную схему на 4-х транзисторах, чтоб прошить один PIC не улыбалось, но мир не без добрых людей. Форумчанин Edd24 с 4pda связался с автором и тот выпустил специальную прошивку под Arduino Nano для PIC18F25K80 без дополнительных компонентов.



схема подключения Arduino Nano для прошивки PIC18F25K80
Дальше берем USBasp, avrdude с AVRDudess и заливаем кастомную прошивку в Arduino Nano.



фьюзы для Arduino Nano
Соединяем PIC18F25K80 с Arduino Nano по схеме выше и грузим прошивку в PIC18F25K80.



программатор PIC из Arduino - Pickit v3 для бедных
Собираем, подключаем и смотрим выдает ли ELMScan Adapter Validator строчку - Identified as ELM237 v2.3.



UDP: Статья о том как не потеряться в мире китайских клонов тут.

UDP: Перепрошил совою рабочую лошадку. Отличается распиновка контактов для внутрисхемного программирования. Другой модуль Bluetooth -  v2.1 (прощай iPhone) на чипе BK3231 без внешней памяти.



UDP: Чтобы востановить работоспособность Arduino, в него надо обратно залить bootloader.

автомобиль, diy

Previous post Next post
Up