По вопросу почему ELM327 - собирал на будущее и оправданно, т.к. теперь у меня OPEL ASTRA а там CAN и есть штатные бортовой и два маршрутных компа, так что железка пригодится только для работы по кодам.
C простым К-Line пришлось бы писать все тайминги низкоуровневого обмена в программе, а серия ELM уже всё враппирует в AT команды.
По корпусам - два драйвера линий, один для программирования BT свистка по SPI, второй драйвер уровней UART от BT к ELM.
Третий корпус - MAX232, транзисторное решение UART в референсе мне не понравилось.
Собрав эту плату я понял что даже без проводов её использовать не очень удобно, довольно громоздкая. Поэтому заказал ELM323 и собрал следующий вариант:
Упихнул всё в корпус разъема OBDII, ELM заказывал в SMD корпусе, но оказался только DIP, впрочем влез. Собственно BT модуль и стабилизатор напряжения пришлось выпаять из свистка. Антенну развел на плате. Опознать что за модуль было сложно, но можно.
http://electronix.ru/forum/index.php?showtopic=24828Т.к. модуль оказался BlueCore2, то нарыл среду - Bluelab, взял проект их екзамплов spp_dev_b. Поправил код чтобы устройство было pairable и после inquiry периода, вбил свой пароль и сконфигурировал UART.
Ну а программу, как говорил ранее, написал для MIDP2. Добавил поддержку трубок с SVG-профилем так чтобы отображались большие, на сколько позволяет экран, цифры.
Девайс был воткнут в разъем OBDII и благополучно проездил без глюков (чего нельзя сказать о программе
) пол-года, пока не была продана машина.