Hi all. I’m trying to get libcamera working on my Raspberry Pi 4 with an Arducam camera and a Camarray HAT, but the install script keeps failing with a package error.
Cannot find the corresponding package, please send the following information to [email protected]
Hardware Revision: c03115
Kernel Version: 6.1.0-rpi4-rpi-v8
Package: libcamera -- bookworm
The wget part seems fine and chmod gives no output, but I get the same kind of error trying to install the libcamera apps and drivers too. Any ideas?
That “Cannot find the corresponding package” error means the Arducam camera driver hasn’t been released for bookworm yet. The script looks for a matching libcamera package for your kernel/OS combination and can’t find one.
Your best bet right now is to reflash to bullseye with kernel 6.1.21. The camera driver is available there, but not on bookworm.
Once you’ve reflashed to bullseye (kernel 6.1.21), run the same install script again and it should be able to find the packages.
Thanks for that. I reflashed to bullseye and now the install scripts complete without errors. But when I try to actually capture, I get “no cameras available”:
libcamera-still -t 5000
libEGL warning: DRI2: failed to authenticate
Made X/EGL preview window
[0:17:19.404292390] [2404] INFO Camera camera_manager.cpp:297 libcamera v0.0.0+4367-ad9428b4
ERROR: *** no cameras available ***
Your config.txt has several camera overlays enabled at the same time, and they conflict with each other. You’ve got imx477, imx219, and arducam-pivariety (twice) in there. Only one should be active, and it has to match the camera module you actually have connected.
If you’re using an imx219: delete the imx477 and arducam-pivariety lines
If you’re using an imx477: delete the imx219 and arducam-pivariety lines
If you’re using a pivariety camera: delete the imx219 and imx477 lines
Also remove the duplicate arducam-pivariety entry. Then reboot the Pi and try libcamera-still again.
Right, I cleaned up the overlay mess. I’m now on a fresh bullseye legacy image with a 64MP autofocus camera. The preview window appears, but it’s just black, and libcamera-still keeps looping with timeout errors.
That “Dequeue timer expired” + “Camera frontend has timed out” loop can be caused by a few things - power, the sensor, or something else holding the camera. To narrow it down, can you generate a bug report for me?
Got the report, thanks. Looking through the logs, it seems the camera driver is being occupied by another process - that would explain the timeouts even though the sensor is detected.
Is there any Python code, script, or another program that might be driving the camera in the background? Sometimes a leftover process from an earlier test keeps a hold on /dev/video0.
No, I don’t have anything like that running. I’ve only been installing packages via the terminal commands from earlier in the thread. I haven’t run any Python or other program to drive the cameras. Should I be driving them with Python instead?
It’s not that you need Python - it’s more that something else appears to have grabbed the camera resource. Let’s find out what. Can you run this and paste the output here?
ps -ef | grep arducam
That should show us which process (if any) is holding the camera. Once we know what’s occupying it, we can sort out the timeout loop.