Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
351 views41 pages

Ford Focus RS CAN Message Project

Uploaded by

Ariyant dope
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as XLSX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
351 views41 pages

Ford Focus RS CAN Message Project

Uploaded by

Ariyant dope
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as XLSX, PDF, TXT or read online on Scribd
You are on page 1/ 41

CAN ID Example Message Refresh Rate

010 010 8 00 D5 00 00 80 00 80 AA 10ms


030
04A
04B
060
070 070 8 03 47 1A 39 6A 39 F0 00 20ms
080 080 8 90 00 7D 00 00 7F F3 F7 20ms
090 090 8 00 00 C2 01 61 A3 00 00 10ms
0A0
0B0
0C0
0C8
120
130
138
140
150
160
17E
180
190 190 8 80 39 80 40 80 00 80 4B 10ms
1A0
1B0
1C0
1D0
1E0
200
208
210
213 213 00 fc 00 fb 0f fe 8f fe 20ms
218
252
260 260 89 82 00 0E E3 61 90 C8
280
290
2C0 2C0 8 00 B1 00 A4 00 BA 00 A8
2D0
2D4
305
310
340
360
380
388
390
398
3B4
400
405
40A
420 420 8 00 00 00 00 00 00 10 C4 600ms
435 435 8 B7 13 C3 D0 B9 E8 C3 CE
455
581
5F2

an Message Byte(s) Bit


Identifier

40

46

190 2 6

200 0,1

200 2,3

200 4,5

200 6 7
201 0,1

201 2,3

201 4,5

201 6

205 2 6

0000020F 2,3

0000020F 4 6

211 2 7

211 4 6
212 0 7

212 2 5

212 3 7

212 4 4

212 4 6

228 0 0

228 0 1

228 0 2
228 0 3
228 0 4
228 0 5
228 0 6
228 0 7

228 1 3

228 1 4

228 1 6

228 1 7

231 0 0

231 0 1

231 0 2

231 0 3

231 0 4
231 0 5
231 0 6
231 0 7

231 1,2
240 0

250 0
250 1
250 2

250 3

250 4 0
250 5 1
250 5 2
250 5 3
250 5 4
250 5 5
250 5 6

000002A0

420 0,1
420 1

420 2

430

433 1 0

433 2 0

433 2 1
433 2 2

433 2 3

433 2 6

433 3 0
433 3 1
433 3 2
433 3 3

433 5 0

433 6 0
433 6 1
433 6 2
433 6 3
433 6 6

000004B0 0,1

000004B0 2,3

000004B0 4,5

000004B0 6,7

000004DA 0,1

000004DA 2 6

000004DA 2 7

000004EA

000004EC

000004F0

000004F1

000004F2 1,2
000004F3

000004F4

228 1 7

231 0 0

On models
with ASM
(automatic
shift
mechanism)
present
second
brake
switch,
connected
directly to
TCM. It NC
and closing
after light
pressing on
brake.
Discovered Contents

Steering Rate or Torque

Calculated torque at transmission


TPS
Rpm/engine speed

Headlight status

Actual steering effort

Brake pressure

Auto Start Stop Button: 0x260 B1b0 (Bit 7)

RPM delta or requested torque or timing? TPS dependent

high beam status


RS Drive Mode, requested steering effort

Bitmask

0x40

0x80

0x40

0x40

0x80

0x40
0x80

0x20

0x80

0x10

0x40

0x1

0x2

0x4

0x10
0x20
0x40
0x80

0x8

0x10

0x40

0x80

0x1

0x2

0x4

0x8

0x10
0x20
0x40
0x80
0x1
0x2
0x4
0x8
0x10
0x20
0x40

0x1

0x1

0x2
0x4

0x8

0x40

0x1
0x2
0x4
0x8

0x1

0x1
0x2
0x4
0x8
0x40

0x40

0x80
0x80

0x1
Notes

Last 2 bytes steering angle, 0x8000 = zero degrees, 8850= 90 degrees right, 9000=180 either way, Middle msb bit is direction.

9000 is tps, 9000=0, 93e8=100%, Accel pedal


example line is 0 engine speed

vehicle speed?

Probably Wheel speeds, order unknown, maybe LF,RF,LR,RR

TPS dependent
MUX_ESC_MODE, Byte 1: StartBit: 4 Len: 2bit

possibly TPMS or ABS unit data

0FB0 is brake pressure


Front wiper status

cannot confirm: ESC Off Button: 0x260 B6b4 (Bit 43) 1 is button pressed

ng? TPS dependent

Drive Mode Button: 0x305 B5b2 (Bit 37) 1 is button pressed


gauge cluster? Normal=10c4, sport=11cc, drift=12c4, last bit is sport shocks. Launch Control Status: 0x420 B7b2 (Bit 53) 1 is a

Description

Brake Active

Unknown

Unknown

Unknown

Unknown
RPM

Unknown

Vehicle Speed

Accelerator Pedal

Brake Active

Vehicle Speed

Unknown

Unknown

Unknown
Unknown

Unknown

Unknown

Off (Park)

Reverse

Forward (Drive)

1st Gear
2nd Gear
3rd Gear
4th Gear

Gear Shift

Unknown

Manual/Triptronic

Unknown

Unknown

Unknown

Unknown

1st Gear
2nd Gear
3rd Gear
4th Gear

Unknown
Unknown

Unknown
Unknown
Unknown

Unknown

Unknown

Unknown

Unknown

Unknown

Unknown

Unknown
Unknown

Unknown

Unknown

Unknown
Unknown
Unknown
Unknown

Unknown

Unknown
Unknown
Unknown
Unknown
Unknown

Left Front Wheel Speed

Right Front Wheel Speed

Left Rear Wheel Speed

Right Rear Wheel Speed

Steering Column Angle

Unknown

Unknown

Unknown

Unknown

Unchanging Unknown Every 5s

Unchanging Unknown Every 5s

Odometer (Total)
Unchanging Unknown Every 5s

Unchanging Unknown Every 5s

Manual/Triptronic

Unknown
Comment

Only lasts when


key is first on
Only lasts when
key is first on

Correlates with
with 00000200(4,5)
& Acceleration

Correlates with
with 00000200(0,1)
& Acceleration

Scale = X rpm.

Offset by 0x4000.
Appears to be the
‘delta’ in engine
torque? Derivative
of rpm?
Cumulative returns
to zero.

Scale = X/100
km/h. Unsigned.
Accelerator
Position. 200 is
fully depressed.

Scale = (X-
10000)/100 km/h,
unsigned (Refer to
handle position).
Correlates with
0000004B0 wheel
speeds.

Appears always on

Appears always on

Appears always on
Appears always on

Appears always on

Appears always on

Some Dash
Warning Light…
Off when ignition is
off

Some Dash
Warning Light…
Off when ignition is
off
0x03 appears to be
‘neutral’
0x03 appears to be
‘neutral’

Active for several


messages on each
gear change.

Occurred once on
a gear change

Something to do
with brake pedal

Not Brake, but very


close…changes
not far from brake

Always appears off

Always appears off

Always appears off

Reverse = 0xE?
Reverse = 0xE?
Reverse = 0xE?
Reverse = 0xE?
Torque? RPM
demand x 10?
Varies, not
correlated with
speed/accel.
Around 10/11/12
when stationary.

Accelerator
Position. 225
seems fully
depressed, but
bias of 32… See
other accel pos.
This might be the
raw value, some
noise.

Appears to be all
zeroes (4 byte
frame)

Counter (Always
Increments)

Not sure if 2 bytes


or byte pair.

Not seen to
change (0)
Changes
Changes
Not seen to
change (1)
Not seen to
change (1)

Not seen to
change (1)
Check Order.
Scale = (X-
10000)/100 km/h,
unsigned (Refer to
handle position).
Correlates with
00000020F vehicle
speeds.

Check Order.
Scale = (X-
10000)/100 km/h,
unsigned (Refer to
handle position).
Correlates with
00000020F vehicle
speeds.

Check Order.
Scale = (X-
10000)/100 km/h,
unsigned (Refer to
handle position).
Correlates with
00000020F vehicle
speeds.

Check Order.
Scale = (X-
10000)/100 km/h,
unsigned (Refer to
handle position).
Correlates with
00000020F vehicle
speeds.

(X-32768)/10
Degrees,
Clockwise +ve.
Not seen to
change (1)
Not seen to
change (1)
1 Byte Frame
always 00
8 Byte Frame
always 00

14 24 12 FF FF 7F

4A 01 9F FF FF 64
5E 5E
Might be first byte
too to get the
range
32 30 33 30 30 38
31 31
42 4B 31 30 46 32
30 30

Not Brake, but very


close…changes
not far from brake
Value CAN ID DLC Example Message
Accelerator Pedal Position 0x080 8 90007D00007FF3F7
Engine Speed 0x090 8 0000C1FF61A40000
Brake Pressure 0x213 8 00AB004E07EB67EB
Auto Stop Btn 0x260 8 8982000EE36190C8
Wheelspeed 1 0x190 8 803980408000804B
Wheelspeed 2 0x190 8 803980408000804B
Wheelspeed 3 0x190 8 803980408000804B
Wheelspeed 4 0x190 8 803980408000804B
Steering Angle 0x010 8 00D50000800080AA
Headlamp Knob Position 0x0c8 8
Front Wiper Status 0x310 8
MessageStart (bit) MessageLen (bits) ByteData Formula Rate (hz)
6 10 $value/10.0 50
36 12 $value*2 50
24 16 $value 50
7 1 $value
1 15 $value*300 100
17 15 $value*300 100
33 15 $value*300 100
49 15 $value*300 100
49 15 $value*pi/1000 100
62 2 $value
48 5 $value
Unit
%
RPM

-
m/s
m/s
m/s
m/s
radians
-
-
Mustang 2007 to 2009
Here's the ArbIDs to the newly discovered MS CAN-Bus (MS-CAN) items:
0x3A5: Tire Pressure Monitor (TPM)
0x3B1: Door Status
0x400: Fuel Gauge
These items
0x445: Oil Pressure idiot Gauge
are handled by
two HS CAN-
Bus ArbIDs
(0x201 &
0x420). As
ArbID 0x201, with 8 byte payload
follows:
The packet takes the form: [RR, rr, 00, 00, SS, ss, 00, 00]
Where RRrr is the tachometer rpm and SSss is the Speed mph.
The following formulas are used:
rpm = 0.25 * (RRrr) - 24
Speed (mph) = 0.0065 * (SSss) - 67
Byte 0 & 1 = Tachometer rpm. See formula above.
Byte 2 & 3 = Unknown. Set to zero.
Byte 4 & 5 = Speed. See formula above.
Byte 6 & 7 = Unknown. Set to zero.

ArbID 0x420, with 8 byte payload


Byte 0, Temperature Gauge:
0x55 = LOWEST Temp, 0 line
0x7F = Middle Temp
0xA0 = High Temp (top mark)
0xA1 = Max Temp (red line) with Red warning symbol (Below Tach)
Byte 1, Unknown.
Byte 2, Unknown.
Byte 3, Unknown.
Byte 4, Indicators and Temp Gauge Override:
Bit 0, Unknown.
Bit 1, Unknown.
Bit 2, 1 = Orange O/D OFF Indicator (Below Tachometer).
Bit 3, 1 = Orange O/D OFF Indicator Blinking (Bit D2 must be zero).
Bit 4, 1 = Force Max Temperature (red-line gauge), no warning indicator.
Bit 5, 1 = Force Max Temperature (red-line gauge), no warning indicator.
Bit 6, 1 = Orange Check Engine (Below Tach).
Bit 7, 1 = Orange Check Engine Blinking (Bit D6 must be zero).
Byte 5, Indicators:
Bit 0, Unknown.
Bit 1, Unknown.
Bit 2, Unknown.
Bit 3, 1= Red Charge System Fault Indicator (Below Tach)
Bit 4, Unknown.
Bit 5, Unknown.
Bit 6, Unknown.
Bit 7, 1= Orange Power Train Fault Indicator (Near Tach's minimum mark). Power c
Byte 6, Indicators:
Bit 0, Unknown.
Bit 1, Unknown.
Bit 2, Unknown.
Bit 3, 1= Green Cruise Control Indicator (below Temp Gauge)
Bit 4, 1= Red Security Indicator, (Below Tach). Bit 5 must be zero.
Bit 5, 1= Flashing Security Indicator (Below Tach). Bit 4 must be zero.
Bit 6, Unknown.
Bit 7, Unknown.
Byte 7, Unknown.

The four ArbIDs have been configured for 1/2 tank of gas, valid oil pressure, all doors closed, and good tire pressure
Here's the ArbIDs to the newly discovered MS CAN-Bus (MS-CAN) items:
0x10A: Headlight Control & Backlight Intensity.
0x383: Turn Signal Indicators.
0x3B3: Warning Beeper.
0x3B8: High Beam Indicator.
0x3C1: Parking Brake Indicator, Low Brake Fluid Warning.

instrument cluster wiring

Wiring diagram for the headlight switches

C220 BLACK Insturment Cluster


1 not used
2 BK GROUND
3 LG/RD CONSTANT VOLTAGE
4 not used
5 not used
6 GY/OG Message Center Switch Signal
7 TN/OG Message Center Switch Return
8 not used
9 not used
10 not used
11 not used
12 not used
13 LG/VT Key Warning Switch Signal
14 PK/OG Med Speed Can -
15 WH/OG Med Speed Can +
16 not used
17 PK/LG High Speed Can -
18 WH/LG High Speed Can +
19 not used
20 WH/PK Traction Control Switch Signal
21 VT Traction Control Ind.
22 not used
23 LB/PK Air Bag/Safety Belt Status Tone Control
24 BK/YE Air Bag Ind Control
25 RD/YE Voltage - Start/Run
26 PK/BK Voltage - Start/Run

There's a pair of wires (Pins 6 & 7) that need a 3-button Message Center switch. The switch is expensive so it's DiY time. A cou
Info: 100 Ohms
Setup: 1.5K Ohms
Reset: 470 Ohms
Default: 100K Ohm
ng indicator.
ng indicator.
inimum mark). Power cycle reset!

be zero.
ust be zero.

osed, and good tire pressure.


xpensive so it's DiY time. A couple hours of experimentation determines that the switch is a resistor ladder (voltage divider) for the cluster's

Green = Info, Black = Setup, Red = Reset


oltage divider) for the cluster's analog input on pin 6. The resistor values are as follows:
CAN ID Example Message Refresh Rate

2E0
070
250
265
Discovered Contents

esc status
clock
Esc button
Notes

https://docs.google.com/spreadsheets/d/1xUpZs8Au9zWhZHoO-2XkiXkR_A7Q1a-ES3UqCWYACX0/edit#gid=0

clock with seconds accuracy, GPS?


ESC button press
Name ID Bit Offset Bit Length Factor Offset
steering wheel an 0x10 0x31 0xf 0.04395 0
steering wheel sig0x10 0x20 1 1 0
torque at transmis0x70 0x25 0xb 1 -500
accelerator pedal0x80 6 0xa 0.1 0
brake pedal stat 0x80 4 2 1 0
engine speed 0x90 0x23 0xd 2 0
headlamp status0xc8 0x3e 2 1 0
ignition status 0xc8 0x10 5 1 0
parking brake stat0xc8 0x19 1 1 0
gear lever position0xd0 0x10 4 1 0
transmission gear 0xd0 0x14 4 1 0
vehicle speed 0x130 0x30 0x10 0.01 0
fuel consumed sinc
0x200 0x18 8 25 0
odometer 0x218 8 8 1 0
windshield wiper0x310 0x30 5 1 0
driver 0x360 0x31 1 1 0
high beam status0x360 2 1 1 0
passenger 0x360 0xe 1 1 0
rear left 0x360 0xf 1 1 0
rear right 0x360 0x10 1 1 0
fuel level 0x380 0x16 0xa 0.2 0
total odometer 0x2c0 0x28 0x18 1 0
latitude degrees 0x465 0 8 1 -89
latitude minute fra0x465 0x10 0xe 0.0001 0
latitude minutes 0x465 8 6 1 0
longitude degrees0x465 0x20 9 1 -179
longitude minute f0x465 0x30 0xe 0.0001 0
longitude minutes 0x465 0x29 6 1 0
Min Max Comments
0 1440.1
0 0 Boolean. 0 = positive. 1 = negative?
-500 1547
0 102.3
0 0 Probably an enum.
0 16382
0 0 position of knob left->right (0-3)
0 0 enum
0 0 bool
0 0 no 0xD0 messageNot HS bus
0 0
0 655.35 units? km/h? Need to correlate with GPS speed
0 6375
0 255 huh. Percentage?
0 31 probably wiper speed. 32 different speeds seems odd though
0 0 driver what? Driver detected by weight sensor?
0 0 bool
0 0 same as driver i’d imagine
0 0
0 0
0 204.6 80ad7c76600cc063, c3acfc76600cc063 @ half tank
0 16777000 km or miles? All zeros!?
-89 89 so cool Not HS bus
0 0.9999
0 59
-179 179
0 0.9999
0 59

You might also like