Hello, everyone.
I am using Jetson AGX Xavier for CAN communication.
Simulink’s CAN block is used for simulation,
Through the CAN channel of Speedgoat’s IO610, we are sending can data of extended frame to bus, and when we checked through CAN analyzer, we were able to confirm that the data is sent to bus normally.
However, Jetson AGX Xavier does not receive this data.
$ sudo busybox devmem 0x0C303000 32 0x0000C400
$ sudo busybox devmem 0x0C303008 32 0x0000C458
$ sudo busybox devmem 0x0C303010 32 0x0000C400
$ sudo busybox devmem 0x0C303018 32 0x0000C458
$ sudo modprobe can
$ sudo modprobe can-raw
$ sudo modprobe mttcan
$ sudo ip link set can0 down
$ sudo ip link set can1 down
$ sudo ip link set can0 type can bitrate 500000 berr-reporting on
$ sudo ip link set can1 type can bitrate 500000 berr-reporting on
$ sudo ip link set can0 up
$ sudo ip link set can1 up
$ echo “CAN Networking Enabled”
$ exit 0
It’s set as above,
It worked well in loopback test (can0 to can0 & can1 to can1).
And when we send and receive can0 to can1 & can1 to can0 and check with cansend and candump, the result was confirmed correctly in the terminal.
However, the data sent by AGX Xavier appears as an error in CAN analyzer.
I want to know the cause of this situation and how to solve it.
I’d appreciate your help.
Sincerely,
Yujin
There is an update.
When the canh and canl of the transceiver connected to the Xavier are separated from the bus node, and the cansend is performed in the Xavier, the waveform comes out like the picture below.
(Channel 1 in yellow line is canh, channel 2 in blue line is canl, and the red line is canh-canl by math.)
By the way, when I connect to the bus node where Speedgoat and CAN Analyzer are connected, and perform cansend in Xavier, the waveform comes out dirty as shown in the picture below.
When the canh and canl of the transceiver connected to the Xavier are separated from the bus node and only the CAN analyzer is connected to it, the waveform is as follows, but when confirmed by the analyzer, it is received as an error.
I thought it might be a physical problem, so the twist and shielding effect were applied to the canh and canl lines. Then, the waveform came out well, but the difference between canh and canl was less than 2V (when the 120ohm resistances were removed, it came out close to 2V). It still appears as an error in the analyzer.