Началось всё с того, что у меня в машине загорелась лампочка Check Engine. Ну, загорелась - поехали в сервис. В сервисе подключили считыватель кодов, считали код (P0420 "Catalyst system efficiency below threshold"), поменяли один из двух кислородных датчиков, стёрли код и выдали машину. Не прошло и трёх дней, как лампочка загорелась снова. Опять приехал, опять считали, опять P0420. Код стёрли, посоветовали погонять машину на высоких оборотах по шоссе - мол, катализатор, наверное, забился, прочистить бы.
Лампочка загорелась снова. Опять, что ли, в сервис ехать? Пошёл сначала читать, что это за P0420 и что с ним делать. Ну, натурально, "что-то катализатор у вас не очень фурычит, на скорость это особо не влияет, но починки всё-таки требует, наверное". Попутно вычитал, что для прочистки катализатора и датчиков помогает
CataClean (съездил, купил, залил, погонял по шоссе - не помогло). Но, пока читал, зацепил меня один пространный рассказ о том, что человек, когда у него загорелась лампочка Check Engine, купил считыватель кодов, чтобы самому коды считывать (и обнулять). Пошёл копать. Оказалось, что автопроизводители в конце 1990-х додумались-таки стандартизировать коды двигателя, протокол и разъём. Раньше-то для каждой марки машины свой считыватель требовался, и позволить их себе могли только автосервисы. А с 2001 года - единый стандарт
OBD II (On-Board Diagnostic версии 2), и код P0420 - как раз из этого стандарта.
О как, думаю - раз такое дело, наверняка технология пошла в народ, и такие считыватели уже широко доступны и недороги. Пошёл копать дальше. Действительно, считывателей много, и самые дешёвые прямо сейчас можно купить в Аргосе
за £35. Уже почти собрался покупать, но решил заодно и в интернете посмотреть - а что там?
Разумеется, инженерная мысль не стоит на месте. Разумеется, чем делать сложную железяку с контроллером, кнопками, экраном, а потом мучиться с её перепрошивкой - лучше всю эту логику запихнуть в смартфон, а смартфону просто дать интерфейс к OBD II разъёму машины. И разумеется, что такой интерфейс будет стоить в разы дешевле самого тупого железного сканера, а функционала с ним будет больше.
Сбылась очередная мечта идиота - теперь у меня есть цифровой интерфейс со смартфона к двигателю машины. И, помимо диагностики двигателя, смартфон теперь может вести лог поездок (с расходом топлива), показывать средний и моментальный расход в единицу времени и на 100км, и ещё кучу всяких полезных разностей, которые я только начал исследовать.
Открылась бездна, звёзд полна; звездам числа несть, бездне дна.
Технические подробности.
ODB II - это просто серийный порт в контроллер двигателя, плюс набор протоколов общения с ним. Адаптер OBD II представляет из себя платку контроллера, переводящую протоколы общения по серийному порту в AT команды (да-да, похожие на те, что были у модемов), плюс навешенная на неё платка интерфейса, будь то USB-to-Serial, Bluetooth-to-Serial или WiFi-to-Serial (последнее я не очень понимаю, как реализовано). Питается это всё от аккумулятора машины прямо через разъём - поэтому, чтобы держать адаптер постоянно в разъёме, надо обратить внимание на то, как он умеет экономить заряд аккумулятора.
Соответственно, общение смартфона с контроллером заключается в опросе тех или иных параметров посредством AT команд, получении циферок в ответ, и интерпретации этих циферок.
В инете куча адаптеров OBD II с Bluetooth (3.0 или 4.0) или с WiFi. Большинство их - это клоны чипа ELM327. Начитавшись разных статей, я заказал на AliExpress три разных адаптера с Bluetooth. Больше всего мне понравился Vgate iCar Pro - тем, что умеет Bluetooth LE, тем, что мало ест, тем, что выключается через какое-то время после пропадания bluetooth соединения, тем, что включается автоматически при старте двигателя. Другие два адаптера требовали дополнительно нажатия кнопки включения, один из них при этом ещё и выключался сразу после того, как двигатель заглушили.
Следующий этап - подбор программы. Тут открывается большой простор, потому что данные от контроллера двигателя (обороты, расход топлива, показания датчиков) плюс данные от смартфона (координаты, ускорение) дают возможность анализировать очень многие аспекты поведения машины.
Поставил четыре:
Torque Pro (£2.95),
ODB Fusion (£4.95),
Car Scanner (бесплатна),
OBD Auto Doctor (£4.39/месяц, £17.99/год). Все четыре очень хороши, все умеют очень многое, но немного по-разному. В Torque Pro очень много возможностей настройки под себя - но в них ещё нужно разобраться. OBD Fusion и Car Scanner имеют базовые возможности для простого пользователя плюс немудрящую диагностику - но всё это доступно сразу, разбираться и настраивать особо не надо. ODB Auto Doctor пока покупать не стал (не люблю повремёнку), поразбираюсь сначала с первыми тремя. Пока что играюсь с двумя вещами: пытаюсь понять причины кода P0420 (похоже, придётся второй кислородный датчик менять) и анализирую поездки на предмет расхода топлива в тех или иных условиях. Куча новой информации к размышлению и перевариванию. Интересно - аж жуть! :-)