Table of Contents

OBD-II

On-Board-Diagnostics (a.k.a. OBD2)

Protocols

ISO 15765 CAN - mandatory in US vehicle from 2008, EU - maybe from 2003
SAE J1850 PWM - Ford vehicles (PWM - Pulse Width Modulation)
SAE J1850 VPW - GM vehicles (VPW - Variable Pulse Width)
ISO 14230 KWP2000 - Chrysler, EU, Asian vehicles (KWP - Keyword Protocol 2000)
ISO 9141-2 - Chrysler, EU, Asian vehicles

Getting started with OBD-II

Simulators

sudo service bluetooth restart
sdptool add --channel=1 SP
rfcomm release 0 # if needed (but usually not needed)
sudo mknod -m 666 /dev/rfcomm0 c 216 0
sudo chown $USER /dev/rfcomm0

# after that start the ELM327-emulator
rfcomm watch /dev/rfcomm0 1 python3 -m elm -P /dev/rfcomm0 -l -s car

Connectors and Hardware

Erstaunlich gut! Head-up-Display fürs Auto zum Nachrüsten ab 20 Euro im Vergleich - auch Bluetooth-Adapter wurden getestet.

Lescars OBD Adapter: OBD2-Profi-Adapter mit Bluetooth, für Android-Mobilgeräte - nur 12€ bei Amazon

http://www.obd-2.de/obd-2-allgemeine-infos.html - eine sehr gute deutsche Seite

OBD-II Kotlin API by Elton Viana

OBD Metrics OBD Metrics stands out as a well-architected and adaptable framework for Java developers interested in vehicle diagnostics and telemetry.

Github topic "OBD" - more than 80 libraries

Github topic "OBD2" - more than 150 libraries

OBD-II Java API by Pires

Android OBD Library - relatively actual (latest release on October 2022)

android-obd-reader

OBD GUI for RaspberryPi