SwedeSpeed - Volvo Performance Forum banner
1 - 14 of 14 Posts

·
Registered
Joined
·
240 Posts
Discussion Starter · #1 ·
Communication with ME7 on CAN bus 250k speed.<p>Read ID<br>-> E id = 000FFFFE len = 8 data =cb 7a b9 f0 00 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a f9 f0 00 09 47 07<br><- E id = 00800021 len = 8 data =09 38 20 20 41 09 49 78<br><- E id = 00800021 len = 8 data =4c 03 20 20 41 00 00 00<p>0009470738 A<br>09497803 A<p>Read DTCs<br>-> E id = 000FFFFE len = 8 data =cb 7a ae 11 00 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a ee 11 95 30 94 00<br><- E id = 00800021 len = 8 data =09 16 00 11 00 e0 03 20<br><- E id = 00800021 len = 8 data =4f 00 80 10 40 20 40 50<p>DTCs 9530 9400 1600 1100 e003 2000 8010 4020 4050<p>Read details for DTCs<br>-> E id = 000FFFFE len = 8 data =cd 7a ae 70 95 30 00 00<br><- E id = 00800021 len = 8 data =8f 7a ee 70 95 30 8e 35<br><- E id = 00800021 len = 8 data =09 03 22 64 1e 02 00 ff<br><- E id = 00800021 len = 8 data =0a 01 ff 00 00 80 7f ff<br><- E id = 00800021 len = 8 data =0b ff ff 00 00 85 95 00<br><- E id = 00800021 len = 8 data =0c 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0d 01 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0e 00 80 c6 02 00 00 00<br><- E id = 00800021 len = 8 data =0f 00 00 40 80 02 00 00<br><- E id = 00800021 len = 8 data =08 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =09 00 00 53 00 00 00 00<br><- E id = 00800021 len = 8 data =0a 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0b 3c 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =4d 01 00 00 00 00 00 00<p>-> E id = 000FFFFE len = 8 data =cd 7a ae 70 94 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a ee 70 94 00 07 36<br><- E id = 00800021 len = 8 data =09 43 11 64 1e 02 00 ff<br><- E id = 00800021 len = 8 data =0a 01 ff 00 00 80 7f ff<br><- E id = 00800021 len = 8 data =0b ff ff 00 00 85 95 00<br><- E id = 00800021 len = 8 data =0c 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0d 01 00 00 00 ff 00 01<br><- E id = 00800021 len = 8 data =0e 00 00 c7 02 00 00 ff<br><- E id = 00800021 len = 8 data =0f 00 01 00 00 02 00 00<br><- E id = 00800021 len = 8 data =08 00 03 07 00 00 00 00<br><- E id = 00800021 len = 8 data =09 00 00 53 00 00 00 00<br><- E id = 00800021 len = 8 data =0a 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0b 3c 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =4d 02 00 00 00 01 00 00<p>...continues with the rest of DTCs<p><br>This is direct communication between my PC and the ME7 on my desk. I do not have a car to play with.<br>So it is understandable that the ECM has problems in communication with other controllers<p>Some of the commands can be found in the database files in Vadis or Vida.<p>cb is unknown, but normally c+something<br>7a is ECM address<br>b9 is read data command<br>f0 is datablock to be read<br>00 rest is padding to fill the 8 byte CAN frame<p>ae is read DTC command<br>11 is some kind of DTC mode<p>70 is probably read freeze frame mode.<p>Right now I do not have any information on how to decode the detailed DTC data. :-(<p>Read live data example:<br>0a battery voltage<br>1d rpm<p>-> E id = 000FFFFE timestamp = 0130FD74 len = 8 data =cd 7a a6 10 0a 01 00 00<br><- E id = 00800021 timestamp = 0130FD83 len = 8 data =cd 7a e6 10 0a 95 00 00<p>-> E id = 000FFFFE timestamp = 0130FD45 len = 8 data =cd 7a a6 10 1d 01 00 00<br><- E id = 00800021 timestamp = 0130FD54 len = 8 data =cd 7a e6 10 1d 00 00 00<p><br>Boost pressure.<p>-> E id = 000FFFFE len = 8 data =cb 7a b9 f0 00 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a f9 f0 00 09 47 07<br><- E id = 00800021 len = 8 data =09 38 20 20 41 09 49 78<br><- E id = 00800021 len = 8 data =4c 03 20 20 41 00 00 00<p>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<p>7e=126, 126*10 is 1260hPa<p>ECT:<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 10 d8 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 10 d8 00 00 00<p>ECT temp 0x00 = -48 degrees Celcius<br>Possible scale: *0.75-48
 

·
Registered
Joined
·
2,545 Posts
Re: CANBUS communication Volvo S80 ME7 (rkam)

rkam: Thanks for the info. Wish I could test this but with my ELM327 v1.1 I can't seem to get any response from those messages <IMG NAME="icon" SRC="http://www.vwvortex.com/vwbb/confused.gif" BORDER="0"> <p>LTA<br>
 

·
Registered
Joined
·
240 Posts
Discussion Starter · #4 ·
I'm not sure if you can use ELM327. Doesn't it automatically connect using OBDII protocol?
 

·
Registered
Joined
·
2,545 Posts
Re: (rkam)

<TABLE WIDTH="90%" CELLSPACING=0 CELLPADDING=0 ALIGN=CENTER><TR><TD><i>Quote, originally posted by <b>rkam</b> »</i></TD></TR><TR><TD CLASS="quote">I'm not sure if you can use ELM327. Doesn't it automatically connect using OBDII protocol?</TD></TR></TABLE><p>You are very likley correct.<p>ELM327 supports these 29/11-bit CAN protocols ISO 15765-4 and SAE J1939. ELM documentation mentions 'USER 1' CAN *125Kbps and 'USER 2' CAN *50Kbps (both with user definable parameter including a *baud rate multiplier, hum...)<p>Pretty sure ELM doesn't do 11898, is that what I should be after? ISO 11898? <p>So how are the guys that sell software with advanced manufacturer-specific diagnostics doing it with ELM hardware?? Maybe with the user defined ELM CAN modes?<p>My ELM327 is v1.1, and I have read that the newer ELM327 v1.4 supports more CAN functions such as extended CAN messaging and addressing, CAN 'protocol B' (what's that?).<p>There's a command to set CAN Flow Control Mode to X (don't know what flow control modes to try).<p>I realize now that I was doing all this with ISO-15765-4 and that's probably not going to get me past standard OBD2 messaging.<p>I'm reading about CAN USER defined options from the ELM documentation. Not sure about experiementing on my daily driver though.<p>LTA<br>
 

·
Registered
Joined
·
240 Posts
Discussion Starter · #6 ·
The protocol is Volvo special and must be handled by your own software. Not the ELM interface.<br>You will have to put the ELM in totally stupid mode if at all possible. 250k 29bit header.<p>ISO11898 seems to be relevant for your needs.<p>Newer ELM327 might be possible to configure:<p>From elmelectronics:<br>In addition, we now provide two generic CAN protocols that can be customized by the user for use with audio data busses, special OBD implementations, etc.
 

·
Registered
Joined
·
2,545 Posts
Re: (rkam)

<TABLE WIDTH="90%" CELLSPACING=0 CELLPADDING=0 ALIGN=CENTER><TR><TD><i>Quote, originally posted by <b>rkam</b> »</i></TD></TR><TR><TD CLASS="quote">The protocol is Volvo special and must be handled by your own software. Not the ELM interface.<br>You will have to put the ELM in totally stupid mode if at all possible. 250k 29bit header.<p>ISO11898 seems to be relevant for your needs.<p>Newer ELM327 might be possible to configure:<p>From elmelectronics:<br>In addition, we now provide two generic CAN protocols that can be customized by the user for use with audio data busses, special OBD implementations, etc. </TD></TR></TABLE><p>The latest document from ELM says v1.4 supports the new custom modes (Mode B and Mode 9, along with the extended CAN addressing functions), I could not find a specific reference to ELM v1.3 but I think it may also support those custom CAN modes. With my v1.1 I think I'm SOL.<p>I think it's time for me to build one of these:<br><A HREF="http://translate.google.ca/translate?hl=en&sl=de&tl=en&u=http%3A%2F%2Fmartinsuniverse.de%2Fprojekte%2Fcaninterceptor%2Fcaninterceptor.html" TARGET="_blank">http://translate.google.ca/tra....html</A><p>LTA<p><BR><BR>
<i>Modified by LTA at 11:12 PM 4-21-2010</i>
 

·
Registered
Joined
·
3 Posts
I have been testing this out on a 2010MY Volvo XC90 Diesel. The ECU address is different and the CAN ID to receive on differs, but otherwise it looks the same as in the CAN 29 examples, except mine is 500 kbps!
My question relates to the fault code values: I diconnected the MAF connector ;) and got the response 8F11EE1113201330136 which decodes to 3 fault codes 1320 1330 and 1360.
Is there a Volvo specific look up table for these? I have the OBD-II codes, but they are definitely not the same as these!!
Any help / pointers appreciated. I am willing to share data traces if required.
Thanks
Ed.
 

·
Registered
Joined
·
240 Posts
Discussion Starter · #9 ·
The Vida DVD contains SQL tables including information about this, but to find the correct relation between the tables can be a bit challenging.

1320 can mean different things on different modules/vehicles.

0x1320 HFM - RAW airmass signal - SRC
0x1320 SRC of HFM uncorrected signal
0x1320 TAR Intake air temperature TANS, rationality (NPlaus)
0x1320 TAR Intake air temperature, rationality (Max)
0x1320 TAR Intake air temperature, rationality (NPlaus)
 

·
Registered
Joined
·
3 Posts
Hi Rkam
Thanks for that. Is that a DVD which is downloadable / purchasable? Or is it just for Volvo dealers etc?
Thanks Ed.
 

·
Registered
Joined
·
240 Posts
Discussion Starter · #11 ·
If you get a 3-Day subscription Volvo will ship the DVD for a shipping charge of $7.50. Check volvotechinfo.com
You might be able to get hold of outdated DVDs cheap somewhere. It is not necessary to install the software or subscribe to look at the tables.
Like most other software you might find it on the internet somewhere also.
 

·
Registered
Joined
·
3 Posts
Thanks again Rkam. Are you saying the data is in an SQL database file on the DVD? Unencrypted? I should be able to read it with MS Access or similar?

Here's a trace to get extended DTC information:
>CB11AE1B00000000
8F 11 EE 1B 13 20 00 00
09 00 00 00 00 FF FF FF
0A FF FF FF FF FF FF 13
0B 30 00 00 00 00 00 00
0C FF FF FF FF FF FF FF
0D FF FF 13 50 00 00 00
0E 00 00 00 FF FF FF FF
0F FF FF FF FF FF 13 60
08 00 00 00 00 00 00 FF
09 FF FF FF FF FF FF FF
0A FF 13 4F 00 00 00 00
0B 00 00 FF FF FF FF FF
4C FF FF FF FF 00 00 00
I can pick out the DTC's but the rest of the data is "blank" 00 or FF.

This is a trace of read freeze frame by DTC (for 1320)
>CD11AE7013200000
8F11EE701320FFF4
094424110204508C
0A520C2B0056009D
0B3AA0000C910010
0C1313FF0C040207
0DE1110F0020000F
0E1C041F149C8A32
0FEB01000F1C041F
081439FFFFFFFF01
090000000000008D
0A041F143A000000
4900000000000000
Any ideas how to interpret this?
Thanks Ed.
 

·
Registered
Joined
·
3 Posts
Communication with ME7 on CAN bus 250k speed.<p>Read ID<br>-> E id = 000FFFFE len = 8 data =cb 7a b9 f0 00 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a f9 f0 00 09 47 07<br><- E id = 00800021 len = 8 data =09 38 20 20 41 09 49 78<br><- E id = 00800021 len = 8 data =4c 03 20 20 41 00 00 00<p>0009470738 A<br>09497803 A<p>Read DTCs<br>-> E id = 000FFFFE len = 8 data =cb 7a ae 11 00 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a ee 11 95 30 94 00<br><- E id = 00800021 len = 8 data =09 16 00 11 00 e0 03 20<br><- E id = 00800021 len = 8 data =4f 00 80 10 40 20 40 50<p>DTCs 9530 9400 1600 1100 e003 2000 8010 4020 4050<p>Read details for DTCs<br>-> E id = 000FFFFE len = 8 data =cd 7a ae 70 95 30 00 00<br><- E id = 00800021 len = 8 data =8f 7a ee 70 95 30 8e 35<br><- E id = 00800021 len = 8 data =09 03 22 64 1e 02 00 ff<br><- E id = 00800021 len = 8 data =0a 01 ff 00 00 80 7f ff<br><- E id = 00800021 len = 8 data =0b ff ff 00 00 85 95 00<br><- E id = 00800021 len = 8 data =0c 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0d 01 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0e 00 80 c6 02 00 00 00<br><- E id = 00800021 len = 8 data =0f 00 00 40 80 02 00 00<br><- E id = 00800021 len = 8 data =08 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =09 00 00 53 00 00 00 00<br><- E id = 00800021 len = 8 data =0a 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0b 3c 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =4d 01 00 00 00 00 00 00<p>-> E id = 000FFFFE len = 8 data =cd 7a ae 70 94 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a ee 70 94 00 07 36<br><- E id = 00800021 len = 8 data =09 43 11 64 1e 02 00 ff<br><- E id = 00800021 len = 8 data =0a 01 ff 00 00 80 7f ff<br><- E id = 00800021 len = 8 data =0b ff ff 00 00 85 95 00<br><- E id = 00800021 len = 8 data =0c 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0d 01 00 00 00 ff 00 01<br><- E id = 00800021 len = 8 data =0e 00 00 c7 02 00 00 ff<br><- E id = 00800021 len = 8 data =0f 00 01 00 00 02 00 00<br><- E id = 00800021 len = 8 data =08 00 03 07 00 00 00 00<br><- E id = 00800021 len = 8 data =09 00 00 53 00 00 00 00<br><- E id = 00800021 len = 8 data =0a 00 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =0b 3c 00 00 00 00 00 00<br><- E id = 00800021 len = 8 data =4d 02 00 00 00 01 00 00<p>...continues with the rest of DTCs<p><br>This is direct communication between my PC and the ME7 on my desk. I do not have a car to play with.<br>So it is understandable that the ECM has problems in communication with other controllers<p>Some of the commands can be found in the database files in Vadis or Vida.<p>cb is unknown, but normally c+something<br>7a is ECM address<br>b9 is read data command<br>f0 is datablock to be read<br>00 rest is padding to fill the 8 byte CAN frame<p>ae is read DTC command<br>11 is some kind of DTC mode<p>70 is probably read freeze frame mode.<p>Right now I do not have any information on how to decode the detailed DTC data. :-(<p>Read live data example:<br>0a battery voltage<br>1d rpm<p>-> E id = 000FFFFE timestamp = 0130FD74 len = 8 data =cd 7a a6 10 0a 01 00 00<br><- E id = 00800021 timestamp = 0130FD83 len = 8 data =cd 7a e6 10 0a 95 00 00<p>-> E id = 000FFFFE timestamp = 0130FD45 len = 8 data =cd 7a a6 10 1d 01 00 00<br><- E id = 00800021 timestamp = 0130FD54 len = 8 data =cd 7a e6 10 1d 00 00 00<p><br>Boost pressure.<p>-> E id = 000FFFFE len = 8 data =cb 7a b9 f0 00 00 00 00<br><- E id = 00800021 len = 8 data =8f 7a f9 f0 00 09 47 07<br><- E id = 00800021 len = 8 data =09 38 20 20 41 09 49 78<br><- E id = 00800021 len = 8 data =4c 03 20 20 41 00 00 00<p>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 12 9d 7e 00 00<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 12 9d 01 00 00<p>7e=126, 126*10 is 1260hPa<p>ECT:<br>-> E id = 000FFFFE len = 8 data =cd 7a a6 10 d8 01 00 00<br><- E id = 00800021 len = 8 data =cd 7a e6 10 d8 00 00 00<p>ECT temp 0x00 = -48 degrees Celcius<br>Possible scale: *0.75-48
Can I do this in Torque app? For example,, set header, send PIDs to read the DTCs and receive the raw data?
 
1 - 14 of 14 Posts
Top