SENSING GMSL Camera#
SENSING GMSL2 cameras connect to a Jetson through the SG8A carrier and stream
through NVIDIA SIPL. Choose either setup below to preview both cameras with
nvsipl_camera, the vendor reference application. Run commands from a
terminal on the Jetson desktop, at the Isaac Capture repository root. The
preview appears on the Jetson monitor.
Prerequisites#
This setup targets a Jetson AGX Orin 64 GB with JetPack 7.2.1 / L4T R39.2.1,
a SENSING SG8A-AGON-G2Y-A1 carrier, and two Astra SHW5G cameras on
CN1 CAM2/CAM3. The SHW5G_2 configuration captures 2560×1984 at 60 fps
per sensor through the ISP. Other camera populations are not tested.
Host setup needs network access, Git, and sudo. Container setup additionally needs Docker with the NVIDIA container runtime configured on the Jetson.
Warning
SIPL has exclusive access to the cameras. Stop any other camera client before running the check.
Host: setup and preview#
1. Install the host drivers.
src/plugins/sensing/scripts/setup.sh
Accept the installation and group-membership prompts. On first install, setup opens Jetson-IO: choose Configure Jetson AGX CSI Connector → Configure for compatible hardware → Jetson Sensing SG8A-AGON-G2Y-A1 SIPL GMSL2x8, then save and reboot. Return to the repository root after reboot. If only group membership changed, log out and back in before continuing.
2. Preview both cameras.
nvsipl_camera -t src/plugins/sensing/configs/shw5g.json -c SHW5G_2 \
-m "0x0000 0x1100" --enable-camera-hal -s -Z --egl-display
A live camera grid opens on the monitor. The terminal also reports FPS for
both sensors, approximately 60 fps each. Enter q in the terminal to stop.
Container: setup and preview#
Complete host setup above first, including the overlay reboot and group activation. Both setup scripts run on the host.
1. Build and enter the camera container.
src/plugins/sensing/docker/setup_container.sh
This builds the runtime image and opens a shell at the repository root inside it. Host camera tools, drivers, ISP tuning, device nodes, and the SENSING source directory are mounted automatically. The desktop X11 socket and authorization file are passed through for the preview. No SDK downloads or manual Docker flags are needed. The container runs as root with privileged device access; the SENSING source and vendor files are mounted read-only.
2. Run the same preview command inside that shell.
nvsipl_camera -t src/plugins/sensing/configs/shw5g.json -c SHW5G_2 \
-m "0x0000 0x1100" --enable-camera-hal -s -Z --egl-display
The live camera grid appears on the same monitor as the host preview. Enter
q to stop, then type exit to leave the container;
it is removed when you exit. Subsequent launches can use
setup_container.sh --no-build to reuse the image.
Setup details#
Host setup fetches the SENSING driver package and
installs the SHW5G userspace drivers, camera HAL, ISP tuning, device-tree
overlay, and reference tools. It compares file contents before installing
updates and records the installed vendor commit in
/var/lib/sensing/installed.json. A userspace-only update needs no reboot.
There are no sensor kernel modules to load or per-boot setup commands.
Use setup.sh --pkg DIR for a local vendor package, --no-fetch to use
the cached package, or --yes to accept prompts unattended. Setup returns
a nonzero status if installation fails or a reboot/new login is still needed.
The scripts’ --help output lists their options.
The tracked configs/shw5g.json supplies the two-camera configuration.
The camera command uses --enable-camera-hal for this carrier, -Z to
skip unsupported sensor authentication, -s to report FPS, and
--egl-display to open the live preview. Add
-r 10 for a ten-second run, or omit --egl-display for a terminal-only
capture check.
For custom images, docker/Dockerfile.example shows the runtime dependencies.
setup_container.sh --print-args prints shell-quoted Docker flags;
--json emits the same flags as a JSON array. These runtime helpers do not
install the SDK headers needed to compile SIPL applications.
Troubleshooting#
Run scripts/verify.sh on the side that fails for a read-only runtime report:
src/plugins/sensing/scripts/verify.sh
Symptom |
Action |
|---|---|
|
Check device permissions, the selected overlay, and vendor mounts with
|
|
Complete host setup. It installs the tool in |
|
Run the command from the repository root. |
|
Rerun host setup to install ISP tuning, then recreate the container. |
No frames, or no modules after applying link masks |
Check the cameras are on CN1 CAM2/CAM3 and use the masks shown above. Stop other SIPL clients before retrying. |
|
Check that |
Missing |
Over SSH, set |
Low FPS or dropped frames |
Check the Jetson power mode. Maximum performance can be selected with
|