1.system environment is Orin Nano, and the Jetson package version is: ~$
cat /etc/nv_tegra_release
# R36 (release), REVISION: 4.4, GCID: 41062509, BOARD: generic, EABI: aarch64, DATE: Mon Jun 16 16:07:13 UTC 2025 # KERNEL_VARIANT: oot
TARGET_USERSPACE_LIB_DIR=nvidia
TARGET_USERSPACE_LIB_DIR_PATH=usr/lib/aarch64-linux-gnu/nvidia
2. I have adapted two sc1336 mipi csi camera drivers on the system;
2.1 The drivers have been successfully loaded and two device nodes have been generated: uniubi@ubuntu:~$ ls /dev/video*
/dev/video0 /dev/video1
uniubi@ubuntu:~$ v4l2-ctl --list-devices
NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0
vi-output, sc1336 0-0032 (platform:tegra-capture-vi:0):
/dev/video0
vi-output, sc1336 0-0030 (platform:tegra-capture-vi:1):
/dev/video1
uniubi@ubuntu:~$
2.2 The following commands can be used to save the raw images and verify the correctness of the saved raw images with tools.
2.2.1) v4l2-ctl -d /dev/video0 --set-fmt-video=width=1280,height=720,pixelformat=BG10 --stream-mmap --stream-count=20 --stream-to=frame720pVideo0.raw
2.2.2) v4l2-ctl -d /dev/video1 --set-fmt-video=width=1280,height=720,pixelformat=BG10 --stream-mmap --stream-count=20 --stream-to=frame720pVideo1.raw
3. I want to run the sample source code 09_argus_camera_jpeg to verify the function of capturing frames from the camera through argus and encoding them into JPEG.
I made some modifications to 09_argus_camera_jpeg, deleting the createEglRenderer and previewStream related content. However, the log information during runtime is as follows:
3.1 Log information of nvargus-daemon root@ubuntu:/usr/src/jetson_multimedia_api/samples/09_argus_camera_jpeg# sudo systemctl restart nvargus-daemon
sleep 3
root@ubuntu:/usr/src/jetson_multimedia_api/samples/09_argus_camera_jpeg#
root@ubuntu:/usr/src/jetson_multimedia_api/samples/09_argus_camera_jpeg#
root@ubuntu:/usr/src/jetson_multimedia_api/samples/09_argus_camera_jpeg#
root@ubuntu:/usr/src/jetson_multimedia_api/samples/09_argus_camera_jpeg# sudo systemctl status nvargus-daemon --no-pager
● nvargus-daemon.service - Argus daemon
Loaded: loaded (/etc/systemd/system/nvargus-daemon.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2026-01-04 16:46:07 CST; 12s ago
Main PID: 2322 (nvargus-daemon)
Tasks: 1 (limit: 8809)
Memory: 2.1M CPU: 11ms
CGroup: /system.slice/nvargus-daemon.service
└─2322 /usr/sbin/nvargus-daemon
Jan 04 16:46:07 ubuntu systemd[1]: Started Argus daemon.
3.2 Error messages of argus_camera_jpeg root@ubuntu:/usr/src/jetson_multimedia_api/samples/09_argus_camera_jpeg# ./argus_camera_jpeg
Initializing EGL display...
EGL display initialized successfully.
PRODUCER: Argus Version: 0.99.3.3 (multi-process)
PRODUCER: Running in multi-process mode
PRODUCER: Note: nvargus-daemon service must be running for multi-process mode
PRODUCER: Check service status: sudo systemctl status nvargus-daemon
PRODUCER: Start service if needed: sudo systemctl start nvargus-daemon
PRODUCER: No cameras available
PRODUCER: Found 0 camera device(s)
PRODUCER: Diagnostic: Found 2 /dev/video* device(s) in filesystem
PRODUCER:
Error: No cameras available. Please check:
PRODUCER: 1. Camera hardware is connected
PRODUCER: 2. Camera drivers are loaded (check /dev/video*)
PRODUCER: 3. User has permission to access camera devices
PRODUCER: 4. nvargus-daemon service is running and initialized:
PRODUCER: sudo systemctl status nvargus-daemon
PRODUCER: sudo systemctl start nvargus-daemon (if not running)
PRODUCER: Note: Service may need a moment to initialize after start
PRODUCER: 5. Check daemon logs for errors:
PRODUCER: sudo journalctl -u nvargus-daemon -n 50
PRODUCER: 6. If service is running but cameras not detected, try:
PRODUCER: sudo systemctl restart nvargus-daemon
PRODUCER: Then wait a few seconds and try again
PRODUCER:
Note: /dev/video* devices exist but Argus cannot detect them.
PRODUCER: This usually indicates:
PRODUCER: - nvargus-daemon service issue (multi-process mode)
PRODUCER: - Camera devices are not compatible with Argus
PRODUCER: - Another process is holding the cameras
Error generated. main.cpp, execute:523 No cameras available
root@ubuntu:/usr/src/jetson_multimedia_api/samples/09_argus_camera_jpeg#
-
Could you please tell me what causes the issue that iCameraProvider->getCameraDevices(&cameraDevices) fails to find the camera device?
How can this problem be fixed? -
source code:
09_argus_camera_jpeg.zip (8.6 KB)
After executing ./argus_camera_jpeg, then executing sudo systemctl status nvargus-daemon again shows the following error information:
root@ubuntu:/data# sudo systemctl status nvargus-daemon
● nvargus-daemon.service - Argus daemon
Loaded: loaded (/etc/systemd/system/nvargus-daemon.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2026-01-04 17:54:47 CST; 3min 20s ago
Main PID: 895 (nvargus-daemon)
Tasks: 1 (limit: 8809)
Memory: 40.4M
CPU: 228ms
CGroup: /system.slice/nvargus-daemon.service
└─895 /usr/sbin/nvargus-daemon
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: (NvOdmDevice) Error SymbolNotFound: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function ini>
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: NvPclStartPlatformDrivers: Failed to start module drivers
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: NvPclStateControllerOpen: Failed ImagerGUID 0. (error 0x30009)
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: NvPclOpen: PCL Open Failed. Error: 0xf
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 725)
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 455)
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 382)
Jan 04 17:58:05 ubuntu nvargus-daemon[895]: SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 554)
lines 1-20/20 (END)
- After executing uniubi@ubuntu:/data$ nvgstcapture-1.0 --mode=1 --cus-prev-res=1280x720 --capture-time=2 --file-name=output_raw, the error information seen is as follows:
bitrate = 4000
Cannot open display specified with DISPLAY environment variable
can’t create window, Display NULL
Using winsys: x11
** Message: 18:13:08.105: main:4732 iterating capture loop …
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:794 No cameras available。
8.Through using the strace tool to trace nvargus-daemon, more detailed log information was obtained. In strace-nvargus-daemon_and_tegra234-camera-sc1336-dual_dtsi.zip, strace-nvargus-daemon.log contains the log information of nvargus-daemon, and tegra234-camera-sc1336-dual.dtsi is the device tree configuration for the sensor.
strace-nvargus-daemon_and_tegra234-camera-sc1336-dual_dtsi.zip (88.7 KB)
What is causing the “No cameras available” error?
9.If I first stop the systemctl service nvargus-daemon, then manually start nvargus-daemon, and finally execute ./argus_camera_jpeg, I can see other error messages.
root@ubuntu:/usr/bin# systemctl stop nvargus-daemon
root@ubuntu:/usr/bin#
root@ubuntu:/usr/bin# nvargus-daemon
=== NVIDIA Libargus Camera Service (0.99.33)=== Listening for connections…=== argus_camera_jpeg[2834]: Connection established (FFFFB2B2B840)OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module0
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module1
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
---- imager: No override file found. ----
(NvOdmDevice) Error SymbolNotFound: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function loadModeProperties(), line 863)
(NvOdmDevice) Error SymbolNotFound: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function loadModeList(), line 664)
(NvOdmDevice) Error SymbolNotFound: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 128)
NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
NvPclStartPlatformDrivers: Failed to start module drivers
NvPclStateControllerOpen: Failed ImagerGUID 1. (error 0x30009)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 725)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 455)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 382)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 554)
---- imager: No override file found. ----
(NvOdmDevice) Error SymbolNotFound: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function loadModeProperties(), line 863)
(NvOdmDevice) Error SymbolNotFound: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function loadModeList(), line 664)
(NvOdmDevice) Error SymbolNotFound: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 128)
NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
NvPclStartPlatformDrivers: Failed to start module drivers
NvPclStateControllerOpen: Failed ImagerGUID 0. (error 0x30009)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 725)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 455)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 382)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 554)
=== argus_camera_jpeg[2834]: CameraProvider initialized (0xffffacaaea10)=== argus_camera_jpeg[2834]: CameraProvider destroyed (0xffffacaaea10)=== argus_camera_jpeg[2834]: Connection closed (FFFFB2B2B840)=== argus_camera_jpeg[2834]: Connection cleaned up (FFFFB2B2B840)。

