GMSL Camera AR0820 I2C time out problem

Hello all,

my setup in general is following:
2x GMSL2 Cameras from LeopardImaging with AR0820 Sensor
1x LI GMSL BOX (Jetson Xavier NX Dev Board)

I’m trying to get the cameras working for capturing but since the first try I am not able to use the cameras anymore. I’ve set up everything accordingly and with nvgstcapture-1.0 i got the display of the video0 device on the screen. After ending the pipeline with CTRL+C the cameras were no longer responsive. Noticeable here is that the cameras are no longer findable in the /dev directory after any reboot (sudo reboot). The cameras are only visible again after a hard reboot by switching the Jetson off and on. However, if you want to use them for capture or streaming, APIs like Argus or Gstreamer fail to use the cameras. Reflashing the whole OS and image also doesn’t lead to running cameras. The error log of the nvgstcapture command is as follows:

GST_ARGUS: Running with following settings:
Camera index = 0
Camera mode = 0
Output Stream W = 3840 H = 2160
seconds to Run = 0
Frame Rate = 29.999999
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
nvbuf_utils: dmabuf_fd -1 mapped entry NOT found
nvbuf_utils: Can not get HW buffer from FD… Exiting…
CONSUMER: Done Success

(nvgstcapture-1.0:7617): GStreamer-CRITICAL **: 15:55:38.086: gst_mini_object_set_qdata: assertion ‘object != NULL’ failed

Use with gst-launch is also not possible because the I2C commands to the cameras also time out as known from the other tries.

Dmesg for I2C errors on nvgstcapture execution:

[ 121.428427] tegra-i2c 3180000.i2c: pio timed out addr: 0x77 tlen:16 rlen:0
[ 121.428593] tegra-i2c 3180000.i2c: — register dump for debugging ----
[ 121.428711] tegra-i2c 3180000.i2c: I2C_CNFG - 0x22c00
[ 121.428804] tegra-i2c 3180000.i2c: I2C_PACKET_TRANSFER_STATUS - 0x10001
[ 121.428922] tegra-i2c 3180000.i2c: I2C_FIFO_CONTROL - 0x0
[ 121.429022] tegra-i2c 3180000.i2c: I2C_FIFO_STATUS - 0x800080
[ 121.429125] tegra-i2c 3180000.i2c: I2C_MST_FIFO_CONTROL - 0x70000
[ 121.429237] tegra-i2c 3180000.i2c: I2C_MST_FIFO_STATUS - 0x7f0000
[ 121.429347] tegra-i2c 3180000.i2c: I2C_MST_PACKET_TRANSFER_CNT - 0x0
[ 121.429464] tegra-i2c 3180000.i2c: I2C_INT_MASK - 0x7c
[ 121.429587] tegra-i2c 3180000.i2c: I2C_INT_STATUS - 0x2
[ 121.429681] tegra-i2c 3180000.i2c: i2c transfer timed out addr: 0x77
[ 131.668484] tegra-i2c 3180000.i2c: pio timed out addr: 0x77 tlen:16 rlen:0
[ 131.668655] tegra-i2c 3180000.i2c: — register dump for debugging ----
[ 131.668773] tegra-i2c 3180000.i2c: I2C_CNFG - 0x22c00
[ 131.668900] tegra-i2c 3180000.i2c: I2C_PACKET_TRANSFER_STATUS - 0x10001
[ 131.669024] tegra-i2c 3180000.i2c: I2C_FIFO_CONTROL - 0x0
[ 131.669125] tegra-i2c 3180000.i2c: I2C_FIFO_STATUS - 0x800080
[ 131.669231] tegra-i2c 3180000.i2c: I2C_MST_FIFO_CONTROL - 0x70000
[ 131.669340] tegra-i2c 3180000.i2c: I2C_MST_FIFO_STATUS - 0x7f0000
[ 131.669484] tegra-i2c 3180000.i2c: I2C_MST_PACKET_TRANSFER_CNT - 0x0
[ 131.669606] tegra-i2c 3180000.i2c: I2C_INT_MASK - 0x7c
[ 131.669703] tegra-i2c 3180000.i2c: I2C_INT_STATUS - 0x2
[ 131.669801] tegra-i2c 3180000.i2c: i2c transfer timed out addr: 0x77
[ 131.670110] ar0820 30-001b: ar0820_write_reg:i2c write failed, 0x3366 = 0
[ 141.908515] tegra-i2c 3180000.i2c: pio timed out addr: 0x77 tlen:16 rlen:0
[ 141.908677] tegra-i2c 3180000.i2c: — register dump for debugging ----
[ 141.908889] tegra-i2c 3180000.i2c: I2C_CNFG - 0x22c00
[ 141.908986] tegra-i2c 3180000.i2c: I2C_PACKET_TRANSFER_STATUS - 0x10005
[ 141.909301] tegra-i2c 3180000.i2c: I2C_FIFO_CONTROL - 0x0
[ 141.909486] tegra-i2c 3180000.i2c: I2C_FIFO_STATUS - 0x800080
[ 141.909648] tegra-i2c 3180000.i2c: I2C_MST_FIFO_CONTROL - 0x70002
[ 141.909797] tegra-i2c 3180000.i2c: I2C_MST_FIFO_STATUS - 0x800000
[ 141.909921] tegra-i2c 3180000.i2c: I2C_MST_PACKET_TRANSFER_CNT - 0x0
[ 141.910033] tegra-i2c 3180000.i2c: I2C_INT_MASK - 0x7c
[ 141.910158] tegra-i2c 3180000.i2c: I2C_INT_STATUS - 0x2
[ 141.910349] tegra-i2c 3180000.i2c: i2c transfer timed out addr: 0x77
[ 152.148554] tegra-i2c 3180000.i2c: pio timed out addr: 0x77 tlen:16 rlen:0
[ 152.148729] tegra-i2c 3180000.i2c: — register dump for debugging ----
[ 152.148859] tegra-i2c 3180000.i2c: I2C_CNFG - 0x22c00
[ 152.148956] tegra-i2c 3180000.i2c: I2C_PACKET_TRANSFER_STATUS - 0x10001
[ 152.149078] tegra-i2c 3180000.i2c: I2C_FIFO_CONTROL - 0x0
[ 152.149177] tegra-i2c 3180000.i2c: I2C_FIFO_STATUS - 0x800080
[ 152.149280] tegra-i2c 3180000.i2c: I2C_MST_FIFO_CONTROL - 0x70000
[ 152.149392] tegra-i2c 3180000.i2c: I2C_MST_FIFO_STATUS - 0x7f0000
[ 152.149502] tegra-i2c 3180000.i2c: I2C_MST_PACKET_TRANSFER_CNT - 0x0
[ 152.149620] tegra-i2c 3180000.i2c: I2C_INT_MASK - 0x7c
[ 152.149715] tegra-i2c 3180000.i2c: I2C_INT_STATUS - 0x2
[ 152.149812] tegra-i2c 3180000.i2c: i2c transfer timed out addr: 0x77
[ 152.150205] ar0820 30-001b: ar0820_write_reg:i2c write failed, 0x301a = 5d

It’s really very strange that it worked initially but since then it doesn’t work anymore. The functionality of the cameras is verified by another product, because there the cameras run perfectly.

If more information is needed, just let me know.

Any help on this problem or debug suggestions are highly appreciated.


Best Regards

Hi SB42

Are you using our LI-XNX-BOX-GMSL2 to run the AR0820 cameras? Which driver are you using?

Hello @SimonZhu,

I’m using the LI-XNX-BOX-GMSL2 in connection with the AR0820-GMSL2_R32.5.1_NX_Six_20210514_Driver.

Hi SB42
Thanks. Please make sure the two cameras are connected well to XNX-BOX-GMSL2. Normally, you can hear “click” sound after the cable is fully inserted.
The two cameras needs to be connected to NX box in pairs (A/B, C/D or E/F).
Please try reconnecting the cameras and let us know if the issue is still there.

Hi @SimonZhu,

I made sure that the two cameras are connected well and also used them in pairs on A and B. Trying a different pair also does not lead to a solution.
Any further help is highly appreciated.

Hi SB42

Thanks for the information. The driver has been verified without issues. I think you may need to send the camera kit (camera + XNX-BOX-GMSL2) back to us for investigation. You can contact to get the RMA#.
Sorry for any inconvenience this may cause to you.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.