Ediabas ToolSet 32 или просто Tool32 (EDIABAS\Bin) из BMW Standard Tools
Tool32 с точки зрения диагностики и мониторинга может делать тоже самое и даже больше, что и Rheingold, без всяких танцев с бубнами:mocking:.
Tool32 - это оболочка для запуска функций API EDIABAS. Этот API - С-подобный язык, транслирующий одинаковые команды для различных электронных блоков в последовательности байт, посылаемых по коммуникационному интерфейсу в мотоцикл, и декодирующий ответ. Связаться можно таким образом не только с центральным блоком, но и с блоком ABS, например.
Для того, что б работать с конкретным блоком, надо в Tool32 загрузить описание этого блока в формате PRG файла (собственно Rheingold делает тоже самое, только сам, чтоб убедиться в этом посмотрите его лог в Rheingold\Logs\TesterGui.log). В папке EDIABAS нужного для Мотроника файла нет, зато он есть у Rheingold (папка Rheingold\Ecu). Файл для Мотроника 2.4 mrma24.prg. Его надо скопировать в папку EDIABAS\Ecu. Если нужны другие блоки, смотрим лог Rheingold и копируем нужные файлы.
Теперь запускаем Tool32 и загружаем mrma24.prg (кабель должен быть подключён).
Все функции, доступные нашему блоку отражены в окне Jobs.
Первое - связываемся с блоком, выбираем start_kommunikation. Если всё нормально, от мотоцикла придёт ответ.
Дальше, выбираем то, что нам надо (не помню, обязательно ли второй запустить команду initialisierung, я, вроде, запускал).
Прикреплен пример выдачи команды ident.
Всё просто и быстро, но, блин, на смеси английского и немецкого:dash2:
Посмотреть вложение 32856
Попробую сделать описание всех доступных команд чуть позже.
- - - Добавлено - - -
Программа логгер TEST-O (
форум,
загрузка актуальной версии)
Изначально задумывалась автором работать через API EDIABAS, но сейчас с некоторыми блоками работает напрямую. С Мотроником не работает. Я отправлю свои логи автору, если он захочет, то встроит прямую поддержку Мотроника в будущие версии. Наличие или отсутствие прямой поддержки блока влияет только на частоту опроса блока, через EDIABAS медленнее.
Так как всё это основано на API EDIABAS, то выводить может только то, что и Tool32.
Так как Мотроник не поддерживается, то его поддержку надо добавить. Делается это следующим образом.
Из PRG файла нужно сделать BIV файл. BIV файл, как я понял, содержит синтаксис нужных функций API EDIABAS. Делается это программой xtract.exe, лежащей в EDIABAS\Bin.
Синтаксис xtract.exe -f mrma24.prg (здесь полагается, что mrma24.prg лежит в EDIABAS\Bin).
Полученный файл MRMA24.BIV копируем в папку c Test-O \Jobs\serialjobs и в файл Jobs\eculist.txt добавляем строчку MRMA24
Теперь запускаем Test-O, выбираем Debug->Serial Port нужный нам порт (или правим вручную testo.ini)
Выбираем Мотроник, точно не помню, но вроде делал потом Debug->Start EDIABAS.
Выбираем нужный параметр, в открывшемся графическом окне выбираем, что отображать и смотрим/пишем лог. Отображать можно несколько параметров.
Программа очень простая, тыкаемся и пробуем. Результат сохраняем, смотреть его можно Megalogviewer.
Посмотреть вложение 32858
Программа просит последний BMW Standard Tools и MSVCP100.dll из Visual Studio C++ redistributable package. Последний почти у всех установлен, его использует куча программ. Если нет, то он
тут. И, естественно, нужный PRG файл должен лежать в EDIABAS\Ecu.
P.S. В прошлом году въехал в поливалку, как выяснилось в эти выходные слегка погнул перья. Мотоцикл едет ровно, никуда не тянет, но слегка закусывет сальники при ходе вилки. Перо по предоплате 28 тыр, одна штука:shout:
Нашёл фирмы, правящие перья. Кто-нибудь правил перья? Если да, скиньте опыт в личку, что б не засорять непрофильную ветку.