Enable RAW output for custom GMSL camera in Rig Configuration file

Please provide the following info (check/uncheck the boxes after creating this topic):
Software Version
DRIVE OS Linux 5.2.6
DRIVE OS Linux 5.2.6 and DriveWorks 4.0
DRIVE OS Linux 5.2.0
DRIVE OS Linux 5.2.0 and DriveWorks 3.5
NVIDIA DRIVE™ Software 10.0 (Linux)
NVIDIA DRIVE™ Software 9.0 (Linux)
other DRIVE OS version
other

Target Operating System
Linux
QNX
other

Hardware Platform
NVIDIA DRIVE™ AGX Xavier DevKit (E3550)
NVIDIA DRIVE™ AGX Pegasus DevKit (E3550)
other

SDK Manager Version
1.7.1.8928
other

Host Machine Version
native Ubuntu 18.04
other

We want to use DriveWorks 4.0 to record camera data with AR0147 sensor. We already have the custom driver for this sensor and it works well with nvsipl_camera application (with -R01 parameters that enable RAW output and disable ISP0/1):
./nvsipl_camera -c "AR0147_DPHY_x4" -m "0x0000 0x0000 0x1111 0x0000" -sR01

However, when running DriveWorks sample_camera application, we got below errors. It seems that the rig file does not have valid value for RAW output. Could we specify the output is RAW and disable ISP0/1 in the rig file?

onInitialize: creating camera.gmsl with params: camera-name=AR0147,interface=csi-e,link=0,output-format=raw
[18-01-2022 17:04:46] SensorFactory::createSensor() -> camera.gmsl, camera-name=AR0147,interface=csi-e,link=0,output-format=raw
[18-01-2022 17:04:46] CameraGMSLSelector: missing 'output-format=processed/yuv' in the sensor parameters, frames might be captured with bad sensor settings(AE/AWB) and reprocess may result image quality issues
[18-01-2022 17:04:46] CameraBase: pool size set to 8
[18-01-2022 17:04:46] SensorFactory::createSensor() -> camera.gmsl.master, 
[18-01-2022 17:04:47] CameraMaster::parseDevBlock Getting device info list.
[18-01-2022 17:04:47] devBlock: 1 Slave = 0 Interface = csi-e Camera_name = AR0147 Link = 0
[18-01-2022 17:04:47] Camera Match Name: AR0147 Description: AR0147 YUV module MAX96705 linkIndex: 4294967295 serInfo.Name: MAX96705
[18-01-2022 17:04:47] Client, Setting up information for camera ID 0
[18-01-2022 17:04:47] CameraClient, YUV camera detected, overriding all output types to produce processed only output
[18-01-2022 17:04:47] Client, successfully found info for camera ID 0 bound to id 0
[18-01-2022 17:04:47] CameraClient: no NITO found at /opt/nvidia/nvmedia/nit/AR0147.nito
[18-01-2022 17:04:47] CameraClient: no NITO found at /opt/nvidia/nvmedia/nit/ar0147.nito
[18-01-2022 17:04:47] CameraClient: using NITO found at /opt/nvidia/nvmedia/nit/template.nito
Processed not selected as master output format parameter. No images will be previewed.
[18-01-2022 17:04:47] Initialize DriveWorks VisualizationSDK v4.0.0
[18-01-2022 17:04:47] Initialize DriveWorksGL SDK v4.0.0
onInitialize: Total cameras 1
Main: Starting master.
[18-01-2022 17:04:47] CameraGSMLMaster: starting...
[18-01-2022 17:04:47] SIPLMaster::SIPLMaster: Setting up master camera
[18-01-2022 17:04:47] Platform: 
[18-01-2022 17:04:47] Platform Config: 
[18-01-2022 17:04:47] Description: 
[18-01-2022 17:04:47] Number of device blocks: 1
[18-01-2022 17:04:47] Device Block : 0
[18-01-2022 17:04:47] 	csiPort: 6
[18-01-2022 17:04:47] 	i2cDevice: 1
[18-01-2022 17:04:47] 	Deserializer Name: MAX96712
[18-01-2022 17:04:47] 	Deserializer Description: Maxim 96712 Aggregator
[18-01-2022 17:04:47] 	Deserializer i2cAddress: 41
[18-01-2022 17:04:47] 	Simulator Mode: 0
[18-01-2022 17:04:47] 	Slave Mode: 0
[18-01-2022 17:04:47] 	Phy Mode: 0
[18-01-2022 17:04:47] 	Number of camera modules: 1
[18-01-2022 17:04:47] 	CameraModule index: 0
[18-01-2022 17:04:47] 		Name :AR0147
[18-01-2022 17:04:47] 		Description: AR0147 YUV module MAX96705
[18-01-2022 17:04:47] 		Serializer name: MAX96705
[18-01-2022 17:04:47] 		Serializer description: Maxim 96705 Serializer
[18-01-2022 17:04:47] 		Serializer i2cAdress: 64
[18-01-2022 17:04:47] 			Sensor ID: 0
[18-01-2022 17:04:47] 			Sensor name: AR0147
[18-01-2022 17:04:47] 			Sensor description: OnSemi AR0147 sensor
[18-01-2022 17:04:47] 			Sensor i2cAddress: 72
[18-01-2022 17:04:47] 			Sensor isTPGEnabled: 0
[18-01-2022 17:04:47] 			Sensor isTriggerMode: 1
[18-01-2022 17:04:47] 				 cfa: 4
[18-01-2022 17:04:47] 				 embeddedTopLines: 0
[18-01-2022 17:04:47] 				 embeddedBottomLines: 0
[18-01-2022 17:04:47] 				 inputFormat: 0
[18-01-2022 17:04:47] 				 height: 800
[18-01-2022 17:04:47] 				 width: 1280
[18-01-2022 17:04:47] 				 fps: 30.0000000
[18-01-2022 17:04:47] 				 Embedded Data: 0
[18-01-2022 17:04:47] CameraMaster available outputs: 8
[18-01-2022 17:04:47] CameraClient: setting pipeline config for camera ID 0
sample_camera: /dvs/git/dirty/git-master_linux/camera/fusa/sipl/src/core/pipelineMgr/spmgr/pipeline/CNvMSensorPipeline.cpp: 462: VerifyPipelineCfg: At least one output needs to be enabled
sample_camera: /dvs/git/dirty/git-master_linux/camera/fusa/sipl/src/core/CNvMCamera.cpp: 195: SetPipelineCfg: Invalid pipeline configuration
[18-01-2022 17:04:47] CameraClient: Failed to set Pipeline configuration for client with id 0, status 1

Hi, @v.tindnt

YUV camera isn’t supported in DW yet. Also, custom cameras (not listed DRIVE Ecosystem - Hardware and Software | NVIDIA Developer) aren’t supported in the forum.
Sorry for any inconvenience.

Hi @VickNV

Blockquote
YUV camera isn’t supported in DW yet.

Could you double check about this since DW4.0 Release Notes said that it supports YUV sensors.

About the rig parameters for GMSL camera: Do we have detailed description of parameter and properties fields of camera.gmsl. I checked GMSL section in DW but the information is not clear enough.

Thank you for checking our documentation and pointing it out.
In DriveWorks 4.0, captureOutputRequested isn’t set.
That’s why you encountered the issue and I said it’s not supported. Sorry for not being clear.

Please see if DriveWorks SDK Reference: Camera helps.
If not, please create another topic for the specific issue.

Blockquote
In DriveWorks 4.0, captureOutputRequested isn’t set.
That’s why you encountered the issue and I said it’s not supported. Sorry for not being clear.

Did you mean that it is a DriveWorks 4.0 issue that make the output type is not correctly set for YUV sensor? It seems that we could not set captureOutputRequested flag via DriveWork APIs.

Blockquote
Please see if DriveWorks SDK Reference: Camera helps.
If not, please create another topic for the specific issue.

I created another ticket for this.

Dear @v.tindnt,
Did you mean that it is a DriveWorks 4.0 issue that make the output type is not correctly set for YUV sensor ? It seems that we could not set captureOutputRequested flag via DriveWork API

Yes. it is issue on DW 4.0.

Thank @SivaRamaKrishnaNV for your confirmation.

It is noted that DRIVE OS 5.2.6 and DriveWorks 4.0 Linux are the last software releases planned for DRIVE AGX Xavier / Pegasus based platforms in Drive Download page.

However, are there any plans to release a bug fix for YUV sensor issue? If yes, do you have a timeline for this release?

No, there is no plan for further release. Sorry for any inconvenience.

@VickNV is this issue being resolved in the version of driveos 6.0.0.5 and driveworks 5.8?

Thanks.

Dear @lizhensheng,
Yes. This issue fixed