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
Hardware Platform
NVIDIA DRIVE™ AGX Xavier DevKit (E3550)
NVIDIA DRIVE™ AGX Pegasus DevKit (E3550)
other
Hi Nvidia Team,
I’m trying to run this ROS example from Nvidia GitHub - NVIDIA/dw-ros: ROS cross-compilation with DriveWorks , It works well for cameras in port A, nevertheless when I change the port to B I get:
[ INFO] [1635126665.766613616]: Advertising Camera Start and Camera Stop Services.
[ INFO] [1635126669.646880912]: Service params called are as follows: camera.gmsl camera-name=SF3324,interface=csi-b,link=0,output-format=processed
cdiRootDevOpen: can't open /dev/isc-mgr.0.b - No such file or directory
DevBlkCDIRootDeviceCreate: Unable to open root device
DEVBLK_WORKER_0: CNvMDeviceBlock.cpp: 218: Init: DevBlkCDIRootDeviceCreate failed!
DEVBLK_WORKER_0: CNvMDeviceBlockMgr.hpp: 147: ThreadFunc: Device block init failed(7f)
nv_sensors_prod: CNvMDeviceBlockMgr.cpp: 129: WorkersDoAction: Device block action:1 failed for block:0
nv_sensors_prod: CNvMDeviceBlockMgr.cpp: 163: Init: Failed to initialize device blocks
nv_sensors_prod: CNvMCamera.cpp: 436: Init: DeviceBlock manager init failed
nv_sensors_prod: CNvMCamera.cpp: 568: GetImageAttributes: Incorrect pipeline state:1 for pipeline:0
[ERROR] [1635126669.797701744]: Cannot start camera. Error: DW_FAILURE
nv_sensors_prod: CNvMCamera.cpp: 1088: Deinit: Incorrect pipeline state:1 for pipeline:0
^Cnv_sensors_prod: CNvMCamera.cpp: 1088: Deinit: Incorrect pipeline state:1 for pipeline:0
nv_sensors_prod: CNvMCamera.cpp: 48: ~CNvMCamera: CNvMCamera object fails to deinit
nvmedia: ERROR: MAX96712: Bad parameter: Null ptr
nv_sensors_prod: CNvMMax96712.cpp: 244: Deinit: CDI_CONFIG_MAX96712_DISABLE_REPLICATION failed! with NvMedia error: 1
I changed the interface to csi-b
based on camera : The choice for csi-port
, what am I doing wrong?
I have also checked this post but it’s still no clear.
VickNV
October 25, 2021, 1:55pm
3
Hi, @jber4282
Does the connection work with sample_camera or nvsipl_camera ?
Hi @VickNV
I’m sorry, I don’t really understand what you are asking, when I run sample_camera it displays the image of the camera 0 in port A.
This is what the rig file has:
camera-name=SF3324,interface=csi-a,link=0,output-format=processed
Are you asking me to change the interface to csi-b
and try to run it again? or which rig file should I use? how to edit it?
Dear @jber4282 ,
Yes. Vick asked to confirm if the basic camera sample working fine.
Connect the camera to port B0 and use rig file with below changes
camera-name=SF3324,interface=csi-b,link=0,output-format=processed
Hi @SivaRamaKrishnaNV
This is what I see after running sample_camera with the suggested changes:
nvidia@tegra-ubuntu:/usr/local/driveworks/bin$ ./sample_camera
[26-10-2021 19:01:14] Platform: Detected DDPX - Tegra A
[26-10-2021 19:01:14] TimeSource: monotonic epoch time offset is 1635235077460840
[26-10-2021 19:01:14] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[26-10-2021 19:01:14] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[26-10-2021 19:01:14] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[26-10-2021 19:01:14] Platform: number of GPU devices detected 2
[26-10-2021 19:01:14] Platform: currently selected GPU device discrete ID 0
[26-10-2021 19:01:14] Context::getDataPathFromSelfLocation DATA_ROOT found at: /usr/local/driveworks-3.5/data
[26-10-2021 19:01:14] SDK: No resources(.pak) mounted, some modules will not function properly
[26-10-2021 19:01:14] SDK: Create NvMediaDevice
[26-10-2021 19:01:14] SDK: Create NvMedia2D
[26-10-2021 19:01:14] SDK: use EGL display as provided
[26-10-2021 19:01:15] TimeSource: monotonic epoch time offset is 1635235077460840
[26-10-2021 19:01:15] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[26-10-2021 19:01:15] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[26-10-2021 19:01:15] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[26-10-2021 19:01:15] Initialize DriveWorks SDK v3.5.75
[26-10-2021 19:01:15] Release build with GNU 7.3.1 from heads/buildbrain-branch-0-gc61a9a35bd0 against Drive PDK v5.2.0.0
[26-10-2021 19:01:15] Rig::fromFile: Loading rig file: /usr/local/driveworks-3.5/data/samples/sensors/camera/camera/rig.json
[26-10-2021 19:01:15] No valid data file found for camera:sample0 in parameter string: camera-name=SF3324,interface=csi-b,link=0,output-format=processed (using configuration folder /usr/local/driveworks-3.5/data/samples/sensors/camera/camera/)
onInitialize: creating camera.gmsl with params: camera-name=SF3324,interface=csi-b,link=0,output-format=processed
[26-10-2021 19:01:15] SensorFactory::createSensor() -> camera.gmsl, camera-name=SF3324,interface=csi-b,link=0,output-format=processed
[26-10-2021 19:01:15] CameraBase: pool size set to 8
[26-10-2021 19:01:15] SensorFactory::createSensor() -> camera.gmsl.master,
[26-10-2021 19:01:15] CameraMaster::parseDevBlock Getting device info list.
[26-10-2021 19:01:15] devBlock: 1 Slave = 0 Interface = csi-b Camera_name = SF3324 Link = 0
[26-10-2021 19:01:15] Camera Match Name: SF3324 Description: Sekonix SF3324 module - 120-deg FOV, DVP AR0231-RCCB, MAX96705 linkIndex: 4294967295 serInfo.Name: MAX96705
[26-10-2021 19:01:15] Client, Setting up information for camera ID 0
[26-10-2021 19:01:15] Client, successfully found info for camera ID 0 bound to id 0
[26-10-2021 19:01:15] CameraClient: no NITO found at /opt/nvidia/nvmedia/nit/SF3324.nito
[26-10-2021 19:01:15] CameraClient: using NITO found at /opt/nvidia/nvmedia/nit/sf3324.nito
[26-10-2021 19:01:15] Initialize DriveWorks VisualizationSDK v3.5.75
[26-10-2021 19:01:15] Initialize DriveWorksGL SDK v3.5.75
onInitialize: Total cameras 1
onInitialize: getting image props 0
onInitialize: initilizing stream: 0
[26-10-2021 19:01:15] StreamConsumerGL: successfully initialized
[26-10-2021 19:01:15] StreamProducerCUDA: successfully initialized
Main: Starting master.
[26-10-2021 19:01:15] CameraGSMLMaster: starting...
[26-10-2021 19:01:15] SIPLMaster::SIPLMaster: Setting up master camera
[26-10-2021 19:01:15] Platform:
[26-10-2021 19:01:15] Platform Config:
[26-10-2021 19:01:15] Description:
[26-10-2021 19:01:15] Number of device blocks: 1
[26-10-2021 19:01:15] Device Block : 0
[26-10-2021 19:01:15] csiPort: 1
[26-10-2021 19:01:15] i2cDevice: 0
[26-10-2021 19:01:15] Deserializer Name: MAX96712
[26-10-2021 19:01:15] Deserializer Description: Maxim 96712 Aggregator
[26-10-2021 19:01:15] Deserializer i2cAddress: 41
[26-10-2021 19:01:15] Simulator Mode: 0
[26-10-2021 19:01:15] Slave Mode: 0
[26-10-2021 19:01:15] Phy Mode: 0
[26-10-2021 19:01:15] Number of camera modules: 1
[26-10-2021 19:01:15] CameraModule index: 0
[26-10-2021 19:01:15] Name :SF3324
[26-10-2021 19:01:15] Description: Sekonix SF3324 module - 120-deg FOV, DVP AR0231-RCCB, MAX96705
[26-10-2021 19:01:15] Serializer name: MAX96705
[26-10-2021 19:01:15] Serializer description: Maxim 96705 Serializer
[26-10-2021 19:01:15] Serializer i2cAdress: 64
[26-10-2021 19:01:15] Sensor ID: 0
[26-10-2021 19:01:15] Sensor name: AR0231
[26-10-2021 19:01:15] Sensor description: OnSemi AR0231 Sensor
[26-10-2021 19:01:15] Sensor i2cAddress: 16
[26-10-2021 19:01:15] Sensor isTPGEnabled: 0
[26-10-2021 19:01:15] Sensor isTriggerMode: 1
[26-10-2021 19:01:15] cfa: 39
[26-10-2021 19:01:15] embeddedTopLines: 24
[26-10-2021 19:01:15] embeddedBottomLines: 4
[26-10-2021 19:01:15] inputFormat: 8
[26-10-2021 19:01:15] height: 1208
[26-10-2021 19:01:15] width: 1920
[26-10-2021 19:01:15] fps: 30.0000000
[26-10-2021 19:01:15] Embedded Data: 0
[26-10-2021 19:01:15] CameraMaster::setOutputDescription Setting output consumer descriptors for sensor: OutputType: 1
[26-10-2021 19:01:15] Client, setting pipeline config for camera ID 0
[26-10-2021 19:01:15] CameraMaster: master initiation
cdiRootDevOpen: can't open /dev/isc-mgr.0.b - No such file or directory
DevBlkCDIRootDeviceCreate: Unable to open root device
DEVBLK_WORKER_0: CNvMDeviceBlock.cpp: 218: Init: DevBlkCDIRootDeviceCreate failed!
DEVBLK_WORKER_0: CNvMDeviceBlockMgr.hpp: 147: ThreadFunc: Device block init failed(7f)
sample_camera: CNvMDeviceBlockMgr.cpp: 129: WorkersDoAction: Device block action:1 failed for block:0
sample_camera: CNvMDeviceBlockMgr.cpp: 163: Init: Failed to initialize device blocks
sample_camera: CNvMCamera.cpp: 436: Init: DeviceBlock manager init failed
[26-10-2021 19:01:15] CameraMaster: master init failed127
sample_camera: CNvMCamera.cpp: 568: GetImageAttributes: Incorrect pipeline state:1 for pipeline:0
[26-10-2021 19:01:15] CameraMaster: GetImageAttributes failed6
[26-10-2021 19:01:15] CameraClient: GetImageAttributes failed6
[26-10-2021 19:01:15] CameraClient: Failed to allocate images groups!6
[26-10-2021 19:01:15] Driveworks exception thrown: DW_FAILURE: CameraClient: Failed to allocate images pool!
terminate called after throwing an instance of 'std::runtime_error'
what(): [2021-10-26 19:01:15] DW Error DW_FAILURE executing DW function:
dwSensor_start(m_camera[i])
at /dvs/git/dirty/gitlab-master_av/dw/sdk/samples/sensors/camera/camera/main.cpp:366
Aborted (core dumped)
It’s weird I see Device Block : 0
, port B should be 1, right?
@SivaRamaKrishnaNV
The error message gave me the information I needed to solve the issue. Seems like port b
is actually c
when I change the rig file to:
camera-name=SF3324,interface=csi-c,link=0,output-format=processed
I’m able to see the image corresponding to the camera connected to B0.
1 Like
VickNV
October 26, 2021, 1:33pm
8
Good to hear that you figured out the problem.
But did you mean connecting the camera to group b needs to run with “interface=csi-c” parameter?
correct, for group b interface is “csi-c”, for group c interface = “csi-e”