Hi. Using J401 carrier with Orin NX 8GB, flashed with jetpack 6.0 as described here: J401 carrier Board Flash JetPack | Seeed Studio Wiki
Trying to use CAN, followed documentation: Controller Area Network (CAN) — Jetson Linux Developer Guide documentation
Running through some issues:
The board can send and receive messages and send with loopback ON, however, when sending to a CAN Bus (loopback OFF), the messages are not delivered, so the buffer gets full quickly (txqueuelen).
We are also validating using an oscilloscope, and what we discovered is that TX is not even getting outside of the board.
The commands we are running is:
$ sudo busybox devmem 0x0c303018 w 0xc458
$ sudo busybox devmem 0x0c303010 w 0xc400
$ sudo modprobe can
$ sudo modprobe can_raw
$ sudo modprobe mttcan
$ sudo ip link set can0 up type can bitrate 500000 sjw 4 restart-ms 1000
Details:
$ sudo ip -d -s link show can0
2: can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/can promiscuity 0 minmtu 0 maxmtu 0
can state ERROR-ACTIVE (berr-counter tx 0 rx 0) restart-ms 1000
bitrate 500000 sample-point 0.870
tq 20 prop-seg 43 phase-seg1 43 phase-seg2 13 sjw 4 brp 1
mttcan: tseg1 2..255 tseg2 0..127 sjw 1..127 brp 1..511 brp_inc 1
mttcan: dtseg1 1..31 dtseg2 0..15 dsjw 1..15 dbrp 1..15 dbrp_inc 1
clock 50000000
re-started bus-errors arbit-lost error-warn error-pass bus-off
1 0 0 1 1 1 numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535
RX: bytes packets errors dropped missed mcast
28797 3914 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0
A transceiver is being used (if it wasn’t, we could not even receive the CAN messages, which are valid)
TLDR: Receiving messages from CAN BUS works, unable to send messages to CAN BUS (cansend) and buffer gets full quickly.
Is this a carrier issue? Jetpack issue? Orin issue? CAN BUS issue?
Looking forwards for an answer.