dinsdag 26 januari 2010

Third project session 26/01/10

Today we had our Third project session, we had to hand in our paperwork as i said in our previous post.
Today we also heard that we maybe can get a OBD-2 to RS-232 for free, but we still not know if there is an interface with it, maybe we know more tomorrow.

maandag 25 januari 2010

The paperwork

The last two days we finished our paperwork. That we have to hand in tomorrow.
It is not at all easy to foresee everything when you hardly know how all the hardware works.

But we made it, everything has it's schedule and the major risks are foreseen and the tasks are divided.

woensdag 20 januari 2010

second project session 19/01/10

Today we mainly did the paperwork for the project.
We selected a project leader, Tom Kempynckis was chosen for this job.
Later on we will post some of the intresting paper work on here.

We also had concerns about the data rates and latency.

The wireless system that we are using is zigbee at 2.4GHz.
So we have a data rate of
250 kb/s to count on and a latency of 16ms.

This was what we have no, what do we need?

Since we are working with obd-2 there are 5 different protocols and all have very different secifications.
Any given vehicle will likely only implement one of the protocols. Often it is possible to make an educated guess about the protocol in use based on which pins are present on the J1962 connector:

  • SAE J1850 PWM (pulse-width modulation - 41.6 kB/sec, standard of the Ford Motor Company)
    • pin 2: Bus+
    • pin 10: Bus–
    • High voltage is +5 V
    • Message length is restricted to 12 bytes, including CRC
    • Employs a multi-master arbitration scheme called 'Carrier Sense Multiple Access with Non-Destructive Arbitration' (CSMA/NDA)
  • SAE J1850 VPW (variable pulse width - 10.4/41.6 kB/sec, standard of General Motors)
    • pin 2: Bus+
    • Bus idles low
    • High voltage is +7 V
    • Decision point is +3.5 V
    • Message length is restricted to 12 bytes, including CRC
    • Employs CSMA/NDA
  • ISO 9141-2. This protocol has an asynchronous serial data rate of 10.4 kBaud. It is somewhat similar to RS-232, but that the signal levels are different, and that communications happens on a single, bidirectional line without extra handshake signals. ISO 9141-2 is primarily used in Chrysler, European, and Asian vehicles.
    • pin 7: K-line
    • pin 15: L-line (optional)
    • UART signaling (though not RS-232 voltage levels)
    • K-line idles high
    • High voltage is Vbatt
    • Message length is restricted to 12 bytes, including CRC
  • ISO 14230 KWP2000 (Keyword Protocol 2000)
    • pin 7: K-line
    • pin 15: L-line (optional)
    • Physical layer identical to ISO 9141-2
    • Data rate 1.2 to 10.4 kBaud
    • Message may contain up to 255 bytes in the data field
  • ISO 15765 CAN (250 kBit/s or 500 kBit/s). The CAN protocol is a popular standard outside of the US automotive industry and is making significant in-roads into the OBD-II market share. By 2008, all vehicles sold in the US will be required to implement CAN, thus eliminating the ambiguity of the existing five signalling protocols.
    • pin 6: CAN High
    • pin 14: CAN Low

Note that pins 4 (battery ground) and 16 (battery positive) are present in all configurations. Also, ISO 9141 and ISO 14230 use the same pinout, thus the connector shape does not distinguish between the two.

When we look at the data rates of ISO 15765 CAN and SAE J1850 PWM the data rate af our "medium" Zigbee is not sufficient.
So we will have to read the data of the OBD-2 via RS232.
Since OBD-2 to RS232 cables are widely and most likely used for this sort of applications we will use a cable like that.
The data rate of RS232 is 75 bits per second, so now we have plenty of speed provided by Zigbee.

dinsdag 19 januari 2010

first project session 12/01/10

Today we could try the wireless hardware a bit.
For the wireless transmission we are going to use eZ430-RF2500.
the hardware consists of a sender and a receiver, they look like this:

Sender with battery-pack:


The eZ430-RF2500 is a complete wireless development tool for the MSP430 and CC2500 that includes all the hardware and software required to develop an entire wireless project with the MSP430 in a convenient USB stick. The tool includes a USB-powered emulator to program and debug your application in-system and two 2.4-GHz wireless target boards featuring the highly integrated MSP430F2274 ultra-low-power MCU. Projects may be developed and instantly deployed using the included battery expansion board and AAA batteries. All the required software is included such as a complete Integrated Development Environment and SimpliciTI, a propriety low-power star network stack, enabling robust wireless networks out of the box. The eZ430-RF2500 uses the MSP430F22x4 which combines 16-MIPS performance with a 200-ksps 10-bit ADC and 2 op-amps and is paired with the CC2500 multi-channel RF transceiver designed for low-power wireless applications.

The eZ430-RF emulator interface may be used with any Spy Bi-Wire enabled MSP430, such as the F22xx and F20xx series, and is fully compatible with the eZ430-F2013 and eZ430-T2012 target boards. The emulator interface can be used to download and debug your target applications, and can transmit serial data to your PC while in or out of a debug session.


* CC2500 – 2.4 GHz, ISM band multi-channel low power transceiver
* 2 LEDs
* 1 pushbutton
* Supports development with all 2xx Spy Bi-Wire devices (MSP430F20xx, F21x2 & F22xx)
* Supports MSP430 Application UART allowing serial communication to PC
* Supports eZ430-T2012 and eZ430-RF2500T target boards
* Removable USB stick enclosure
* SimpliciTI, low power network stack
* Example wireless sensor network project measuring temperature, voltage and signal strength

woensdag 6 januari 2010

Some specifications

The OBD-2 bus is a standardised data bus.
Underneath you can find an overview of different connectors as used for OBD-II diagnostic systems.

OBD-II Connector, J1962

Diagnostic connector (female) of the car:


1Manufacturer mandated
2J1850 Bus+
3Manufacturer mandated
4Car ground
5Signal ground
6CAN High (J-2284)
7ISO 9141-2 K output
8Manufacturer mandated
9Manufacturer mandated
10J1850 Bus
11Manufacturer mandated
12Manufacturer mandated
13Manufacturer mandated
14CAN Low (J-2284)
15ISO 9141-2 L output
16Battery (+) voltage

Used pins of the connector shows kind of protocol:

Pin (Signal)Pin (Masse)Pin (Signal)Pin (Signal)Pin (+12 V)Protocol
--4 + 5715 *)16ISO 9141-2
24 + 5--1016PWM J1850
24 + 5----16VPW J1850
--4 + 561416CAN Bus

  • *) Pin 15 only for older ISO 9141 implementations
  • all other pins are manufacturer reserved and not used for standard OBD-II

Diagnostic connector (male) of diagnostic tool:


Contact usage of some manufacturers:

PinSAE J1979,
ISO 15031
since 5.2002
1Manufacturer mandatedsecond UARTABS, Brakes, K-LinereservedSaab Instruments (+)SIR (GM8192 Prot.)SW-LS-CAN (33kB)
DW-FT-CAN (+) (<125kb)
2J1850 (+) PWM/VPWJ1850(+) VPWDW-FT-CAN(+)n/an/an/an/a
3Manufacturer mandatedComfortAirbagK-Line, K2, TCM, Sunroof, CDL, Multi-Timern/aABS (KW81-Prot.)MS-CAN (+) (95kB)
4Chassis groundChassis groundChassis groundChassis groundChassis groundChassis groundChassis ground
5Signal groundSignal groundSignal groundSignal groundSignal groundSignal groundSignal ground
6ISO 15765 HS-CAN (+)PCMISO 15765 HS-CAN(+)BlinkcodeBlinkcodeTCMISO 15765 HS-CAN (+) (500kB)
7ISO 9141 K-Linen/aISO 9141 K-Line (engine)K-Line, K1 (engine)K-Line, K1 (engine)K-Linie, K1 (engine)n/a
8Manufacturer mandatedCCMn/aK-Line, K4K-Line (Saab 9000/1, KW81/82 Prot.)n/areserved
9Manufacturer mandatedfirst UARTBody ECUreservedSaab Instruments (-)ECM/TCM (GM8192 Prot.)DW-FT-CAN (-) (<125kb)
10J1850 (-) PWMn/aDW-FT-CAN (-)n/an/an/an/a
11Manufacturer mandatedEVA Controller(Anti-Theft system)reservedL-Line Memory SeatsSIRMS-CAN (-) (95kB)
12Manufacturer mandatedABSengine compartmentK-Line, K3, ABS, TC, Steering, RTD, OWn/aABSK-Line (KW82 Prot.)
13Manufacturer mandatedSIRLuggage compartmentreserved f. K-Line, K5n/aECMreserved
14ISO 15765 HS-CAN (-)E&CISO 15765 HS-CAN (-)reservedn/an/aISO 15765 HS-CAN (-) (500kB)
15ISO 9141 L-Linen/an/an/an/an/an/a
16Battery Plus, unswitchedBattery Plus, unswitchedBattery Plus, unswitchedBattery Plus, unswitchedBattery Plus, unswitchedBattery Plus, unswitchedBattery Plus, unswitched

Internal contacting Patch-Connector OBD2/RJ45

OBD-II (male) / RJ45 female

OBD-II PinDescriptionRJ45-Pin
2J1850 Bus+6
4, 5Ground1
7ISO 9141-2 K-output4
10J1850 Bus3
15ISO 9141-2 L-output5
16Battery +12V2

OBD-II (female) / RJ45 female

OBD-II PinDescriptionRJ45-Pin
2J1850 Bus+6
4, 5Ground1
7ISO 9141-2 K-output4
10J1850 Bus3
15ISO 9141-2 L-output5
16Battery +12V2

OBD-II Cabel connection (for interfaces)

OBD-2 Kabelverbindung

5Signal ground1
4Chassis ground2
6CAN High (J-2284)3
7ISO 9141-2 K-output4
14CAN Low (J-2284)5
10J1850 Bus6
2J1850 Bus+7
15ISO 9141-2 L-output8
16Battery +12V9

The start

This blog is part of a school project as a reflection of our progress.

Tom Kempynck and me Tobias Adryan are going to make a Wireless obd signal analyzer

With that device you will be able to see a live feed of the sensors in your car.
This will happen via the OBD-2 bus. Which in Europe is an obligated bus for all petrol cars since 2001 and for all diesels since 2003. Nearly every car that is made the last 10 years has a bus like that because it was earlier obligated for every car in the United states and Japan.

Some more interesting information about OBD and its history can be found here:

Some more technical specifications about OBD-2 can be found here: