612699
42
Zoom out
Zoom in
Previous page
1/94
Next page
ELM327
Multiline Responses
There are occasions when a vehicle must respond
with more information than one ‘message’ is able to
show. In these cases, it responds with several lines
which the receiver must assemble into one complete
message.
One example of this is a request for the 17 digit
vehicle identification number, or VIN. This is available
from newer vehicles using a mode 09, PID 02 request
(but was not initially a requirement, so many older
vehicles do not support it). Here is one example of a
response that might be obtained from a J1850 vehicle:
>0902
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 two bytes (49 and 02) on each line of the
response are used to show that the information is in
reply to an 09 02 request. The next byte shows which
response it is, while the remaining four bytes are the
data bytes that are being sent. Assembling the data in
the order specified by the third byte, and ignoring the
first few 00’s (they are filler bytes - see J1979) gives:
31 44 34 47 50 30 30 52 35 35 42 31
32 33 34 35 36
The data values actually represent the ASCII
codes for the digits of the VIN. Using an ASCII table to
convert these into characters gives the following VIN
for the vehicle:
1 D 4 G P 0 0 R 5 5 B 1 2 3 4 5 6
CAN systems will display this information in a
somewhat different fashion. Here is a typical response
from a CAN vehicle:
>0902
014
0: 49 02 01 31 44 34
1: 47 50 30 30 52 35 35
2: 42 31 32 33 34 35 36
The CAN Formatting has been left on (the default),
making the reading of the data easier. With formatting
on, the sequence numbers are shown with a colon (‘:’)
after each. CAN systems add this single hex digit (it
goes from 0 to F then repeats), to aid in reassembling
42 of 94ELM327DSJ Elm Electronics – Circuits for the Hobbyist
www.elmelectronics.com
the data, instead of the byte value that the J1850
vehicle did.
The first line of this response says that there are
014 bytes of information in total. That is 14 in hex, or
20 in decimal terms, which agrees with the 6 + 7 + 7
bytes shown on the three lines. The VIN numbers are
generally 17 digits long, however, so how do we
assemble the number from 20 digits?
This is done by discarding the first three bytes of
the message. The first two are the familiar 49 02, as
this is a response to an 09 02 request, so are not part
of the VIN. The third byte (the ‘01’), tells the number of
data items that are to follow (the vehicle can only have
one VIN, and this agrees with that). Ignoring the third
byte leaves 17 data bytes which are the serial number
(purposely chosen to be identical to the those of the
previous example). All that is needed is a conversion
to ASCII, in order to read them, exactly as before.
From these two examples, you can see that the
format of the data received may depend on the
protocol used to transmit it. For this reason, a copy of
the SAE J1979 standard would be essential if you are
planning to do a lot of work with this, for example if you
were writing software to display the received data.
The following shows an example of a different type
of multiline response that can occur when two or more
ECUs respond to one request. Here is a typical
response to an 01 00 request:
>01 00
41 00 BE 3E B8 11
41 00 80 10 80 00
This is difficult to decipher without knowing a little
more information. First, turn the headers on to actually
see ‘who’ is doing the talking:
>AT H1
OK
>01 00
48 6B 10 41 00 BE 3E B8 11 FA
48 6B 18 41 00 80 10 80 00 C0
Now, if you analyze the header, you can see that
the third byte shows ECU 10 (the engine controller)
and ECU 18 (the transmission) are both responding
with a reply to the 01 00 request. With modern
vehicles, this type of response occurs often, and you
should be prepared for it.
A final example shows how similar messages
42


Need help? Post your question in this forum.

Forumrules


Report abuse

Libble takes abuse of its services very seriously. We're committed to dealing with such abuse according to the laws in your country of residence. When you submit a report, we'll investigate it and take the appropriate action. We'll get back to you only if we require additional details or have more information to share.

Product:

For example, Anti-Semitic content, racist content, or material that could result in a violent physical act.

For example, a credit card number, a personal identification number, or an unlisted home address. Note that email addresses and full names are not considered private information.

Forumrules

To achieve meaningful questions, we apply the following rules:

Register

Register getting emails for Elm 327 at:


You will receive an email to register for one or both of the options.


Get your user manual by e-mail

Enter your email address to receive the manual of Elm 327 in the language / languages: English as an attachment in your email.

The manual is 0,23 mb in size.

 

You will receive the manual in your email within minutes. If you have not received an email, then probably have entered the wrong email address or your mailbox is too full. In addition, it may be that your ISP may have a maximum size for emails to receive.

The manual is sent by email. Check your email

If you have not received an email with the manual within fifteen minutes, it may be that you have a entered a wrong email address or that your ISP has set a maximum size to receive email that is smaller than the size of the manual.

The email address you have provided is not correct.

Please check the email address and correct it.

Your question is posted on this page

Would you like to receive an email when new answers and questions are posted? Please enter your email address.



Info