Thread: E9x KCAN 101
View Single Post
      07-09-2009, 09:27 AM   #62
HighVoltage
.
HighVoltage's Avatar
United_States
32
Rep
867
Posts

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

iTrader: (0)

Quote:
Originally Posted by a_colonia View Post
Hi,
searching the Net I found page one of this thread which looks very important to me.
In fact, I would like to find CAN Code to control the rear side windows from my own CAN-Module.
Until I know how it works and what to do I use my notebook instead.
Currently it’s connected to CAN 11bit 125 Kbaud and can scan all relevant messages.
As I’m work on these just few weeks I have some questions:
1) have I to take car of this different buses
Switch -> LINBUS -> FRM -> KCAN -> JBE -> KCAN -> Window motor
If I’m connected to possibly one of these I think I can send the right command to control the window motor.

I have found several messages like window position, moving or not etc.
But I need some help to understand (how to find out) what is the initial command

I.e. let’s take the cabin lights from HighVoltage at the beginning of this threat.
Code:
CANID LEN DATA Notes:
1E3 ___ 2 ___ F1 FF ____ Command, wait for response
21A ___ 3 ___ 00 10 F7__ Response
1E3 ___ 2 ___ F0 FF ____ Command
2) HighVoltage, how do you found/ decided 1E3 is the command ID and not any message
3) Is there any relationship between 1E3 and 21A or how you found that?
4) Do I understand well, if I send 1E3 . . . to the bus cabin light will go on/off?
5) I have a problem to understand:
Request ID Response ID (from diff. examples)
745 _____ 74D ___ (diff. 8)
7E1 _____ 7E8 ___ (diff. 7)
7E0 _____ 7E8 ___ (diff. 8)
7EE _____ 7?? ___ as far as it is possible
1E3 _____ 21A
It’s enough for today.

(Questions are just in general, I’m not really talking about BMW)
1) No you can just focus on the KCAN bus. I mention the relationship because as we try to determine the origin of the messages its important to understand the flow of communications.

2) I explain how I determined what each CANID corresponds to in post #4. In short, I built a function in my program that captured all the "idle" traffic on the bus. Meaning I would get in the car, start my program, and let the car talk a few seconds without doing me doing anything (just sit there). I would then tell my program to filter out all of those messages it just saw. Then I would push a button in the car and my program would capture the new messages.

3) The relationship is defined in the "Notes;" The 0x1E3 CANID is essentially coming from the button when you press it/release it. The JBE (Master) responds to that message with the CANID of 0x21A. I havent yet determined what the data (00 10 F7) from the JBE means though.

4) If you send 1E3 F0 FF then the cabin lights will go off. The sequence for turning the lights on and keeping them on, is more complicated and explained in post #1.

5) I dont understand what you are asking in this question. Im sure it is just a simple language barrier/translation problem.
EDIT: Are trying to find some relationship between the CANID in a request and corresponding response? There doesnt need to be any although there typically is depending on the protocol. I havent yet determined the meaning of each bit in the CANID. In most protocols, some of those bits are reserved for message types (groupings, like polling, change-of-state, etc) and others as a unique identifier on the bus to differentiate one node from another.
__________________
Not only will it kill you it will hurt the whole time while you're dying.

http://www.stevesnovasite.com/
http://www.jalopyjournal.com/forum/
http://www.garagejournal.com/

Last edited by HighVoltage; 07-09-2009 at 05:02 PM..
Appreciate 0