XK8 / XKR ( X100 ) 1996 - 2006

Decoding the CAN bus - 2003-2006 XK8/R

Thread Tools
 
Search this Thread
 
  #1  
Old 09-19-2020, 08:27 AM
crbass's Avatar
Veteran Member
Thread Starter
Join Date: May 2019
Location: Durham, NC
Posts: 1,090
Received 925 Likes on 456 Posts
Default Decoding the CAN bus - 2003-2006 XK8/R

In my now long-running effort to play with puzzles (the XK8/R CAN bus), Jon (Jon89) allowed me to record a few minutes of CAN data on a model outside my cars (his, 2006, mine 2001-2002). As expected, the 2006 is different. A major change appears to have happened in Ford's CAN spec for the 2003 MY, expected this might translate to Jaguar.

In any case, there are some similarities, most of the original 13 CAN IDs have analogues in the 2006 data (i.e. generally hex ID(2003/6) = hex ID(2001/2) +1) with the big exception that the 4 CAN tokens (the heartbeats) are gone. In 06, there are 6 CAN modules instead of the 4 with now 20 CAN IDs. Interestingly, one CAN ID appears to have remained exactly the same for some reason, 4B0, the ABS/DSSCM wheel speeds. The table below has some information on the correspondence between 01-02 and 03-06. I have randomly decoded a few of the messages like the odometer, and may continue as time permits. Edifying information below:


More CAN bus hijinks. Comparison of 01-02 to 03-06
 
The following 9 users liked this post by crbass:
avos (09-20-2020), ccfulton (09-19-2020), cjd777 (09-21-2020), Higgins (09-21-2020), Jon89 (09-19-2020), michaelh (09-19-2020), ozbot (09-19-2020), TGraves (02-22-2022), Wight8 (09-19-2020) and 4 others liked this post. (Show less...)
  #2  
Old 09-19-2020, 09:44 AM
Jon89's Avatar
Veteran Member
Join Date: Jan 2009
Location: Raleigh, NC
Posts: 12,666
Received 4,409 Likes on 2,878 Posts
Default

Well done Dale. No idea how many folks here will be digging as deeply into the CANBUS system as you do, but with these XK8s there is never such a thing as too much information....
 
  #3  
Old 09-19-2020, 07:58 PM
ccfulton's Avatar
Veteran Member
Join Date: Jan 2012
Location: Phoenix, AZ USA
Posts: 2,953
Received 1,108 Likes on 764 Posts
Default

Subscribed to this thread.

Great work and like John says, you can never know too much.
 
  #4  
Old 02-20-2022, 04:09 PM
Wight8's Avatar
Senior Member
Join Date: Jul 2020
Location: Wight
Posts: 100
Received 53 Likes on 34 Posts
Default

@crbass or anyone else out there into this sort of thing - In my day job I do a lot of electrical/electronic diagnostics, quite a bit on classic (or at least old) Jags and Mercs. Got a customer with an 03 XJ8 with a failed Adaptive Cruise Control (ASCM) radar module, this integrated type were only used for a couple of years and are consequently non existent on the used market. I've pulled it apart but nothing obvious broken.
Unfortunately without it there is a nagging message and no use of the normal cruise control. - However if there was an "I'm alive" message on the CAN bus and I disable the "active" switch, all should be well. Anyone know the format of this message or hazard a guess? If the unit was alive I could power it up and find out as there is pretty much only +/- and CAN wires. I could then build a simple Arduino circuit to spoof it.
 

Last edited by Wight8; 02-20-2022 at 04:13 PM.
  #5  
Old 02-21-2022, 12:24 PM
crbass's Avatar
Veteran Member
Thread Starter
Join Date: May 2019
Location: Durham, NC
Posts: 1,090
Received 925 Likes on 456 Posts
Default

Originally Posted by Wight8
@crbass or anyone else out there into this sort of thing - In my day job I do a lot of electrical/electronic diagnostics, quite a bit on classic (or at least old) Jags and Mercs. Got a customer with an 03 XJ8 with a failed Adaptive Cruise Control (ASCM) radar module, this integrated type were only used for a couple of years and are consequently non existent on the used market. I've pulled it apart but nothing obvious broken.
Unfortunately without it there is a nagging message and no use of the normal cruise control. - However if there was an "I'm alive" message on the CAN bus and I disable the "active" switch, all should be well. Anyone know the format of this message or hazard a guess? If the unit was alive I could power it up and find out as there is pretty much only +/- and CAN wires. I could then build a simple Arduino circuit to spoof it.
Again unfortunately, I suspect this may be "CAN ASC STATUS", but I don't know what message this data is included in. Unlike earlier CAN heartbeats, the 2003-on heartbeats do not appear to be separate and easily identifiable. It may be in the 2 byte message ID 120 which I identified as coming from the ASCCM, but that's rank speculation. Is any of this this true for the XJ? Don't know that either.

I had data on a later model XK for a few minutes (thanks Jon), so there a limits on what can be derived from that.
 
  #6  
Old 02-21-2022, 02:44 PM
Wight8's Avatar
Senior Member
Join Date: Jul 2020
Location: Wight
Posts: 100
Received 53 Likes on 34 Posts
Default

Thanks for the input, hoping I may be able to un-option it in SDD, but there have been varying reports on the feasibility of that.
If he does end up finding a replacement I'll try and see what CAN I can capture. His car has every option there ever was on it !
 
The following 2 users liked this post by Wight8:
crbass (02-21-2022), TGraves (02-22-2022)
  #7  
Old 04-04-2022, 05:55 PM
nelsgw123's Avatar
Junior Member
Join Date: Apr 2022
Posts: 6
Likes: 0
Received 0 Likes on 0 Posts
Default

Originally Posted by crbass
Again unfortunately, I suspect this may be "CAN ASC STATUS", but I don't know what message this data is included in. Unlike earlier CAN heartbeats, the 2003-on heartbeats do not appear to be separate and easily identifiable. It may be in the 2 byte message ID 120 which I identified as coming from the ASCCM, but that's rank speculation. Is any of this this true for the XJ? Don't know that either.

I had data on a later model XK for a few minutes (thanks Jon), so there a limits on what can be derived from that.
Dale (crbass)

I'm new to this thread, but have read some of your great work on the CAN bus. I have a 2005 XK8 and the table you referenced on 9/19/20 the right hand column is exactly correct. I did a capture today with a CANedge1 recording about 30 mins of drive. Do you have more details on the CAN messages? My objective is to replace the 6HP26 with a manual transmission from a S-type 2.7 diesel (S6-53, mechanically the same) and build a "auto trans simulator" to trick the XK8 to think the auto is still installed. In order to do this I am looking for all the messages the transmission will send out and respond to.
any help would be desired.
Glenn
 
  #8  
Old 04-04-2022, 06:03 PM
xalty's Avatar
Veteran Member
Join Date: Dec 2019
Posts: 3,322
Received 1,067 Likes on 857 Posts
Default

Originally Posted by nelsgw123
Dale (crbass)

I'm new to this thread, but have read some of your great work on the CAN bus. I have a 2005 XK8 and the table you referenced on 9/19/20 the right hand column is exactly correct. I did a capture today with a CANedge1 recording about 30 mins of drive. Do you have more details on the CAN messages? My objective is to replace the 6HP26 with a manual transmission from a S-type 2.7 diesel (S6-53, mechanically the same) and build a "auto trans simulator" to trick the XK8 to think the auto is still installed. In order to do this I am looking for all the messages the transmission will send out and respond to.
any help would be desired.
Glenn
this has already been done in a 2003 STR by user iansane

i would recommend reaching out to him.

 
  #9  
Old 04-04-2022, 09:20 PM
crbass's Avatar
Veteran Member
Thread Starter
Join Date: May 2019
Location: Durham, NC
Posts: 1,090
Received 925 Likes on 456 Posts
Default

Originally Posted by nelsgw123
I'm new to this thread, but have read some of your great work on the CAN bus....
...any help would be desired.
Appreciate it, that's all I know for sure about the later models (and I don't know the particulars of what iansane did other than some timing spoofing or the details of the S-type vs the XK8 (2001-2002)). But I would guess that there is a very large concordance between the 01-02 and 03 on messages from the TCM at C8 (earlier)/C9 (later) and at 3E8(earlier)/3E9(later). Looking at the CAN messages listed in the electrical guide, there is a vast commonality between 02 and 03, perhaps even at the byte level. Don't know details of the other modules talking back to the TCM, but expect similar levels of commonality with perhaps a few additional bells and whistles.

Happy to help compare with earlier details if that will be helpful to decode the later messages (perhaps I'll want a later XK8 one day...).
 
  #10  
Old 04-04-2022, 10:26 PM
nelsgw123's Avatar
Junior Member
Join Date: Apr 2022
Posts: 6
Likes: 0
Received 0 Likes on 0 Posts
Default

Dale
How can I get a CAN capture to you?
I captures 2 trips, both are very large files.
Can you repost your latest excel, last one I have is 20200525
Glenn
 
  #11  
Old 04-04-2022, 11:05 PM
crbass's Avatar
Veteran Member
Thread Starter
Join Date: May 2019
Location: Durham, NC
Posts: 1,090
Received 925 Likes on 456 Posts
Default

No substantial changes to the spreadsheet during the crazytimes. Will PM with a means to send large files.



 
  #12  
Old 06-04-2024, 05:37 AM
Higgins's Avatar
Senior Member
Join Date: Dec 2017
Location: Gothenburg
Posts: 391
Received 104 Likes on 62 Posts
Default

Hi Dale,

have you done any more research on this? I took up the decoding for my Xkr -2000 again recently and did successfully decode throttle pos, engine rpm, fuel tank level and a few more. But I'm struggling to find more.

Trying to send codes to the bus in hope to get answers, but only get "termination" code back like for sending 0x7E8 00 05 I get back 0x7EC 6 127 0 0 0 0 17 0

Did you figure out how to use an Arduino to send in requests and get back response for engine oil temp, coolant temp and so on? I'm not using the OBD-port but instead directly on the can hi/cal lo wires.

Regards,
Higgins
 
  #13  
Old 06-04-2024, 06:27 AM
Jon89's Avatar
Veteran Member
Join Date: Jan 2009
Location: Raleigh, NC
Posts: 12,666
Received 4,409 Likes on 2,878 Posts
Default

Dale changed jobs and moved from North Carolina to Michigan last summer. He is rarely on the forum these days. Send him a PM and perhaps he will see that....
 
The following users liked this post:
Higgins (06-05-2024)
  #14  
Old 06-04-2024, 06:34 AM
dibbit's Avatar
Veteran Member
Join Date: Oct 2010
Location: Spain
Posts: 1,360
Received 538 Likes on 386 Posts
Default

Originally Posted by Higgins

Did you figure out how to use an Arduino to send in requests and get back response for engine oil temp, coolant temp and so on? I'm not using the OBD-port but instead directly on the can hi/cal lo wires.
I experimented with an Arduino (actually an ESP32) using the ELMduino library. All the standard PIDs work fine (engine temp, RPM, vehicle speed etc) but I couldn't get any of the extended PIDs to work. This is on a 2001 XKR.
 
The following users liked this post:
Higgins (06-05-2024)
  #15  
Old 06-04-2024, 12:16 PM
Chirpy's Avatar
Senior Member
Join Date: May 2016
Location: Castle Rock, CO
Posts: 128
Received 69 Likes on 44 Posts
Default

Just checking your approaches - for extended PIDs, as per Dale's spreadsheet you need to send the unlock code before any extended OBD2 services will be enabled:
e.g. to request current MAF voltage from the ECM using service 22, if using Canbus protocol (i.e. not serial)
First you send 0x01 0x10 to address 0x7e8, and get response something like 0x06 0x7f 0x10 from address 0x7ec
- if you don't send this then the extended PID request (service 0x22) is ignored
Then you send the requested service 22 extended PID to address 0x7e8 (in this case 0x03 0x22 0x12 0x29 - for 3 bytes of message, service 0x22, PID 0x12 0x29)
- and get a response from address 0x7ec, something like 05 62 12 29 00 CF 00 00 per the spreadsheet

Let me know if you want any more info, including on the more exotic canbus services - I've reverse engineered much of the AJ27 ECM code (not AJ26 or AJ34 - although others have clearly done the latter) so I have a pretty good view on canbus services supported.
 
The following 2 users liked this post by Chirpy:
Higgins (06-05-2024), michaelh (06-04-2024)
Related Topics
Thread
Thread Starter
Forum
Replies
Last Post
Katja_bo
XK8 / XKR ( X100 )
5
10-30-2019 08:16 AM
kermadec
XK8 / XKR ( X100 )
3
07-28-2012 07:34 AM
Terrapin
XK8 / XKR ( X100 )
10
07-16-2011 06:46 PM
JAG06
XK8 / XKR ( X100 )
10
03-15-2010 07:19 PM
jagpro69
XK8 / XKR ( X100 )
1
04-03-2009 09:10 AM

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 


Quick Reply: Decoding the CAN bus - 2003-2006 XK8/R



All times are GMT -5. The time now is 10:42 AM.