No announcement yet.

Some help needed to put CAN Bus work

  • Filter
  • Time
  • Show
Clear All
new posts

  • Some help needed to put CAN Bus work

    Dear all ,

    I am new to this forum and also to CAN Bus. I will be glad if I could receive some help from you. I will try to give as much relevant information as possible so you can help me out if possible.

    I have experience with ADI Blackfin processors and right now I am trying to use the CAN module on it to interface it to my Kia Rio5 2010. The Blackfin development board has the NXP TJA1041 transceiver on it.

    Besides connecting the CANH and CANL pins of the obd connector and the tja1041 transceiver together , I also connected the ground of the transceiver to the ground of the car. By this way there is only one reference in the total system.

    I have programmed the blackfin processor for 500 kbps CAN Bus speed ; Further I took into account all the other relevant parameters like TSEG1 , TSEG2 , SJW , BRP etc. I tested the output of the transceiver with an oscillscope and everything is fine I believe. Further I tested the code in debug mode , and I can send and receive data in the mailboxes.

    With an oscilloscope I also can see CAN Bus activity on the OBD connector. The ground of the probe is on the CANL pin and the hot lead is on the CANH pin . I measured a bit time of 2 us wich is equal to 500 kbps speed on the car.

    My problem is as follow : when I transmit the data to the ECU of the vehicle, the ECU doesn't acknowledge my query so I get the ack errors. When the oscilloscope is connected you see that the transceiver keep retransmitting but doesn't hear anything back from the ECU.

    I use a ID of 7DF for transmitting (TX), and the 7E8 for receiving (RX). This does not work . Instead of this , I tried 7E0 for TX and 7E8 for RX , but nothing. I also tried some other pairs in the range of 7E0--7E7 for TX , 7E8 -- 7EF for RX, but also nothing. The request data I sent is as follow : 7DF 02 01 0C .

    I think the the remote frame transmission bit must be 0 ; so I don't use the remote frames. Could this be the problem ???

    Can someone give me some hints or directions in order the let the ECU of my vehicle respond to my requests ??

    If you need a additional information , I will provide this.

    Kind regards,


  • #2
    ECU does not privede ack ? Did you mean "ACK" = ack bit in can packet ?
    I am not expert in CAN, but what I know, every device on the CAN bus provide ACK for every packets. Even if it was not packet for this ecu. So if you will send on right speed, timequanta, ... you should get ACK always (when there is even one another device on the bus).