OBD2 Scanner iOS Application built in Swift. Can be used alongside any OBD2 Bluetooth adapter plugged into your vehicle's diagnostics port (currently configured for Veepeak OBDCheck BLE+).
01- show current data02- show freeze frame data03- show diagnostic trouble codes04- clear trouble codes07- show pending trouble codes09- request vehicle info0A- request permanent trouble codes
- Example:
01 11 05 0D 0C - Up to 6 parameters can be requested, in this example it's 4 (
11 05 0D 0C). - Response:
00A
0: 41 11 3F 05 44 0D
1: 21 0C 17 B8 00 00 00
- The first line tells us that the response is
00A(decimal 10) bytes long. The first byte (41) can be ignored. Then what follows is the PID numbers followed by their data bytes. The trailing00bytes can be ignored.
01 06- Short term fuel trim (bank 1)01 07- Long term fuel trim (bank 1)01 08- Short term fuel trim (bank 2)01 09- Long term fuel trim (bank 2)01 0A- Fuel pressure01 0B- Intake manifold absolute pressure01 0F- Intake air pressure01 0E- Timing advance
- Example:
01 01 - Response:
41 01 81 - Subtract
80from the 3rd byte to get the count, i.e.81-80=1.
- Example:
03 - Response:
43 01 33 00 00 00 00 01 33is the DTC, but replace0withP0(see ELM327 Spec for further info), for a result ofP0133, which maps to a DTC description.
- Example:
09 02 - Response:
49 02 01 00 00 00 31
49 02 02 44 34 47 50
49 02 03 30 30 52 35
49 02 04 35 42 31 32
49 02 05 33 34 35 36
- The first 3 bytes on each row can be ignored, the last 4 bytes on each row are the in order response for the VIN. The VIN will be used to (obviously) ID and persist vehicles that the adapter has been connected to and scanned, as well as decoding make/model. See here for further details.
- Example:
AT RV - Response:
12.5V