Thread: E9x KCAN 101
View Single Post
      08-12-2009, 10:27 AM   #68
HighVoltage's Avatar

Drives: 07 E90 335i
Join Date: Aug 2008
Location: .

iTrader: (0)

Originally Posted by Ocker View Post
Anyway, so my questions are:

1) Are SZL button press message definately available on PT-CAN?
2) If so, has anyone got any info on how to find these messages (I am already able to read PT-CAN messages, but no idea how to determine the right IDs for these messages etc.)
3) Has anyone got any info on how to decode engine data messages on the PT-CAN bus?

Thanks in advance!!

1) Its possible, the only reference I have seen that supports that is:

"F-CAN Link
The DSC control module is connected via the F-CAN to the SZL and serves as the gateway
for the SZL, allowing data from the SZL to be distributed to the other control modules."

It should be noted that this was in context of the steering wheel angle and may not be universal. It is also a very round-about way to get to K-CAN since the JBE is already on all 3 buses, so FCAN to KCAN should be possible without having to access PT-CAN. I dont know why the DSC would have to get involved (FCAN -> PT-CAN) but you never know with BMW.

This would seem to support that suggestion:

Signal Flow
The acquired and calculated data of the SZL are mainly transferred via the F-CAN to the
corresponding control module.
The information for diagnosis is therefore also transferred via the F-CAN to the DSC. The
DSC establishes the communication interface with the BMW diagnosis system. The SZL
cannot be addressed directly via the BMW diagnosis system.
The DSC must be coded after replacing the steering column switch cluster. The coding
data is then transferred from the DSC to the SZL."

So unless someone has actually caught the button msgs, to me it is unclear.

2) You may not need to know the IDs. If you read a few posts into the beginning of this thread you'll see I was able to isolate some buttons by the following method: I would presume that the buttons are not currently transmitting on the bus. Construct a program to collect all ids and able to filter all those ids on your command. You allow the program to collect ids for a few seconds, then execute the filter. Afterwards, push a button and see if any new ids pop up that correlate to that button press.

BTW, the processor I used is a Freescale part as well. It contains their FlexCan controller.

3) Sorry, I dont. If you find out please post it here.
Not only will it kill you it will hurt the whole time while you're dying.