Argus can’t seem to record with the tegra mmapi samples, i’m not sure whats going wrong, any help will be great!
Media device information
------------------------
driver tegra-camrtc-ca
model NVIDIA Tegra Video Input Device
serial
bus info
hw revision 0x3
driver version 5.10.104
Device topology
- entity 1: 13e40000.host1x:nvcsi@15a00000- (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Sink
<- "ox08b40 0-0030":0 [ENABLED]
pad1: Source
-> "vi-output, ox08b40 0-0030":0 [ENABLED]
- entity 4: 13e40000.host1x:nvcsi@15a00000- (2 pads, 2 links)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev1
pad0: Sink
<- "ox08b40 0-0031":0 [ENABLED]
pad1: Source
-> "vi-output, ox08b40 0-0031":0 [ENABLED]
- entity 91: ox08b40 0-0030 (1 pad, 1 link)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev2
pad0: Source
[fmt:SBGGR12_1X12/3840x2160 field:none colorspace:srgb]
-> "13e40000.host1x:nvcsi@15a00000-":0 [ENABLED]
- entity 93: vi-output, ox08b40 0-0030 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "13e40000.host1x:nvcsi@15a00000-":1 [ENABLED]
- entity 107: ox08b40 0-0031 (1 pad, 1 link)
type V4L2 subdev subtype Sensor flags 0
device node name /dev/v4l-subdev3
pad0: Source
[fmt:SBGGR12_1X12/3840x2160 field:none colorspace:srgb]
-> "13e40000.host1x:nvcsi@15a00000-":0 [ENABLED]
- entity 109: vi-output, ox08b40 0-0031 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video1
pad0: Sink
<- "13e40000.host1x:nvcsi@15a00000-":1 [ENABLED]
Argus
p2-compute-orin:~$ sudo nvargus-daemon
=== NVIDIA Libargus Camera Service (0.99.33)=== Listening for connections...=== argus_camera_recording[4890]: Connection established (FFFFAAC5B840)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. ----
(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 107)
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 0xA000E)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 689)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 453)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 333)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 505)
---- 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 107)
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 689)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 453)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 333)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 505)
=== argus_camera_recording[4890]: CameraProvider initialized (0xffffa46fa900)=== argus_camera_recording[4890]: CameraProvider destroyed (0xffffa46fa900)=== argus_camera_recording[4890]: Connection closed (FFFFAAC5B840)=== argus_camera_recording[4890]: Connection cleaned up (FFFFAAC5B840)
V4l2 Works:
p2-compute-orin:~$ sudo v4l2-ctl --list-devices --verbose
NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0
vi-output, ox08b40 0-0030 (platform:tegra-capture-vi:0):
/dev/video0
vi-output, ox08b40 0-0031 (platform:tegra-capture-vi:2):
/dev/video1
VIDIOC_QUERYCAP: ok
39 tegra-camera-platform {
38 compatible = "nvidia, tegra-camera-platform";
37 num_csi_lanes = <8>; /* 3 cameras * 2 lanes each */
36 max_lane_speed = <2500000>; /* MIPI lanes are set up for 2208 Mbps (field is in Kbps) */
35 // TODO: Is this for one camera, or all 3? Probably all 3.
34 // Overridden to a general value seen in other nvidia drivers for now
33 max_pixel_rate = <7500000>; /* ((3840 * 2160 * 30) * 2) + (1920 * 1280 * 30) rounded up, in kpixels/s */
32 min_bits_per_pixel = <12>;
31 /* Don't really know what the rest of these do, and there is minimal/no documentation. */
30 /* So we copy-pasta from the imx334 device tree for now. */
29 vi_peak_byte_per_pixel = <5>;
28 vi_bw_margin_pct = <25>;
27 isp_peak_byte_per_pixel = <5>;
26 isp_bw_margin_pct = <25>;
25
24 modules {
23 module0 {
22 badge = "ox08b40_bottom_zipox08b40";
21 /* nvidia doesn't give many naming choices here, so we pick the closest thing we can to left/center/right */
20 /* https://docs.nvidia.com/jetson/archives/r34.1/DeveloperGuide/text/SD/CameraDevelopment/SensorSoftwareDriverProgramming.html#module-properties */
19 position = "bottom";
18 orientation = "0";
17 drivernode0 {
16 pcl_id = "v4l2_sensor";
15 devname = "ox08b40 2-0030";
14 proc-device-tree = "/proc/device-tree/i2c@3160000/ox08b40_a@30";
13 };
12 };
11 module1 {
10 badge = "ox08b40_top_zipox08b40";
9 position = "top";
8 orientation = "0";
7 drivernode0 {
6 pcl_id = "v4l2_sensor";
5 devname = "ox08b40 2-0031";
4 proc-device-tree = "/proc/device-tree/i2c@3160000/ox08b40_c@31";
3 };
2 };
1 };
516 };
1 };