Gst-lanuch No cameras available

/ {

	tegra-camera-platform {
		compatible = "nvidia, tegra-camera-platform";
		/**
		* Physical settings to calculate max ISO BW
		*
		* num_csi_lanes = <>;
		* Total number of CSI lanes when all cameras are active
		*
		* max_lane_speed = <>;
		* Max lane speed in Kbit/s
		*
		* min_bits_per_pixel = <>;
		* Min bits per pixel
		*
		* vi_peak_byte_per_pixel = <>;
		* Max byte per pixel for the VI ISO case
		*
		* vi_bw_margin_pct = <>;
		* Vi bandwidth margin in percentage
		*
		* max_pixel_rate = <>;
		* Max pixel rate in Kpixel/s for the ISP ISO case
		*
		* isp_peak_byte_per_pixel = <>;
		* Max byte per pixel for the ISP ISO case
		*
		* isp_bw_margin_pct = <>;
		* Isp bandwidth margin in percentage
		*/
		num_csi_lanes = <12>;
		max_lane_speed = <4000000>;
		min_bits_per_pixel = <10>;
		vi_peak_byte_per_pixel = <2>;
		vi_bw_margin_pct = <25>;
		isp_peak_byte_per_pixel = <5>;
		isp_bw_margin_pct = <25>;

		/**
		 * The general guideline for naming badge_info contains 3 parts, and is as follows,
		 * The first part is the camera_board_id for the module; if the module is in a FFD
		 * platform, then use the platform name for this part.
		 * The second part contains the position of the module, ex. "rear" or "front".
		 * The third part contains the last 6 characters of a part number which is found
		 * in the module's specsheet from the vender.
		 */
		modules {
			module0 {
				badge = "zedx_bottomleft_ar0234";
				position = "bottomleft";
				orientation = "1";
				status = "okay";
				drivernode0 {
					status = "okay";
					/* Declare PCL support driver (classically known as guid)  */
					pcl_id = "v4l2_sensor";
					/* Driver v4l2 device name */
					// devname = "zedx 30-0020";
					/* Declare the device-tree hierarchy to driver instance */
					// proc-device-tree = "/proc/device-tree/i2c@3180000/zedx_left_0@20";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_0@20";
				};
			};
			module1 {
				badge = "zedx_bottomright_ar0234";
				position = "bottomright";
				orientation = "1";
				status = "okay";
				drivernode0 {
				status = "okay";
					pcl_id = "v4l2_sensor";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_0@21";
				};
			};
			module2 {
				badge = "zedx_centerleft_ar0234";
				position = "centerleft";
				orientation = "1";
				status = "okay";
				drivernode0 {
					status = "okay";
					pcl_id = "v4l2_sensor";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_1@22";
				};
			};
			module3 {
				badge = "zedx_centerright_ar0234";
				position = "centerright";
				orientation = "1";
				status = "okay";
				drivernode0 {
					status = "okay";
					pcl_id = "v4l2_sensor";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_1@23";
				};
			};
			module4 {
				badge = "zedx_sideleft_ar0234";
				position = "sideleft";
				orientation = "1";
				status = "okay";
				drivernode0 {
					status = "okay";
					pcl_id = "v4l2_sensor";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_2@24";
				};
			};
			module5 {
				badge = "zedx_sideright_ar0234";
				position = "sideright";
				orientation = "1";
				status = "okay";
				drivernode0 {
					status = "okay";
					pcl_id = "v4l2_sensor";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_2@25";
				};
			};
			module6 {
				badge = "zedx_topleft_ar0234";
				position = "topleft";
				orientation = "1";
				status = "okay";
				drivernode0 {
					status = "okay";
					pcl_id = "v4l2_sensor";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_3@26";
				};
			};
			module7 {
				badge = "zedx_topright_ar0234";
				position = "topright";
				orientation = "1";
				status = "okay";
				drivernode0 {
					status = "okay";
					pcl_id = "v4l2_sensor";
					sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_3@27";
				};
			};
		};
	};
};

如上是设备树配置;使用测试指令gst-launch-1.0 nvarguscamerasrc sensor-id=x ! ‘video/x-raw(memory:NVMM),width=1920,height=1080,framerate=30/1’ ! nvvidconv ! ‘video/x-raw,format=I420’ ! xvimagesink x对应设备号;如果设置module4 ~ module7 使能,测试指令报错,提示Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:794 No cameras available ;如果禁用module4 ~ module7 ;那么sensor-id=0~3可以正常预览图像。

但是v4l2的测试指令不受影响,什么情况下都可以拉取数据流;对应指令如下:v4l2-ctl -d /dev/videox --set-fmt-video=width=1920,height=1200,pixelformat=BA10 --stream-mmap --stream-count=1 --stream-to=raw10_1920x1080.raw

tegra-camera-platform设置是有什么数量限制吗?SDK版本是jetpack 6.2.1。

希望能提供排查思路

*** Please note that this reply is generated by LLM automatically ***

The question seems to be asking about the Jetson AGX Orin module, specifically about the xmodule4 and module7, and their relationship with the sensorid03, v4l2, and tegracameraplatform. It also mentions the Jetpack 4.6.1 SDK.

Based on the provided context, here’s a comprehensive answer:

The Jetson AGX Orin module is a part of the Jetson AGX Orin series, which is a high-performance AI computing platform. The xmodule4 and module7 are likely referring to the camera modules that can be used with the Jetson AGX Orin module.

The sensorid03 is likely referring to the sensor ID of the camera module, which is used to identify the camera module and its characteristics.

The v4l2 (Video for Linux 2) is a Linux kernel API that provides a standard interface for video capture and output devices. It’s likely that the camera module is using the v4l2 API to communicate with the Jetson AGX Orin module.

The tegracameraplatform is a software framework provided by NVIDIA for developing camera applications on the Jetson platform. It provides a set of APIs and tools for camera development, including support for the v4l2 API.

The Jetpack 4.6.1 SDK is a software development kit provided by NVIDIA for developing applications on the Jetson platform. It includes a set of tools, libraries, and APIs for developing AI and computer vision applications, including support for the tegracameraplatform.

In terms of comparison, the Jetson AGX Orin module is a more powerful and advanced module compared to the Jetson Xavier NX and Jetson AGX Xavier series. It has a more powerful GPU and CPU, and supports more advanced AI and computer vision applications.

The xmodule4 and module7 are likely similar to other camera modules available for the Jetson platform, such as the See3CAM_CU130, which is a USB 3.0 industrial camera that is validated on the Jetson AGX Orin series.

In terms of using the Jetson-IO tool, it’s likely that the tool can be used to configure the camera module and apply the DTB overlay file to statically configure the board for the attached camera.

Overall, the Jetson AGX Orin module, xmodule4, and module7, along with the sensorid03, v4l2, and tegracameraplatform, are all part of the Jetson platform ecosystem, and can be used together to develop advanced AI and computer vision applications.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

full_devicetree.log (67.8 KB)

这是相机相关的完整设备树配置

There’s no sideleft position. Follow below to define the position.

“bottomleft”
“centerleft”
“centerright”
“topleft”
“bottomright”
“topright”
“bottomcenter”
“topcenter”
“frontcenter”
“rearcenter”
“leftcenter”
“rightcenter”
“frontleft”
“frontright”
“rearleft”
“rearright”

感谢回复;按上述修改已经可以获取到nvarguscamera设备;但是还有一个问题

设备树依然如上,这里显示Uniquename全都相同,都是第一个设备的名称;是设置还有什么问题吗?

Have a checking below.

[Argus][multi-cam] getModuleString() always returns the values of 1st camera
https://forums.developer.nvidia.com/t/343974/6/