Тема диагностики Своими руками посредством PyRen — одна из наиболее популярных тем у владельцев Рено последние месяцы. И не только Рено, но и владельцы Lada Xray также имеют удовольствие менять необходимые параметры своих автомобилей через скрипт. Это отлично и я желаю создателям и разработчикам продолжать работу, улучшать и добавлять функции в это приложение. Еще раз спасибо им за отличный инструмент, который доступен каждому автолюбителю!
В прошлом месяце была опубликована версия PyRen 0.996, в которой появилась возможность работы с базой от программы DDT2000. На текущий момент версия обновилась уже до цифры 0.998 и я постараюсь описать пока основные этапы работы с ней. Почему только начало? Более детальная работа с этим инструментом требует большого навыка работы с блоками автомобиля, протоколом обмена данными OBD2, пониманием принципов чтения и изменения параметра в автомобиле. Если вы не имеете достаточно опыта, то я также советую пока ограничиться "безопасным" набором функций.
Ранее, я описывал процесс установки PyRen для компьютера. Теперь осталось только добавить базу DDT и научиться ее использовать. Нам потребуется новая версия PyRen, на текущий момент это 0.998 (зеркало на яндекс-диске), и база DDT2000. Стараниями форумчан, нашли базу DDT 2016 года, перезалил ее на яндекс-диск.
Процесс обновления PyRen на ПК
Сам по себе PyRen — это набор скриптов на языке Python, и для диагностики и работы требуется база данных Clip. Достаточно только трех директорий с информацией:
scripts\EcuRenault\
scripts\Location\
scripts\Vehicles\
И непосредственно директории со скриптами PyRen:
scripts\pyrenXX\, где ХХ — номер версии.
Перед обновлением, рекомендуется сохранить файл scripts\pyrenХХ\savedEcus.p — описание блоков вашего автомобиля и если делали bat-файлы для упрощения запуска, то и их также. После чего удаляйте полностью папку старой версии scripts\pyrenXX\ и дополнительные лаунчеры, которые обычно лежат уровнем выше:
extrdata.bat
i12comp.exe
chkelm_4a_launcher.py
cmdr_4a_launcher.py
make_torque_pids.py
pyren_4a_launcher.py
Когда остались только три директории базы данных Clip, распаковывайте файлы новой версии PyRen и копируйте обратно свой savedEcus.p и bat-файлики, если пользуетесь ими. Для работы PyRen с базой DDT нужно скопировать папку DDT2000data\ecus из архива с базой туда, где уже находятся папки базы Clip, таким образом, у нас получится следующая структура:
scripts\EcuRenault\
scripts\Location\
scripts\Vehicles\
scripts\ecus\
scripts\pyren98\
Проверяем: запускаем PyRen в режиме demo. Совет: я предлагаю использовать ключик -vv для PyRen, в этом случае, при наличии данных, он сможет раскрывать информацию по параметрам не ограничиваясь только их названием.
При выборе этого меню мы получим вот такую ошибку:
Это происходит потому, что папка scripts\pyren98\dumps\ у нас сейчас пуста и скрипт не может найти соответствующий блоку дамп. Поэтому предлагает выбрать максимально подходящий. Можете ввести любое имя XML-файла из предложенных и проверить, что окошко DDT откроется.
Запуск
Самое интересное начинается тогда, когда нам нужно получить данные от нашей машины. Для начала я предлагаю не торопиться, и использовать DDT только в режиме работы с сохраненным дампом, т.к. иначе DDT может некоторые параметры сбросить на дефолтные, как это случилось у одного из разработчиков во время тестов.
Тут нужно понять одну важную особенность: Clip имеет несколько уровней проверок и защит от ввода неправильных и неподдерживаемых параметров. Именно поэтому, для активации того же Круиз-Контроля, надо вносить правки в MTC.xml файл или подменять VIN, иначе Clip не сможет применять "чужой" параметр комплектации. DDT этого недостатка не имеет, он ничего не знает об уровне комплектации автомобиля и легко может отправить команду активации TPMS в ЦЭКБС без функции свободных рук. И только уже ответ от самого ЭБУ позволит узнать, что команда выполнилась неуспешно.
Для снятия дампа нам подойдет и PyRen на Андроиде и PyRen на ПК. Достаточно только запустить приложение с ключом --dump или включить режим записи дампа в лаунчере:
sys.argv.append('--dump')
и зайти в нужный блок автомобиля: систему впрыска, АБС или любой доступный блок. При этом в папку scripts\pyren98\dumps\ сохранится файл с ответами на определенные команды опроса параметров. Имя файла имеет вид <число>_<id блока>.txt. После опроса блока можно отключаться от автомобиля и переходить уже ко второй части — непосредственно анализу данных в DDT. Для владельцев андроида, необходимо файл с дампом перенести на ПК в аналогичную папку PyRen.
Запускаем скрипт в режиме демо: pyren.py -ppp -vv --demo, выбираем блок, с которого был снят наш дамп и запускаем DDT-меню.
Что получаем в итоге? Огромный по функциональности инструмент для работы с блоками автомобиля и их конфигурацией. Благодаря стараниям разработчиков, часть параметров будет иметь перевод на русский из базы CLIP и легко читаемая. Часть параметров, увы, "как есть" — на английском, а часть конфигурационных параметров на французском: они читаются сразу из XML-файлов DDT.
Сохраненный дамп будет иметь информацию не обо всех переменных, поэтому, открывая их в демо-режиме многие данные отображаться не будут.
В некоторых случаях, DDT не может определить файл сценария для нужного блока. В лог будет выведена ошибка и один или несколько файлов, наиболее подходящих для использования.
В этом случае выводится информация по типу и версии самого блока (или его дампа):
Address:"26" DiagVersion:"4" Supplier:"001" Soft:"140E" Version:"0D10"
И аналогичная информация приведена для файла сценария, справа от его имени:
BCM95_SW910_V910_2.xml 264001140E0910
т.е. мы видим, что у нас не совпадает только версия: 0D10, поэтому можно смело использовать предложенный файл, введя его имя в строке запроса.
Как это работает?
Окно DDT разделено на три зоны: слева — навигация по параметрам блока, справа — представление текущих данных и параметры ввода, снизу — логирование данных, чтение параметров и запросы на изменение.
Рассмотрим пример с изменением межсервисного интервала. В блоке приборной панели мы можем указать нужные нам параметры и затем посмотреть, какую команду отправит DDT в наш автомобиль:
В моем примере есть нестандартная конфигурация, которая была сделана давно еще через Clip, а именно 365 дней. Рекомендуется использовать 360 дней в году.
Вот пример с изменением интервала через скрипт PyRen, который я взял в этой записи, как мы видим, там используются такие же команды.
Основная задача — проверка итоговой команды для отправки. На скриншоте я выделил маркером значение команды. Совсем не обязательно (и даже не рекомендуется), менять сразу параметры через DDT, подключившись к машине. Как вы видите, по данному блоку будет отправлено сразу 5 команд конфигурирования, при этом могут измениться параметры, менять которые совсем не нужно было.
Случай с межсервисным интервалом самый простой и он давно уже решен через PyRen. Однако в том случае, когда необходимо все-таки составить собственную команду, на помощь придет доработка, описанная в этом посте. Т.е. создается отдельный скрипт на отправку команды в нужный адрес нужного блока. Заострять внимание пока на этом не буду, т.к. лучше такие вопросы уточнять отдельно в каждом конкретном случае. Кто сможет — разберется сам.
Зачем это надо?
Вопрос, который заслуживает внимания не меньше, чем процесс установки и запуска скрипта. Кому-то достаточно штатного бортового компьютера: загорелась ошибка — в сервисе решат проблему. Кому-то интересно смотреть как работает машина, как меняются (или не меняются) параметры в Torque. Кто-то выполняет диагностику ошибок через PyRen, стирает их или ищет пути устранения. Кто-то хочет настроить свой автомобиль под себя, реализовать все те возможности, которые заложены в электронику автомобиля. Маркетологи Рено, да и любого другого производителя, поделили покупателей на несколько групп: Expression, Dynamique, Confort, Privilege. Но на самом деле с опытом эксплуатации своего автомобиля понимаешь, что потребности совершенно не ограничиваются четырьмя вариантами, есть и возможность добавить элементы более "дорогих" версий, или просто выключить ненужные функции. Что ж, теперь для владельцев Рено стало еще больше возможностей для познания и настройки своего автомобиля.
DDT используется в том числе для внесения изменений в конфигурацию автомобиля. Текущая версия PyRen все еще имеет суффикс "beta", т.е. тестовая, и разработчики не могут гарантировать отсутствие ошибок. Все, что вы будете делать с автомобилем не в "демо" режиме влечет риск нарушения его штатной работы и выполняется на собственный страх и риск.
Для меня эта функция интересна гипотетической возможностью наконец-то отключить функцию автопостановки на ручник. Раньше никогда зимой не "парился" по поводу подмерзания колодок и всегда использовал автоматический ручник. А в этом году, с нашей погодой "то ноль, то мороз", стал снимать с ручника. А что бы не делать это каждый раз — было бы здорово применить настройку сразу, а весной включить ее обратно. Честно скажу, пока способ не нашел. Все блоки, кроме стояночного тормоза открываются в DDT верно, а только стояночный тормоз открывает какой-то тестовый блок. Что ж, будем разбираться дальше!
Всем хорошей зимы и удобных автомобилей!
Комментарии 198
Добрый день. Подскажите можно ли в ларгусе включить функцию изменения паузы переднего дворника. Если можно, то как найти эту функцию? На сандеро/ дастерах вроде есть такое.
здравствуйте. а логи вам доводилось читать? есть проблема www.drive2.ru/l/552518612804436006/
добрый день.
поиск проблемы по идее к этим опросам никак не связан. В данных логах как раз идет опрос определенных параметров, которые в пирен выводились в тот момент в каком-либо меню.
на мой взгляд, нужно определить параметры, которые действительно участвуют в запуске. Затем через графики или csv следить за их состояниями.
а можно поподробнее с этого момента?
собственно, я считал, что в логах показаны именно изменения всех параметров всех блоков в реальном времени.
как можно следить за определенными параметрами? про графики в пирене вообще ни разу не слышал =)
у вас не правильное понимание логов.
подробнее расписать как проводить диагностику я не смогу. этому учатся долго и мучительно, а не ждут готовую инструкцию в интернете )
amokkspb
добрый день.
поиск проблемы по идее к этим опросам никак не связан. В данных логах как раз идет опрос определенных параметров, которые в пирен выводились в тот момент в каком-либо меню.
на мой взгляд, нужно определить параметры, которые действительно участвуют в запуске. Затем через графики или csv следить за их состояниями.
кажется нашёл www.drive2.ru/l/455222279106726013/
по верному пути иду?)
почти.
но начинается он с того, что не надо на угад выбирать параметры. надо знать какие нужно смотреть.
понял, благодарю!
прошу прощения за глупый вопрос — а все эти и другие "хитрости" нельзя делать CLIPом?
какие-то можно, какие-то нет
Я так понял, что Pyren для андроида баз ДДТ2000 не видит и использовать их не может?
не совсем так. скрипт monitor работает с xml из базы ддт.
если же вы про интерфейс ддт на андроиде, то такая разработка начата, можете попробовать.
www.club-renault.ru/forum…ndComment&comment=2225240
Да я захотел перенастроить датчик давления масла для своего Хрея, чтобы он срабатывал не на 2500 оборотах, а на 800. Полез искать иснструкции. Нашел для пирена под виндовс. Некритично скопировал каталог ECUS на смартфон в папку с пиреном. И никакого пункта DDT в пирене не появилось. Тащить ноут в машину не хочется, но если нормально работать получится только так, то придется. Но для начала хотелось бы попробовать все по максимуму со смарта.
вы большой оригинал.
тащите ноут в машину.
Хм, и в чем моя "большая оригинальность"? Вы сами буквально немного ниже писали "честно говоря мне гораздо удобнее те же датчики давления или ручник отключать с телефона, чем брать каждый раз компьютер." Вот и мне хотелось бы ограничиваться смартом, а не таскать ноут :)))
я просто знаю как это сделать =)
и я не пытаюсь установить ддт на телефон для этого, а делаю скрипт на нужную команду.
поэтому ставьте как все пирен + базу ддт на ноут и работайте с него. меньше проблем словите.
amokkspb
не совсем так. скрипт monitor работает с xml из базы ддт.
если же вы про интерфейс ддт на андроиде, то такая разработка начата, можете попробовать.
www.club-renault.ru/forum…ndComment&comment=2225240
Прошел по ссылке на ДДТ для андроида. Насколько понял, то пока это не понимает баз данных в формате XML, а только в JSON — что это и где их брать?
базы в формате json используются в ddt4all и могут быть скачаны вместе с ним.
но я бы не советовал сейчас вам делать это на андроиде.
это будет значительно сложнее для вас и без навыков можете ошибиться. пользуйтесь пока что приложением под винду.
Что значит ключик -vv?
про это кажется я в первом видео еще год назад говорил.
там, где параметр имеет комментарий в базе — он будет отображен также в пирен. например настройка коэффициента длины окружности в абс. в обычной конфигурации будет параметр и его значение, а с ключиком -vv будет еще выведены все подпараметры и размеры.