I have two Raspberry Pi Camera Module 3s that I am attempting to connect to my Orin Nano via its CSI ports.
Previously saw a video claiming the RPv3 camera was based on the IMX477, but as we know it is actually an IMX708. Luckily the folks over at RidgeRun have code and decently well-documented instructions to build an IMX708 driver, which I completed with (almost) no issues.
Sadly, after the process seems to go smoothly, when I attempt any of the Example Pipelines at the bottom of that page, I get an error:
nano@orin-nano-1:~$ gst-launch-1.0 nvarguscamerasrc num-buffers=1 sensor_id=0 ! 'video/x-raw(memory:NVMM), width=4608, height=2592, framerate=14/1, format=NV12' ! nvjpegenc ! filesink location=RidgeRun_test.jpg
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:794 No cameras available
Redistribute latency...
Got EOS from element "pipeline0".
Execution ended after 0:00:00.016291065
Setting pipeline to NULL ...
Freeing pipeline ...
After reading over some related posts (here and here), I am not able to proceed but have collected a device tree and logs from the argus-daemon
to see if that will help (attached).
extracted_proc_dts.txt (320.6 KB)
argus-output.log (3.3 KB)
The logs certainly do show an error of sorts, but I am not knowledgeable enough to make heads or tails of it:
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
---- imager: No override file found. ----
(NvCamV4l2) Error ModuleNotPresent: V4L2Device not available (in /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function findDevice(), line 256)
(NvCamV4l2) Error ModuleNotPresent: (propagating from /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function initialize(), line 60)
(NvOdmDevice) Error ModuleNotPresent: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 111)
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 0xA000E)
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. ----
Any tips on things other troubleshooting steps to try would be appreciated. I have experimented with two cameras plugged in, as well as only one camera plugged in (cam0 slot) and the same result.
Final side remark: I also note that after installing the driver, the helper utility /opt/nvidia/jetson-io/jetson-io.py
helper utility no longer works.