Exposure control in external trigger mode

Dear forum,

I am prototyping a visual inertial system based on the Sony IMX296 global-shutter sensor. I plan to use it in external trigger mode (fast trigger mode of the sensor) for the question of hardware synchronization with other sensors in the system.

The problem is that contrary to the sensors from other providers (OmniVision or Onsemi), I learnt that the exposure time of the IMX296 depends on the trigger pulse width from the its documentation as well as the following link : documentation/documentation/asciidoc/accessories/camera/external_trigger.adoc at develop · raspberrypi/documentation · GitHub

Thus, I think that I will need to disable the Auto-exposure of the libargus and manually control it by changing the external trigger pulse width (i.e. the duty-cycle of a PWM of 30Hz for 30FPS for example).

Do you have any experience on this to share, please ?

Thanks in advance and best regards,
Khang

You can fix the exposure by exposuretimerange like below example.

gst-launch-1.0 nvarguscamerasrc exposuretimerange="300000000 300000000" ! 'video/x-raw(memory:NVMM)' ! nvvidconv ! xvimagesink -ev

Hi @ShaneCCC,

Thanks for your advice. I would like to know if it is possible to get the expected exposure computed by the libargus in order to control the width of the external trigger pulse?

Best Regards,
Khang

There’s no get exposure API, but the setting will send to kernel sensor driver.

Thanks