Some exposure times are not accepted by OpenMV


I set the exposure time to these values:
sensor.set_auto_exposure(False, exposure_us = 101244 * 1)
sensor.set_auto_exposure(False, exposure_us = 101244 * 5)

They work without any problem, but when I set it to the following value, it does not work and goes back to 101244.

sensor.set_auto_exposure(False, exposure_us = 101244 * 10)

But this one works:
sensor.set_auto_exposure(False, exposure_us = 101244 * 11)

Do you know, what the problem is?

I need to change the exposure time in the algorithm.

Hi, which camera are you using?

Note that the exposure time setting is an abstraction. The camera’s have less granular control internally. So, if one number works and another does not this isn’t exactly unexpected. We try to do our best to abstract away the fact that you set the exposure time on most cameras via setting the number of lines to expose for which is based on the clock freq of the sensor.


I tested it on an OpenMV Cam H7 Plus.

Thank you for your answer. So, I must find these values and do not use them when I set the exposure time, automatically. That’s difficult, but there isn’t another way, as you told.

Here’s the code for that method: openmv/ov5640.c at master · openmv/openmv · GitHub

Thank you.

I saw that, but I think, I cannot change it to have a better result, as I understood (because of hardware limitations etc.). But, thanks.