Raspberry Pi 4 Issues with OV2311 Camera

Hello,

I followed the instructions here:

https://github.com/ArduCAM/MIPI_Camera/tree/master/RPI

The compiled demos seem to work, however I’m experiencing several issues with the camera:

  1. There is no device /dev/video0 (I've rebooted and reconnected camera several times)
  2. Every time I run a demo (e.g. ./video ), the Ethernet connection of the RPI crashes and I need to reboot to restart it.
Another question:

Is it possible in principle to capture video stream from the camera using OpenCV interface?

I apologize in advance if those issues/questions where answered elsewhere.

Izzy

Hello,

On Pi platform, we have two software framework. The first is our MIPI_Camera library.

Using this library, it will not open the video0 device node for user. We have a detail operation steps here https://github.com/ArduCAM/MIPI_Camera/tree/master/RPI

The other is our arducam+bcm2835 unicam driver. It will open the video0 device for user. This driver is used for our arudcam obisp camera. If normal mipi camera you can’t use the camera individually. you should use our mipi camera with the adapter board. Here is

our detail operation steps:

https://www.arducam.com/docs/arducam-obisp-mipi-camera-module/3-use-on-raspberry-pi/3-2-driver-installation/

https://www.uctronics.com/https-www-uctronics-com-index-php-arducam-ov2311-mipi-2mp-global-shutter-mono-camera-module-html-2273.html

 

 

 

 

Hello,

On Pi platform, we have two software framework. The first is our MIPI_Camera library.

Using this library, it will not open the video0 device node for user. We have a detail operation steps here https://github.com/ArduCAM/MIPI_Camera/tree/master/RPI

The other is our arducam+bcm2835 unicam driver. It will open the video0 device for user. This driver is used for our arudcam obisp camera. If normal mipi camera you can’t use the camera individually. you should use our mipi camera with the adapter board. Here is

our detail operation steps:

https://www.arducam.com/docs/arducam-obisp-mipi-camera-module/3-use-on-raspberry-pi/3-2-driver-installation/

https://www.uctronics.com/https-www-uctronics-com-index-php-arducam-ov2311-mipi-2mp-global-shutter-mono-camera-module-html-2273.html

 

 

 

 

Hi Bin,

Thank you for your kind and prompt response.

Cheers,

Izzy

Hi,

Another question:

According to documentation here the camera I use (ov2311):

“Support for image sizes: 1600 x 1300, 1280 x 720, 640 x 480”

However from trying the samples the low resolutions are not supported.

Running “./list_format” utility gives:

Hardware platform: c03111
Found sensor ov2311 at address 60
mode: 0, width: 1600, height: 1300, pixelformat: GREY, desc: (null)
mode: 1, width: 1600, height: 1300, pixelformat: BA81, desc: (null)
mode: 2, width: 1600, height: 1080, pixelformat: GREY, desc: (null)
mode: 3, width: 1600, height: 1080, pixelformat: BA81, desc: (null)
mode: 4, width: 1920, height: 1080, pixelformat: GREY, desc: (null)
mode: 5, width: 1920, height: 1080, pixelformat: BA81, desc: (null)
mode: 6, width: 1600, height: 1300, pixelformat: GREY, desc: (null)
mode: 7, width: 1600, height: 1300, pixelformat: GREY, desc: Used for ov2311 2lane raw8 1600x1300 external trigger mode
mode: 8, width: 1600, height: 1080, pixelformat: GREY, desc: Used for ov2311 2lane raw8 1600x1080 external trigger mode
mode: 9, width: 1920, height: 1080, pixelformat: GREY, desc: Used for ov2311 2lane raw8 1920x1080 external trigger mode
mode: 10, width: 1600, height: 1300, pixelformat: GREY, desc: Used for ov2311 2lane raw10 1600x1300 external trigger mode
index: 0, CID: 0x00980914, desc: V4L2_CID_HFLIP, min: 0, max: 1, default: 0, current: 0
index: 1, CID: 0x00980915, desc: V4L2_CID_VFLIP, min: 0, max: 1, default: 0, current: 0
index: 2, CID: 0x00980911, desc: V4L2_CID_EXPOSURE, min: 0, max: 65535, default: 1466, current: 1440
index: 3, CID: 0x00980913, desc: V4L2_CID_GAIN, min: 0, max: 255, default: 0, current: 0
index: 4, CID: 0x00981901, desc: V4L2_CID_ARDUCAM_EXT_TRI, min: 0, max: 1, default: 0, current: 0
close camera status = 0

Cheers,

Izzy

Hi,

The OV2311 sensor itself supports 640*480, but we currently do not have a low-resolution configuration, so we did not add the corresponding resolution configuration in the library. Once we bring up the configuration, we will update it immediately.

Hi Jyh,

Thanks!

Izzy

If you need more help, please feel free to contact us.

Hi guys,

I have an issue with the FPS rate. In my application using OV2311 on Raspberry Pi 4 with mode=2 and reading the frames with arducam_capture() I get somewhat inconsistent frame rate of 30-40 FPS - as opposed to expected 60 FPS.

Running your sample ./video with the white balance and auto-exposure disabled and writing to the file commented out I get a similar performance:

Open camera…
Hardware platform: c03111
Found sensor ov2311 at address 60
Setting the resolution…
mmal: Failed to fix lens shading, use the default mode!
Current resolution is 1920x1080
Notice:You can use the list_format sample program to see the resolution and control supported by the camera.
Start video encoding…
Total frame count = 380
TimeElapsed = 10.000097
Stop video encoding…
Close camera…

380 frames in 10 seconds - 38 FPS.

Is there a way to achieve 60 FPS on Raspberry Pi 4 with OV2311?

BTW, a brief test I did with the IMX298 camera gave me even lower FPS.

Cheers,

Izzy

Have you tried to disable the auto exposure and use manual exposure instead?

The longer exposure might reduce the frame rate.

 

Hi Izzy,

I just encountered the same issue - arducam freezing ethernet. Have you found the cause yet? Right now I have to use Wi-Fi.

Cheers,

Anson

Nope. We have stopped any testing with Arducam cams for now.

On the latest system does not exist this issue.

@bin Do you mean the Raspbian December release?

Yes.

 

Hi, I’m having the same ethernet issues on OV9281 (1MP) UC-599 rev.B. even with the Raspbian December release.

I was not able to run any of the Userland SDK examples, tried 4 different Pi boards (Pi4B older FW, Pi4B newer FW, Pi3B, PiZero) and 4 different UC-599 . Spent already a week trying all possible kernel version configs and all arducam forum advice combinations. No success.

V4L2 works, but not with required External Trigger.

Does the rev.B. work with the Userland SDK? Not far from giving up Arducam soon.

Thanks for any advice.

sorry, just tried not enabling I2C in raspi-config (it is enabled in your tutorial) and looks like the Userland SDK examples work now.

Still the Ethernet freezing issue still persists on the newest Dec. 2020 Raspberry Pi OS.

<p style=“text-align: left;”>@Petr_tech I tried it on a brand new RPI with the same sd card. no problem there. perhaps its hardware issue? might have to be more careful with these guys. burnt the serial of my last one already :man_facepalming:</p>

Hello,

I have tested the MIPI_Camera library and it seems normal, Does the library you are using is the latest version?

Hi, tested with the latest commit 0f2ad8c, result = no change. With older Pi4B rev. a03111 SDK works but first camera init stops eth0. With new Pi4B rev. 1.4 (b03114) the camera can not be initialized at all (arducamstill -> init status = 4099). Also /RPI/utils/camera_i2c -> “Failed: don’t know hot to set GPIO for this board”.

At least I am able to do some experiments with the older revision now - I am getting great results with the Arducam global shutter cameras.