This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMDSIDK574: CAN bus: Purpose of the 33 Ohm resistance between DCAN1_{T, R}X and the transceiver

Part Number: TMDSIDK574

Hi all,

My platform is TMDSIDK574 featuring AM5748. I found that there is a 33 Ohm resistance between DCAN1_{T, R}X and the transceiver, does anyone know what's the purpose of this resistance?

AFAIK, other boards such as BeagleBone, do not have it. Also, the application suggestion of the on-board transceiver doesn't have this resistance:

I'm asking this because, when I'm trying to communicate with another CAN node by using the on-board CAN transceiver, I found that the OS says it detects no carrier ("NO-CARRIER", output from Linux iproute2). Which makes me wondering whether the CAN ports, DCAN1_TX and DCAN1_RX, have connected to the transceiver properly. I've also tried using external CAN transceiver (connected to CAN1_{T, R}XDF), which has the same result.

Assume that I have configured the devicetree (IIUC, "dcan1") and the bitrate well. And the wiring has no problem. What else could be wrong?

PS. The tool, cansend, after sending message, yields following kernel message:

[ 5904.124292] c_can_platform 4ae3c000.can can0: bus-off

which comes with what mentioned above, i.e. iproute2 says the CAN interface has "NO-CARRIER".

Thanks!

  • The series resistors are likely used for helping with any possible signal integrity issues.  A series resistor is often placed near the driver/source to help match the output impedance of the driver with the PCB to minimize any signal integrity issues.  These resistors should not affect basic function, and should only be needed in customer design if PCB traces are relatively long.