kbingham / libcamera

libcamera - Making complex cameras easy. This is a personal fork, please use the upstream repository at https://git.libcamera.org/libcamera/libcamera.git/
https://libcamera.org
Other
167 stars 69 forks source link

question #71

Closed Arnold1 closed 1 year ago

Arnold1 commented 1 year ago

hi,

does it also work on raspberry pi zero 2 w?

also is it possible to put the camera in sleep mode and wakeup again - in order to save energy? I'm currently looking at the raspberry pi camera module 3 - which seem to use the 12-megapixel Sony IMX708 image sensor...

kbingham commented 1 year ago

Yes, libcamera is functional and supported on the RPi zero 2 W with all of the Raspberry Pi Cameras.

Indeed, the Camera v3 is the IMX708. What is your specific use case for putting it to sleep? You can stop the camera, and restart it again later. It will be up to the drivers to ensure that it is powered down when stopped.

If you have issues with this, you can either report this to Raspberry Pi - or contact us if you require specific kernel investigations and development.

-- Kieran

Arnold1 commented 1 year ago

Hi @kbingham I want to build some surveillance system. If i could sleep the camera - i would save a lot of energy… and than wakeup on demand… do i have control over that using the lib/driver - how?

kbingham commented 1 year ago

You can call camera::start() and camera::stop(). But it's possible that it currently won't likely save much power.

That's something we could work on to improve if you need it. You could already measure power consumptions on your device to see if this if your configuration has runtime power management enabled.

Arnold1 commented 1 year ago

Hi @kbingham would love to see a power saving feature when the camera is stopped - how would that work on the driver / lib?

if you check the OV5640 camera as a comparison: https://www.waveshare.com/w/upload/d/da/OV5640_DataSheet.pdf

power requirements:

kbingham commented 1 year ago

The OV5640 driver already supports runtime-pm. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/media/i2c/ov5640.c#n3705

That means calling camera::stop() should enable the power saving mode. If you are finding that the power consumption is still higher than you expect, then we could look at setting up a project to investigate this for you.

Arnold1 commented 1 year ago

yes i know that OV5640 has that - but what about the raspberry pi camera module 3? there is no good way to save power consumption using raspberry pi camera module 3?

kbingham commented 1 year ago

The IMX708 driver also has runtime-pm. Can you clarify exactly what you have measured to determine there's a fault here?