LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Search for a VI using keyword protocol 2000 (KWP2000)

I'm writting a diagnostic software using kwp2000, also known as iso 14230 (in fact I'm not sure that it is the same). I think that I have to call some serial windows functions to change the baudrate. Does anyone ever made this kind of application ?
0 Kudos
Message 1 of 5
(4,946 Views)
It is not clear for me what you want to do.

KWP2000 is a protocol using a half duplex single line physical layer. This layer is called the K-Line. ISO 14230 is the standard for that line. To use this physical layer you must have a special interface card. So you cannot call standard serial windows or LabVIEW functions to use the interface. In this case you have a API as DLL or Active-X control which you can use.

What we did is another thing. We used the data frame of KWP2000 to communicate with a device which is connected to the standard RS232 port of a PC. So we need not to concern about the interbit, interbyte and interblock timing which is neccessary for a half duplex interface because we have a full duplex interface.

I dont know if this works fo
r electrical reasons but it could be possible that you connect the K-Line to the RX pin of a serial port. I think that it has also a start and a stop bit so you can act a listener. If you connect TX to you can send to the device but be aware, that you will receive your data as echo.

To change the baudrate of the serial port depends which VIs you use.
1. With the VIs from the Instrument I/O>>Serial Compability>>Serial I/O palette you have to close the port and reopen it with the new baudrate.
2. With the Instrument I/O>>Serial VIs you can use a VISA property node to change the baudrate under Serial Settings>>Serial Baud Rate.
Waldemar

Using 7.1.1, 8.5.1, 8.6.1, 2009 on XP and RT
Don't forget to give Kudos to good answers and/or questions
0 Kudos
Message 2 of 5
(4,945 Views)
If you connect your K-Line to the RX pin of the serial port you won't get a working result, because the level of the K-Line doesn't match with the level of the RS232 Port. The quiescent state of the K-Line is a level of + 12 V. The level is switched between + 12 V and GND while communication process.
You have to connect a level shifter and K-Line driver to the RS 232 Port.
At the K-Line driver you will find a pin called DIA. This pin is connected to the K-Line.
Just to get an impression take a look at the motorola datasheet "automotive ISO 9141 serial link driver MC33199".
0 Kudos
Message 3 of 5
(4,945 Views)
I have to face the same problem:
Realizing KWP2000 under LabView.

The HW-Layer is solved, so we use RS232 with
a Level-Shifter. But what about realizing the protocol ? Do you have any vi'S for that ?
0 Kudos
Message 4 of 5
(4,945 Views)

hello, I made an Arduino library for the Keyword Protocol 2000 to make simpler the communication with motorbikes/cars
https://github.com/aster94/Keyword-Protocol-2000 see the link for more information!

0 Kudos
Message 5 of 5
(3,031 Views)