E46 Fanatics Forum banner

CAN Bus Information

54K views 25 replies 15 participants last post by  Thaniel 
#1 ·
Hi, does anyone have any reference guides to the message IDs used on the Can Bus?

I plan to write a little app to view/log these messages on my CarPC, but obviously need to know what the IDs of the messages translate into - i.e. which one is speed / revs / coolant temp etc..

I've seen references to J1939, but not sure if that's the actual implentation used on the E46 platform.

Any help appreciated.

TIA.
 
#10 ·
Isn't that OBD related though, the Canbus isn't actually connected to the OBD port on our cars (nor on some E46s I think).
Why not? Isn't it supposed to be?

From http://www.obdii.com/connector.html :

Pin 2 - J1850 Bus+
Pin 4 - Chassis Ground
Pin 5 - Signal Ground
Pin 6 - CAN High (J-2284)
Pin 7 - ISO 9141-2 K Line
Pin 10 - J1850 Bus
Pin 14 - CAN Low (J-2284)
Pin 15 - ISO 9141-2 L Line
Pin 16 - Battery Power
 
#17 · (Edited)
The CAN bus does not go to the LSZ. There seems to be two different wire colors for the CAN Bus. Between the ABS, steering angle sensor, instrument cluster, DME and adaptive headlight control unit it's CAN+ is Yellow/Red and CAN- is Yellow/Brown. Between the DME and the transmission control unit it's CAN+ is yellow and CAN- is white. The CAN Bus does NOT connect to the OBDII connector nor does it connect to the older DLC-20 connector under the hood.

You want K-bus, thats what the BMW uses for communication. Not sure what protocol the ODB port uses but only a limited subset of information that is required for emissions purposes is available on that.
K-Bus doesn't have any engine information. You might be thinking K-Line (ISO 9141-2) which is available on the OBDII port. If you want engine specific information it's safest to go through the OBDII port, K-Line. If you look at the wiring diagram it's called D_TXD2.

Why not? Isn't it supposed to be?

From http://www.obdii.com/connector.html :

Pin 2 - J1850 Bus+
Pin 4 - Chassis Ground
Pin 5 - Signal Ground
Pin 6 - CAN High (J-2284)
Pin 7 - ISO 9141-2 K Line
Pin 10 - J1850 Bus
Pin 14 - CAN Low (J-2284)
Pin 15 - ISO 9141-2 L Line
Pin 16 - Battery Power
BMW E46 does not use J-2284 and CAN bus is not available on the OBDII port. The E46 uses ISO 9141-2. Look at the connector, pins 6 and 14 (CAN J-2284) are empty as well as pin 2 & 10 (J1850) and pin 15 (L-Line is optional in ISO 9141-2)

I need the CAN bus because i have a CAN datalogger which will send speed signal to my headlight leveling system :)

My ODB II connector only has 4 wires though (2 of which are GND if im not mistaken) :/
Be careful messing around with the CAN bus. If you disrupt traffic on the bus you may have issues with the ABS, transmission, steering angle sensor and engine which need to be in constant communication or stuff won't work right. It's best to use the K-Line (ISO 9141-2) signals at the OBDII connector. The instrument cluster acts as a gateway to the CAN bus. It will take your requests for information and if properly formatted will send it along on the appropriate bus. If your program goes crazy and transmits garbage the cluster will ignore it and not forward it to the CAN bus.
 
#9 ·
You want K-bus, thats what the BMW uses for communication. Not sure what protocol the ODB port uses but only a limited subset of information that is required for emissions purposes is available on that.
 
#14 ·
Its the K-bus that is not connected on all cars. On the cars with the round diag plug under the hood the K bus is not connected to the OBD port.

FYI not all those pins are connected on the OBD port. Newer cars connect CAN but older ones did not. It was only mandated in the US in 2008

A quick google search leads me to believe that the e46 does NOT have a CAN bus. It uses ISO 9141-2 on the diag port. If you want to decode speed information your best bet is probably to get a USB VAG-COM adaptor and use BMW INPA/EDIABAS and connect to your car's K-line. Google around INPA and you will find more information on it. Its a great tool to have anyways, you can read way more specific information from the cars computer besides the generic stuff that the OBD reader tells you. Think how the Peake tool is advertised only this is what BMW dealers and factories use. (well dealers use DIS but, whatever I digress, both talk to the computer through the K-line)
 
#18 ·
Hacked(spliced) my way into the CAN today and everything worked out perfect.

I located connector x6004 on the DME (the 2nd one on the left, has a "4" marking on the dme when plug is removed)
And then i located pins 36 and 37, coming out of these are a pair of twisted yellow wires with red and brown stripes(just like scottjoh said)

Plugged in there and my can reader lit up like it should.

Thank you scottjoh and thank you spaghetticoder :D
 
#23 · (Edited)
came across this thread while searching for where to hookup my AIM Pista datalogger.... Ill post back with pictures/writeup once I figure it out. My PDFs say:

ECUs of these BMW cars have twisted wires out coming.
To connect these cars to AIM loggers:
***8226; connect AIM cable labelled CAN+ to yellow/red (CAN High) of BMW ECU wiring;
***8226; connect AIM cable labelled CAN- to yellow/brown (CAN Low) cable of BMW ECU
wiring.
or
***8226; connect AIM cable labelled CAN+ to yellow/black (CAN High) of BMW ECU wiring;
***8226; connect AIM cable labelled CAN- to yellow/brown (CAN Low) cable of BMW ECU
wiring.

Edit: Looks like pin 9 is CAN+ and pin 10 is CAN- on the instrument cluster or PIns 36/37 off DME.
 

Attachments

#24 ·
Just hooked up the Pista using the CAN BUS. Pretty simple using the wiring from the instrument cluster. Went out for a drive to check the datalogging. It appears it reads all the basic stuff, but the brake pressure switch pressure isnt logging anything. I'll have to figure it out. Fuel is reading in liters and Ill have to make that change.

AIM CAN BUS info: http://www.aim-sportline.com/download/ecu/stock/bmw/BMW_Mini_100_eng.pdf
 

Attachments

#25 ·
I see here u guys posted the colors for can bus... I have a loose thin black wire ... I thought ot might of been can bus but Would that be the k bus then ..... There is k bus going to the lil box over the fuse box and returns .. But this wire identical but not connected .... Can't find the other end to it ...
Someone please help
 
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top