VW Scanner - портативный сканер для VAG небольшой отчетец

  • Автор темы Pasha@VR6
  • Дата начала
  • Ответы 348
  • Просмотры 225К
Предлогаю составить список продиагностированных машин, этим сканером и какие проблемы возникали! По возможности и скорость связи с контролером!

1.VW B4 1.8 Mono-Motronic МА 1.2.3. дв.ABS, 1994г
Модуль двигателя, 4800бит
Модуль АВС ( Teves, MK04),9600бит
Работает но пиреодически подвисает, проблема выявляется!!!

2. VW B5+ 1.8 Turbo дв. AWT, 2001г.
Модуль двигателя ,10400 бит

Работает без проблем

_____________________________________________________________

ЗЫ1 PashaVR6, может следует закрепить список в верхнем посте?И по мере дополнять? :love:

ЗЫ2 Народ кто собирал сканер, может у кого есть такае же конфигурации машины как у меня проверьте виснет ли у вас при условии такойже скорости связи, что бы знать что смотреть схему сканера или проблема в самом авто! :LOL:
Мож кто рядом живет может подъехать, заодно и диагностику сделаем этим сканером! :thankyou2:
 
продолжаем двигаться в сторону улучшения и добавления новых фич в сканер...



что нового:

1) Добавлен просмотр 000 блока измерений (я смотрю по форуму - многие в нем находят очень полезную информацию).
блок выводится так:
1. ххх ххх ххх
4. ххх ххх ххх
7. ххх ххх ххх
10. ххх
т.е. цифра с точкой показывает номер первого стоящего справа от нее блока, ну и следующий, понятно, эта цифра + 1.
подписать каждый не имею возможности - не хватает индикатора :(
по esc - выход
по UP-DOWN - листание страниц.
enter игнорируется.
Просьба протестить этот пункт тщательно и отписаться о возможных глюках.

2) Изменение версии на 2.1

 
Сканеру на atmega8535 + Nokia 3410 LCD - быть!!! :yahoo:
Сегодня заставил его работать - пришлось переписать с нуля процедуру получения ответа от блока... :dance2:
Теперь пройтись по коду, выровнять все на экране, чтобы смотрелось, и сделать отчет :)
В планах появилась мысль добавить еще ввод блока в базовые установки, и адаптацию ДЗ...
Как говорится - заменить ноут полностью (проскочила мысль рашифровывать ошибки бегущей строкой - на 1 строке код - на второй бежит ошибка на русском - только внешную память нужно вешать (спасибо за идею Vaxa20)).
потом продумаем функции бортового компа.. - эх монстрика заделаем.... :hat:
 
Очередные вылавливания мелких багов и новая тестовая версия.



В архиве прошивки на 3.6864 и 4 мгц. (убран глюк с листанием страниц в просмотре 000 блока и информации о блоке).
В папке test лежат прошивки с переписанной с нуля процедурой получения синхробайта и keyword-а, так как со старой мой Гольф 3 упорно не хотел разговаривать со сканером.
Просьба проверить на тех машинах на которых работала и старая прошивка (возможно будет теперь поболее машин нормально конектиться)

p.s. версию на индикатор от 3310 малой кровью сделать не удается, приходится достаточно много править в коде, поэтому будет 2 ветки прошивки (все равно основа одинаковая, только вывод на экран разный).

p.p.s. проверена работа сканера на Passat B4 ADZ - все ОК.
проверена Golf III AEX - OK.

тестовая прошивка содержит глюк :( - спасибо Vaxa20 за тестирование.
обновленная версия ТЕСТОВОЙ прошивки
 
Спасибо за новые прошивки.
Сегодня попробовал Вашу прошивку (не тестовая) на VW POLO 98г.в., AKV, механика.
Двигатель видится а ABS нет.
Но ABS у меня не видится и из VAGTOOL, а с VAG COM видит все.
Будет время попробую тестовую.
 
VAG_Polo написал(а):
Спасибо за новые прошивки.
Сегодня попробовал Вашу прошивку (не тестовая) на VW POLO 98г.в., AKV, механика.
Двигатель видится а ABS нет.
Но ABS у меня не видится и из VAGTOOL, а с VAG COM видит все.
Будет время попробую тестовую.

Модуль ABS не изменялся насколько мне известно! Можно не пробовать работать тоже не будет! Интерфейс связи на чем построен? Если на оптопаре возможно из за этого нет конекта! Если на микрухе то можно попробывать подобрать сопротивление то которое 910 Ом в пределе 510-1000 Ом.
Щас упор на отладку модуля двигателя что бы работало со всеми блоками без глюков! :drive:
 
Сейчас интерфейс связи построен на оптопаре.
Хочу попробовать поставить 33290. Хотя у меня есть шнур на оптопаре и он отлично работает с VAG COM.
К сожалению времени маловато но по возможности поэксперементирую.
 
Vaxa20 написал(а):
Модуль ABS не изменялся насколько мне известно!

Не совсем правильно данное высказывание, все блоки работают по 1 протоколу, поэтому если я меняю процедуру связи с блоком, она меняется для всех :)

VAG_Polo: попробуйте на старом адаптере с новой прошивкой связаться с ABS (можно еще резистор подтягивающий последовательно с подстроечным на 400-600 Ом включить и подобрать сопротивление при котором максимально хорошо держится связь).
 
Проверил сканер с новой тестовой прошивкой. Результат - увидел ABS.
Двигатель видится тоже отлично, соединение на 9600 вроде устойчивое. Проверил блоки измерений - на первый взгляд каких либо глюков не заметил.
ABS тоже соеденилась на 9600.(соединение в обоих случаях происходило с первого запроса)
Сам сканер не дорабатывал, все номиналы такие как в схеме.
 
VAG_Polo написал(а):
Проверил сканер с новой тестовой прошивкой. Результат - увидел ABS.

Отлично! :good: спасибо за тестирование :hat:
я уже платку развожу под сканер на атмега8535 и 3310...
Пробовал снимать мобильником для отчета - ужас :(
Попрошу цифровик принести на следующей неделе, и забабахаю отчет.
что следующим этапом делать?

очередная версия прошивки 2.2:
мелкие исправления - вылизывание кода, новая процедура конекта (дальше идем с ней), в режиме измерений up down +/- block, Enter = +10 (так проще всего сделать, а если надо 90 блок то проще 9 раз нажать Enter, чем 90 - up :) ), изменение версии на 2.2, номер ECU не может быть больше 127 (был до 255) - исправлено, в режиме измерений - переходить на 0 блок не должно- исправлено.


p.s. попробуйте кто-нибудь этим сканером посмотреть угол открытия дросельной заслонки - у меня плавно идет до 65 и скидывается на 0 и идет до 15... ИМХО не должно так быть? или я не прав?
 
Обкатываю на своем пепелаце адаптацию ДЗ этим сканером, пишу человеческий ввод адреса блока измерения.
На Нокиевском варианте появилась мысль сделать 2 режима отображения информации в режиме измерений - графический (как в вагтуле) и текстовый...

Кто может сказать: список всевозможных ошибок имеющийся на сайте содержит ошибки и те, которые наш сканер все равно не увидит по причине других протоколов: а вот ошибки которые могут быть только на протоколе KWP1281 ? есть такой списочек?
 
Мне почему-то кажецца, что для данного протокола (и скорее не протокола, а стандарта OBD II) ошибки начинаюцца с номера:

16394 400A P0010
 
сам прочитал что написал и ничего не понял...
1. тут на сайте есть список ошибок!!!
2. в нем, судя по всему, описаны ошибки не только которые можно увидеть по протоколу kwp1281, а и CAN и KWP2000 - а интересует только kwp1281... просто мысль есть поставить ПЗУ с i2c интерфейсом (2 провода на контроллер, 1 на массу и 1 на плюс и 2 резистора). и туда закинуть описание ошибок, и сделать вывод осмысленный вывод по желанию.... только вот сколько должна быть та пзу - зависит от списка ошибок... (или выбрать самые распространенные, а редкие - по распечатке чуть что смотреть...)
 
По считыванию данных не должны быть проблемы, а на CAN-BUS по моему можно было выходить через K-line, т.к. они присутсвовали на одном разъеме, судя по распиновке и логике, какой смысл иметь две шины в параллель. Но не уверен.
 
По примерным, скромным подсчетам (если виды ошибок в базу не вносить) - примерно 200 кб чистого текста.
 
200 - многовато, даже если взять пзу на 256кб, то поиск описания ошибки в ней при max частоте обмена с пзу в 400кбит/сек будет долгим :(
(если только под свою (соседскую) машину делать, и зашить только те ошибки, которые встречаются на своей (соседской...))

p.s. я сделаю так... а то пзу уже прикупил, да и протокол уже реализовал ;)
 
Где то читал (сейчас не смог найти) что по протоколам CAN и KWP2000 опрашиваются только всякие электронные навароты типа климата, навигаций, ЖК панелий, в протоколе kwp1281 не хватило адресов - вот и ввели новые. А все что касается двигателя - опрашивается по kwp1281.
Наверное надо взять основные коды ошибок двигателя (можно провести статистику по сайту какие ошибки появляются чаще всего) - тем самым сильно облегчить объем ПЗУ, а по мере необходимости добавлять новые.
 
Наверное надо взять основные коды ошибок двигателя ... - тем самым сильно облегчить объем ПЗУ, а по мере необходимости добавлять новые.


я тоже так думаю, поэтому сейчас продумываю как сделать так чтобы каждый мог сам добавить описание ошибки в пзу...
Если ПЗУ нету, сканер просто будет игнорировать запрос на расшифровку...
p.s. туплюсь над процедурой обработки нажатия 2 кнопок сразу, чтобы не было дребезга.
 
Ну вот, я вернулся из отпуска. :(

Cyber_RAT написал(а):
p.s.  туплюсь над процедурой обработки нажатия 2 кнопок сразу, чтобы не было дребезга.

Попробуй подумать в такую сторону: реагировать не на нажатие, а на отпускание кнопки после нажатия. А далее как в классическом антидребезге - есть нажатие длиннее N (тиков? миллисекунд?) = есть нажатие. Отпущено менее чем через M (но M>N) = есть однократное нажатие. Не отпущено более чем через M = есть длительное нажатие (выполняем повтор действия).

При этом становится возможной обработка сочетания кнопок.
 
p.s. туплюсь над процедурой обработки нажатия 2 кнопок сразу, чтобы не было дребезга


Если речь о том, как обрабатывать нажатия типа с "shift", то наверное как написал Eagle_B3, если допустимо одномоментное нажатие только одной кнопки, то я обычно писал так:
1. опрос кнопок каждые 5 мс (к примеру)
2. делается таблица на N байт (для 4х независимых кнопок - 16 байт)
3. Далее к адресу таблицы прибавляется как смещение считанные 4 бита от состояния кнопок, и читается. Таблица заполняется по принципу: если в комбинации из 4бит только один 0 (нажата только одна кнопка) - возвращается номер кнопки, если нажато более одной или не нажато ни одной - 0xFF. Можно разбить множественное нажатие и отсутствие (например 0x00 и 0xFF. Понятно, что подобная процедура оправдана только для небольшого кол независимых кнопок (если они в матрице, то можно и для бОльшего). Такая процедура получается быстрее и короче, чем побитная проверка, ветвления и т.д.
4. Далее обрабатываем нажатия - К раз подряд без перерыва нажата одна кнопка - есть нажатие, фиксируем номер и флаг нажатия, который потом сбрасывается процедурой обработки. Если кнопка отпускалась, нажималась другая и т.д. процедура перезапускается. Также и с отпусканием. Если необходимо обрабатывать повторы, то как писал Eagle_B3.

Удачи!

ЗЫ ловлю себя на мысли, что иногда проще написать, чем перевести это на русский язык :LOL:

ЗЫЗЫ А в принципе описанный алгоритм адаптируется и для варианта, когда одна из кнопок назначается "shift". Просто при заполнении таблицы, комбинации, когда нажаты shift и кнопка считаются допустимыми и им присваевается некий номер виртуальной кнопки. При этом нажатие одного shift обрабатывается как "нет нажатий". Тогда если первой отпущена функциональная кнопка, считается что было нажатие s+кнопка, а если первым отпущен shift, то алгоритм автоматически переходит на распознавание нового нажатия.
 
Назад
Сверху Снизу