Xoutpost.com

Xoutpost.com (https://xoutpost.com/forums.php)
-   X5 (E53) Forum (https://xoutpost.com/bmw-sav-forums/x5-e53-forum/)
-   -   CAN Bus Interpretation (https://xoutpost.com/bmw-sav-forums/x5-e53-forum/113668-can-bus-interpretation.html)

gpeterson 09-11-2021 09:18 PM

Quote:

Originally Posted by lkv0315 (Post 1209508)
So the RS458 board I talked about first will be okay?

Yes. That board does RS485 (which is of no use here) and CAN.

Quote:

Originally Posted by lkv0315 (Post 1209508)
I’m looking to retrieve coolant temp (as a value), oil temp, mpg, AFR and throttle pos

From the bimmerforums link I posted:

ARBID: 0x329 (DME2)
-B0
-B1 is Temp [Temp in C = .75 * hex2dec(byte01) - 48.373]
-B2
-B3 (bit0 == LSb) bit 7 Cruise 1/0 bit 6 Cruise - bit 5 Cruise + bit 6&5 Cruise Resume
-B4
-B5 Throttle position (00-FE).
-B6 kickdown switch depressed is value (4) Brake pedal depressed is value (1).
-B7

ARBID: 0x545 (DME4),
combinations work to get multiple lights
-B0 Check engine light (binary 10), Cruise light (binary 1000), EML (binary 10000), Check gas cap 2002+ cars (hex 40).
-B1 Fuel consumption LSB
-B2 Fuel consumption MSB. Values just cycle from 0 to FFFF then start over at zero. Fuel consumiption is the rate of change.
-B3 Overheat light (binary 1000, Hex 08), oil level 2002+ cars, (binary 0010, hex 02), On M3's 0x10 7K and Up RPM lights, 0x20 6.5K and up RPM lights, 0x40 5.5K and up RPM lights.
-B4 Oil Temp [Temp in C = hex2dec(byte04) - 48.373]
-B5 Charge light, 2002+ cars (Binary 0001)
-B6
-B7

ARBID: 0x153 (ASC1)
-B0
-B1 Speed LSB
-B2 Speed MSB [Signal startbit: 12, Bit length: 12, 0x0008 = 1 km/hr]
-B3
-B4
-B5
-B6
-B7

You are not going to get MPG. MPG is calculated by injector pulse width (which I can't seem to find, will look) and speed.

Your car is a 2005 (V8 or L6?) and I'm not sure if it has wideband O2 sensors that would provide a real AFR value. Narrowband sensors do not read AFR, they read rich or lean. Even if it does have wideband AFR is probably not broadcast on the CAN bus because there is no need for other modules to know. If it does have wideband sensors you would probably need to use a K-line transceiver to poll for values from the DME (as opposed to listening for a CAN broadcast).

gpeterson 09-11-2021 09:39 PM

I came across this - https://www.ms4x.net/index.php?title...s_MS43_CAN_Bus. All should be accurate if your car has an L6 and is still likely to be accurate for the V8.

No info on decoding the injector pulse width from the two bytes, but it says:

DME4 0x545
Byte 1 - FCO[LSB]
Byte 2 - FCO[MSB]
Fuel Consumption

If you do happen to have a V8 it would be the N62 since yours is a 2005. That motor does have wideband O2 sensors.

lkv0315 09-12-2021 03:07 AM

Quote:

Originally Posted by gpeterson (Post 1209511)
I came across this - https://www.ms4x.net/index.php?title...s_MS43_CAN_Bus. All should be accurate if your car has an L6 and is still likely to be accurate for the V8.



No info on decoding the injector pulse width from the two bytes, but it says:



DME4 0x545

Byte 1 - FCO[LSB]

Byte 2 - FCO[MSB]

Fuel Consumption



If you do happen to have a V8 it would be the N62 since yours is a 2005. That motor does have wideband O2 sensors.



Holy cow! Thanks for all this info? Where are you even finding all of it!
I do have an M54 so the I6 info is correct. I will keep this all for later, and when I make an official write up about all of this, I will be 100% certain to credit you with the findings, since I’m sure that this was not easy to find. I’m not sure if I mentioned it before, but I would like to have the RPM as well, for a “side project” that is going to be fused to this project after I have ironed out all the fine details.


Sent from my iPhone using Xoutpost.com

lkv0315 09-13-2021 01:24 AM

Quote:

Originally Posted by gpeterson (Post 1209511)
I came across this - https://www.ms4x.net/index.php?title...s_MS43_CAN_Bus. All should be accurate if your car has an L6 and is still likely to be accurate for the V8.

No info on decoding the injector pulse width from the two bytes, but it says:

DME4 0x545
Byte 1 - FCO[LSB]
Byte 2 - FCO[MSB]
Fuel Consumption

If you do happen to have a V8 it would be the N62 since yours is a 2005. That motor does have wideband O2 sensors.

Also as an extension of what we talked about, do you know how the RPM wire works? Does it send a pulse from the coil packs like I've read or does it send it as a voltage range based on rpm from 0-redline?

gpeterson 09-13-2021 09:58 AM

Quote:

Originally Posted by lkv0315 (Post 1209547)
Also as an extension of what we talked about, do you know how the RPM wire works? Does it send a pulse from the coil packs like I've read or does it send it as a voltage range based on rpm from 0-redline?

You can get RPM from CAN, it is in the bimmerforums link I posted:

ARBID: 0x316 (DME1)
-B0
-B1
-B2 RPM LSB
-B3 RPM MSB [RPM=(hex2dec("byte3"&"byte2"))/6.4]
-B4
-B5
-B6
-B7

Thaniel 09-14-2021 05:11 PM

Quote:

Originally Posted by gpeterson (Post 1209510)
From the bimmerforums link I posted:


This one?

https://www.bimmerforums.com/forum/s...an-bus-project

That's a good thread....

gpeterson 09-14-2021 05:12 PM

Quote:

Originally Posted by Thaniel (Post 1209625)
That's a good thread....

Says it creator. I'd agree. Thanks for contributing so much.

Thaniel 09-14-2021 05:17 PM

To the question of fuel consumption:

Quote:

Originally Posted by gpeterson (Post 1209510)


From the bimmerforums link I posted:

ARBID: 0x545 (DME4),
combinations work to get multiple lights
-B0 Check engine light (binary 10), Cruise light (binary 1000), EML (binary 10000), Check gas cap 2002+ cars (hex 40).

-B1 Fuel consumption LSB
-B2 Fuel consumption MSB. Values just cycle from 0 to FFFF then start over at zero. Fuel consumiption is the rate of change.

-B3 Overheat light (binary 1000, Hex 08), oil level 2002+ cars, (binary 0010, hex 02), On M3's 0x10 7K and Up RPM lights, 0x20 6.5K and up RPM lights, 0x40 5.5K and up RPM lights.
-B4 Oil Temp [Temp in C = hex2dec(byte04) - 48.373]
-B5 Charge light, 2002+ cars (Binary 0001)
-B6
-B7


lkv0315 09-14-2021 05:20 PM

Quote:

Originally Posted by Thaniel (Post 1209625)

Thanks for this! I will give it a read!

lkv0315 09-15-2021 12:31 PM

Quote:

Originally Posted by gpeterson (Post 1209558)
You can get RPM from CAN, it is in the bimmerforums link I posted:



ARBID: 0x316 (DME1)

-B0

-B1

-B2 RPM LSB

-B3 RPM MSB [RPM=(hex2dec("byte3"&"byte2"))/6.4]

-B4

-B5

-B6

-B7



I still can’t seem to read any data from the car. I tapped directly into the yellow black/brown pair of wires on one of the connectors behind the glovebox, and the pi seems to understand it’s connected to some kind of can bus interface, but it is not receiving any messages. Does this have to do with the rate at which the vehicle transmits them, or am I just doing something wrong?


Sent from my iPhone using Xoutpost.com


All times are GMT -4. The time now is 12:24 PM.

vBulletin, Copyright 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.0
© 2017 Xoutpost.com. All rights reserved.