VAG Diag 5.1 — для Windows, установка не требуется
Диагностика автомобилей группы VAG (Volkswagen, Škoda, SEAT, Audi) через дешёвый адаптер ELM327. Установка не требуется: переносимый Python лежит внутри архива, внешних библиотек нет ни одной.
Как запустить. Распаковать архив целиком в отдельную папку, вставить адаптер в разъём OBD, включить зажигание не запуская двигатель, подключиться к сети Wi-Fi адаптера и запустить START_GUI.bat. Откроется браузер с интерфейсом.
Проверить можно дома, без автомобиля. В комплекте заглушка адаптера: она изображает блок парктроника с плавающим контактом. Занимает минуту и подтверждает, что пакет работоспособен, ещё до похода к машине.
Что умеет. Поиск блоков на шине и их идентификация. Чтение ошибок с типом отказа (обрыв, замыкание на массу, нет связи) и состоянием (активна сейчас, была ранее) — это важнее номера кода, потому что подсказывает, искать замерами или шевелением жгута. Монитор ошибок для поиска неисправного датчика отключением. Универсальный раздел OBD-II, работающий на любом автомобиле с 2001 года: коды, готовность систем, VIN, стоп-кадр. Живые параметры с записью в CSV. Сравнение снимков до и после ремонта. Тест аккумулятора и генератора по графику напряжения при пуске. Отчёт одним файлом со всем обменом — его удобно приложить к вопросу на форуме.
Главное ограничение, о котором стоит знать заранее. Прошивка ELM327 ведёт многокадровый обмен только с парой адресов двигателя, зашитой в неё намертво. Блокам кузовной электроники она не посылает кадр разрешения на продолжение, поэтому длинный список ошибок дочитывается не полностью. Обойти это AT-командами не выходит — проверено четырьмя способами, подробности в README. Программа всё равно определяет точное количество ошибок и вытаскивает несколько кодов перебором масок состояния. Кому нужны длинные списки целиком — поддерживается USB-CAN адаптер по протоколу SLCAN (CANable, CANtact и совместимые), он стоит примерно как обычный ELM327 и снимает ограничение полностью.
Только чтение. Единственная операция записи — стирание памяти ошибок, и только по явному подтверждению. Кодирование, адаптации и изменение настроек блоков не выполняются сознательно.
Проверено. 27 автотестов на заглушке проходят на Python 3.8, 3.11 и 3.12.
Исходники лежат в самом пакете, в папке app — обычные текстовые файлы, правятся блокнотом и работают сразу. Лицензия MIT.