Libcamera on RPi3


I’m trying to create a system based on nerves_system_rpi3 that supports libcamera and rpicam-apps (formerly libcamera-apps). The camera I’m testing on is ov5647.

I enabled the libcamera and libcamera-apps for buildroot and they are correctly present on the target. Then I stumbled upon a problem that running any app (like libcamera-vid) failed with ERROR: the system appears to be configured for the legacy camera stack. After some modifications to config.txt and fwup.conf I managed to get rid of the error, however now the camera isn’t being recognized - running cmd "libcamera-vid --list-cameras" prints “No cameras available!”. The change happens when setting or unsetting camera_auto_detect=1 in config.txt.

Minimal changes to achieve my results:


+ camera_auto_detect=1

+ on-resource vc4-kms-v3d.dtbo { fat_write(${BOOT_(A|B)_PART_OFFSET}, "overlays/vc4-kms-v3d.dtbo") }
+ on-resource ov5647.dtbo { fat_write(${BOOT_(A|B)_PART_OFFSET}, "overlays/ov5647.dtbo") }
+ on-resource i2c-mux.dtbo { fat_write(${BOOT_(A|B)_PART_OFFSET}, "overlays/i2c-mux.dtbo") }
(3 times to cover all sections)

Have anyone encountered a similar problem? If so some help would be greatly appreciated :slight_smile:


I forgot to mention in the original post, but when getting “ERROR: the system appears to be configured for the legacy camera stack” there exists /dev/video0, which I presume is the camera, and when I’m getting “No cameras available!” error this file doesn’t exist.