Please provide the following info (tick the boxes after creating this topic): Software Version
DRIVE OS 6.0.10.0
DRIVE OS 6.0.8.1
DRIVE OS 6.0.6
DRIVE OS 6.0.5
DRIVE OS 6.0.4 (rev. 1)
DRIVE OS 6.0.4 SDK
other
Target Operating System
Linux
QNX
other
Hardware Platform
DRIVE AGX Orin Developer Kit (940-63710-0010-300)
DRIVE AGX Orin Developer Kit (940-63710-0010-200)
DRIVE AGX Orin Developer Kit (940-63710-0010-100)
DRIVE AGX Orin Developer Kit (940-63710-0010-D00)
DRIVE AGX Orin Developer Kit (940-63710-0010-C00)
DRIVE AGX Orin Developer Kit (not sure its number)
other
SDK Manager Version
2.1.0
other
Host Machine Version
native Ubuntu Linux 20.04 Host installed with SDK Manager
native Ubuntu Linux 20.04 Host installed with DRIVE OS Docker Containers
native Ubuntu Linux 18.04 Host installed with DRIVE OS Docker Containers
other
Description
I’m using the camera sample.
Note: Sensor Abstraction Layer Samples > Camera Samples > Camera Sample
The cameras used are Sony IMX728, IMX490, and IMX623.
Could you please explain what happens if the GMSL cable connecting the camera and Orin is disconnected or if the camera itself fails while the Camera Sample is running?
①What kind of console output does the Camera Sample produce in such cases?
②What is the internal behavior under these circumstances?
For example:
Does dwSensorCamera_readFrame() return an error?
Does an error come from a function other than dwSensorCamera_readFrame()?
Does an error occur via an interrupt rather than from a specific DriveWorks function?
Dear @SivaRamaKrishnaNV
I don’t remember exactly which page I saw it on before, but I read a statement saying that you should not unplug or replug cameras connected via GMSL while Orin is running.
I was concerned that unplugging and replugging might cause damage, so I hesitated to test such cases and asked this question.
The DW APIs get info/warning/error notification from underlying SIPL layer. Please see Camera SIPL Notifications | NVIDIA Docs for SIPL notifications.
You can print the error/notification information in callback function. Use reset-on-error=1 and enable-user-event-callbacks flags with sample_camera.
Note that autorecovery feature is not supported in DW. You may check it using nvsipl_camera.
Dear @SivaRamaKrishnaNV
So, when an actual event such as a GMSL cable disconnection occurs, it is unclear what exactly SIPL will notify, but as implemented in the Camera Sample’s main.cpp, the notification details can be checked in the function cameraEventHandling(), correct?
Also, if the runtime argument reset-on-error is set to 1, the camera link will be reset when an error occurs, and if enable-user-event-callbacks is set to 1, user-defined error handling will be executed Is that right?
Yes. You can see the error code in notification. You may use i2c commands to disable camera input and observer error codes.
Yes. You are right. Note that camera auto recovery is not a feature in driveworks. It just shows the APIs to used to reset camera link after error is encountered. For autorecovery testing we encourage you to use nvsipl_camera.