GMSL Finicky Connectivity with Jetson Nano

Hi there,

Over the past few months, we have run into various issues with a GMSL camera that are connected to our Jetson Orin NX (with Nano devkit). We have a ZED Duo Capture card, and a ZEDX Mini stereocamera connected via Fakra cable.

The camera works well, but somewhat randomly decides to fail. ZED_Explorer -all provides random output, sometimes:

Cam 0

Model : “ZED X Mini”

S/N : 56251554

State : “NOT AVAILABLE”

Path : /dev/i2c-9

ID : 0

Port : 3

Type : “GMSL”

********************

and sometimes:

## Cam 0 ##

Model : “ZED X Mini”

S/N : 56251554

State : “AVAILABLE”

Path : /dev/i2c-9

ID : 0

Port : 3

Type : “GMSL”

********************

I’ve attached a few more diagnostic results to this message. We’ve done the standard debugging - restarting daemons, ensuring we are on the most up to date SDK and driver version, restarting the Jetson, etc.

diagnostic_results.zip (20.0 KB)

What is the best way to make sure these cameras are consistent and reliable? Are there typical best practices to follow to make sure we are handling and working with these cameras well?

Hi @Jumana
This normally happens when an application crashes or is closed without closing the camera.

In this case, the GMSL2 driver keeps the camera busy, and the only way to recover it is by resetting the driver:
sudo service zed_x_daemon restart

If you are writing your application using the ZED SDK check that the Camera object is always correctly destroyed before closing the application… usually, the problem is caused by a “Ctrl+c” signal not correctly handled.

Thank you. Is this issue not usually resolved with restarting the Jetson? i.e. if we have non-graceful shutdown, can the jetson and driver be restarted and our camera issues should be resolved, right?

We are restarting the Jetson and daemon, and are still not able to recover the cameras. We are going to attempt replacing the fakra cables, but want to know what is the recommended set of steps to resolve issues with the cameras especially if we’ve done the restarts.

Yes, the command to reset the driver allows you to solve it without restarting.

OK, let’s check a few things:

  • What’s the length of the flat cables?
  • What voltage are you providing to the capture card?
  • Is the power shared with other devices?