Grunky
Posts: 5
Joined: Sun Aug 23, 2020 12:12 am

Vsync pin on other cameras?

Wed Sep 22, 2021 5:57 am

Hi, I saw the HQ camera now can be synchronized using the Vsync pin, I'm interested in syncing an IMU with the camera module.

My question is, can this also be done for other cameras, ex: https://www.amazon.com/Arducam-Camera-R ... 38&sr=8-16

It has an exposed vsync pin. Is this enough?

Could someone explain in more detail how the vsync works?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 11806
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Vsync pin on other cameras?

Wed Sep 22, 2021 7:57 am

That module is an OV5647 (V1 camera module). From conversations with an Omnivision Apps Engineer a number of years ago, it does not support synchronising between two modules.
There is a FREX signal, but that is a global reset and really wants an external shutter to give uniform exposure over the sensor.
There is also a VSYNC output which is driven by the timing generator of the sensor. You may be able to slave your IMU to that, but not the sensor to the IMU.

See http://cdn.sparkfun.com/datasheets/Dev/ ... 7_full.pdf for an OV5647 datasheet. The OV5647 driver used by libcamera is open source as part of the Linux kernel, so you can alter the register set as you wish. The firmware is closed source and won't be modified to drive these signals.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Grunky
Posts: 5
Joined: Sun Aug 23, 2020 12:12 am

Re: Vsync pin on other cameras?

Wed Sep 22, 2021 8:35 pm

6by9 wrote: That module is an OV5647 (V1 camera module). From conversations with an Omnivision Apps Engineer a number of years ago, it does not support synchronising between two modules.
There is a FREX signal, but that is a global reset and really wants an external shutter to give uniform exposure over the sensor.
There is also a VSYNC output which is driven by the timing generator of the sensor. You may be able to slave your IMU to that, but not the sensor to the IMU.

See http://cdn.sparkfun.com/datasheets/Dev/ ... 7_full.pdf for an OV5647 datasheet. The OV5647 driver used by libcamera is open source as part of the Linux kernel, so you can alter the register set as you wish. The firmware is closed source and won't be modified to drive these signals.
Hi, I only need the camera to trigger the IMU. do you know of vsync will be automatically enabled?

I also saw another post about someone using these pins on the camera which I will look at closer.

Could you explain the difference between the Linux driver and the firmware? I don't understand, aren't they the same?

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 11806
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: Vsync pin on other cameras?

Thu Sep 23, 2021 11:09 am

Grunky wrote:
Wed Sep 22, 2021 8:35 pm
Hi, I only need the camera to trigger the IMU. do you know of vsync will be automatically enabled?
No, because there are configuration parameters around exactly how the vsync output is controlled.
Grunky wrote:I also saw another post about someone using these pins on the camera which I will look at closer.

Could you explain the difference between the Linux driver and the firmware? I don't understand, aren't they the same?
No, totally different.

Originally the camera was accessed via the firmware using OpenMAX IL or MMAL. The firmware is closed source, so it is not possible for users to make changes or add support for additional sensors.

Around 18months ago the open source libcamera support was added - https://libcamera.org/entries/2020-05-05.html. This uses Linux kernel drivers to drive almost everything, so it is open to third party changes.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Return to “Camera board”