Sending CAN Data
  • 0
  • Hi All,

    I seem to be having some trouble sending CAN data. Can someone please help?

    I have successfully tapped into the K-CAN on my e90 BMW. I am able to see data flying around no problem. I can even filter data with no issues. However when I go to send a CAN packet the I never see a response, in fact I no longer see any data. It is like the CBT is still waiting for me to send the rest of the CAN packet to it. BTW I am using coolterm to do this.

    <b>Here are my steps:</b>

    1. Turn on filtered logging "030101021A01E3" //This is the center console light (1E3) and its control module (21A)
      *Filtered data looks fine. I can see the button pushes and the responses with no issues.
    2. Attempt to turn on the light using this command "02011E3F1FF0000000000008"
      *Now I see no response or any other data for that matter.

    <b>So my questions are:</b>
    A. Is my serial packet structured incorrectly?
    B. If it is just a bad packet structure, how to recover from this without completely power cycling the CBT? Is there not some sort of timeouts build into the code?
    C. Does the CBT go back into logging mode as soon as the CAN packet is sent so that it can catch the response?

  • 0
  • All,

    Never mind I found out what I was doing wrong. The message ID needs to be full 16bit i.e. 01E3 not 1E3. So the serial packet would be "020101E3F1FF0000000000008", Looks like I am getting the response right after I send the packet, so I guess that also answers question "C"

    Question B, still unanswered. Anyone know the answer?

    WooHoo!! I can now turn on and off my cabin light. Might seem like a small win, but I'll take it :)

  • 0
  • Congrats, I know what you mean :-)

  • 0
  • administrators

    Question B, I know some commands will tend to hang if you don't supply what the command is expecting. I'm working on a more elegant way to handle this

  • 0
  • TheDigital,
    Thanks for posting your solutions, it's such a letdown when I find a thread with my exact problem but no fix from the OP(or others).

  • 0
  • Hmm, I'm not getting.
    How you referred from this: 030101021A01E3 to this: 020101E3F1FF0000000000008 ?
    Can you write me what you command has and how to create it?
    You are using "send command" from CBTriple app or something else?

  • 0
  • They are completely different commands. 03 is for filtering and 02 is for writing.

    Reread the thread.

  • 7
    Posts
  • 2111
    Views
  • Log in to reply