To make use of CAN communications, CAN transceiver has to be interfaced with each of the controllers.
CAN transceiver is the interface between a controller area network (CAN) protocol controller and the physical bus.
To interface transceiver with CAN controller please follow TX2 TRM (CAN topic).
For a quick setup please check the pin descriptions and the attachment.
With our local setup, Transceiver - TI SN65HVD230 is being used.
[Ans] You will need 2 transceivers for a Jetson TX2 board. One Transceiver for each of the CAN controllers.
canH on transceiver-1 to be connected directly with canH on transceiver-2
canL on transceiver-1 to be connected directly with canL on transceiver-2
TX2 CAN0, CAN1 Do I need two transceivers to communicate internally??
[Ans] Yes. To form CAN node, Transceiver is needed on TX2.
TX2 has pre-support for CAN controllers but to present the controllers as CAN nodes in the network, you need to interface each controller with a transceiver.
Hence both the CAN controllers in TX2 will need to have separate transceivers.
Also, please check the previous attachment to have a good understanding on interfacing of transceivers.
Hope this answers your queries. If you still have any problem with can communication please revert back.
Can you please check if the below steps to set ip link (with suitable arguments) are properly done ?
ip link set can0 type can bitrate 500000 dbitrate 2000000 berr-reporting on fd on
ip link set up can0
ip link set can1 type can bitrate 500000 dbitrate 2000000 berr-reporting on fd on
ip link set up can1