CAN BUS issue --DRIVER AGX Xavier

Please provide the following info (check/uncheck the boxes after creating this topic):
Software Version
DRIVE OS Linux 5.2.6
DRIVE OS Linux 5.2.6 and DriveWorks 4.0
DRIVE OS Linux 5.2.0
DRIVE OS Linux 5.2.0 and DriveWorks 3.5
[*] NVIDIA DRIVE™ Software 10.0 (Linux)
NVIDIA DRIVE™ Software 9.0 (Linux)
other DRIVE OS version
other

Target Operating System
[*] Linux
QNX
other

Hardware Platform
[*] NVIDIA DRIVE™ AGX Xavier DevKit (E3550)
NVIDIA DRIVE™ AGX Pegasus DevKit (E3550)
other

SDK Manager Version
1.7.1.8928
[*] other -->sdkmanager_1.5.0-7774_amd64.deb

Host Machine Version
[*] native Ubuntu 18.04
other

Hello,
we tried to run the sample:sample_canbus_logger (command is ./sample_canbus_logger --driver=can.socket --params=device=can1)and tried to capture the data via CANoe in PC.
the hardware connection is: connect vector VN1630 to Can6&4 connector directly. CAN interface is can.socket.

we got errors below:

nvidia@tegra-ubuntu:~/test/nvidiaTest$ sudo ip link set can1 down
nvidia@tegra-ubuntu:~/test/nvidiaTest$ sudo ip link set can1 typi can bitrate 500000
nvidia@tegra-ubuntu:~/test/nvidiaTest$ sudo ip link set can1 up
nvidia@tegra-ubuntu:~/test/nvidiaTest$ ./sample_canbus_logger --driver=can.socket --params=device=can1 --send_i_understand_implications=1000
Program Arguments:
–driver=can.socket
–filter=000:000
–hwtime=1
–offscreen=0
–params=device=can1
–profiling=1
–send_i_understand_implications=1000
–send_id=6FF
–send_size=8

[21-09-2019 08:04:06] Platform: Detected DDPX - Tegra A
[21-09-2019 08:04:06] TimeSource: monotonic epoch time offset is 1569027511551191
[21-09-2019 08:04:06] PTP Time is available from NVPPS Driver
[21-09-2019 08:04:07] Platform: number of GPU devices detected 1
[21-09-2019 08:04:07] Platform: currently selected GPU device integrated ID 0
[21-09-2019 08:04:07] SDK: Resources mounted from /usr/local/driveworks-2.2/data/
[21-09-2019 08:04:07] SDK: Create NvMediaDevice
[21-09-2019 08:04:07] egl::Display: found 1 EGL devices
[21-09-2019 08:04:07] egl::Display: use drm device: drm-nvdc
[21-09-2019 08:04:07] TimeSource: monotonic epoch time offset is 1569027511551191
[21-09-2019 08:04:07] PTP Time is available from NVPPS Driver
[21-09-2019 08:04:07] Initialize DriveWorks SDK v2.2.3136
[21-09-2019 08:04:07] Release build with GNU 7.3.1 from heads/buildbrain-branch-0-gca7b4b26e65 against Drive PDK v5.1.6.1
[21-09-2019 08:04:07] SensorFactory::createSensor() → can.socket, device=can1
[21-09-2019 08:04:07] CANSocket: use SW based timestamps for can1
[21-09-2019 08:04:07] CANSocket: started can1
[21-09-2019 08:04:15] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:15] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:15] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:15] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:15] CANSocket: was not able to send a frame. Message lost.
[21-09-2019 08:04:16] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:16] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:16] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:16] CANSocket: sending data to can1 failed, OS buffers are full. Try to slow down sending.
[21-09-2019 08:04:16] CANSocket: was not able to send a frame. Message lost.

is there anything that i didn’t notice? or should i change the hardware connection?
looking forward to your reply, thanks.

Hi, @HEric
I have no experience with vector VN1630.
Please refer to How to Test CAN and try if can-utils works or not.

Hi VickNV,
Thank you very much for your reply.
and i got very strange phenomenon, we can see that CAN1 is always receiving the data and there is no other application running.
after i set up the loopback and run the command(candump can1), can1 will only keep on receiving the data with ID 113/115 (no matter whether i run the command( cansend can0 220#50) or not):

nvidia@tegra-ubuntu:~$ candump can1
can1 113 [4] 00 00 00 00
can1 115 [1] 00
can1 113 [4] 00 00 00 00
can1 115 [1] 00
can1 113 [4] 00 00 00 00
can1 115 [1] 00
can1 113 [4] 00 00 00 00
can1 115 [1] 00
can1 113 [4] 00 00 00 00
can1 115 [1] 00
can1 113 [4] 00 00 00 00
can1 115 [1] 00
can1 113 [4] 00 00 00 00
can1 115 [1] 00
can1 113 [4] 00 00 00 00
can1 115 [1] 00
nvidia@tegra-ubuntu:~$ ifconfig
can0: flags=193<UP,RUNNING,NOARP> mtu 16
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 10 (UNSPEC)
RX packets 2116140 bytes 16929120 (16.9 MB)
RX errors 2116138 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 108

can1: flags=193<UP,RUNNING,NOARP> mtu 16
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 10 (UNSPEC)
RX packets 459 bytes 1146 (1.1 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 109

it seems that can1 interface is always receiving data with ID 113/115 after power on the nvidia board.

I haven’t heard of such an issue before. Do you see the issue even without the loopback connection? You may need to think about how to narrow down this on your side.

Hi VickNV,
yes, i can see the issue the first time i power-on the NVIDIA board without running any application and without the lookback connection.
after i login in the board and only run the command “candump can1”, then we will see that can1 is keeping on receiving these data.

Please share the reproducing steps after powering on the system.
Have you tried on DRIVE OS 5.2.6? Have you tried after reflashing DRIVE Software 10?