Libcamera-still command not found on Raspberry Pi when testing OV5647 AF tuning file

Hi everyone, I’m trying to test an OV5647 Motorized Focus Camera on my Raspberry Pi. I’ve got the camera connected and I’m following the tuning instructions, but the libcamera-still command isn’t found at all.

Here’s exactly what I ran:

libcamera-still -t 0 --tuning-file /usr/share/libcamera/ipa/rpi/pisp/ov5647_af.json

And what I get back:

bash: libcamera-still: command not found

I can’t even get to the point of testing the camera with the OV5647 AF tuning file. Any ideas what’s going on?

Thanks for the details. That command not found error means the libcamera-still binary isn’t available in your current environment, so the camera test never actually starts. Can you tell me which Raspberry Pi model and OS you’re on? If you run:

cat /etc/os-release

and

uname -a

that would help. Also, if you have access to a Raspberry Pi 4, it would be worth trying the same command there to see whether this is OS-related or specific to your current board.

Here’s what I’m running: Raspberry Pi OS Bookworm (Debian 12). I don’t have a Raspberry Pi 4 to test with, and I actually don’t have any other Pi boards available, so I can’t try it on a 4. I assumed libcamera was the default camera stack on newer OS versions, so I’m a bit surprised the command isn’t there.

That’s the root cause. The libcamera-still command is not present on Bookworm, and the camera/libcamera workflow for the OV5647 Motorized Focus Camera isn’t compatible with it. The supported setup is Bullseye OS, not Bookworm. On a Raspberry Pi 4 you’d flash Bullseye and follow the Arducam Quick Start Guide here:

https://docs.arducam.com/Raspberry-Pi-Camera/Motorized-Focus-Camera/Quick-Start-Guide/OV5647-Motorized-Focus-Camera/

The command you referenced (libcamera-still -t 0 --tuning-file /usr/share/libcamera/ipa/rpi/pisp/ov5647_af.json) comes from that guide, but it will keep failing with command not found as long as you’re on Bookworm.

Thanks, that makes sense. Unfortunately I don’t have a Raspberry Pi 4 — the only board I have is a Raspberry Pi 5, along with the camera. I’m willing to try to get the camera working on the Pi 5 if there’s any way. Is there a Bullseye image that works on the Pi 5, or is the Pi 5 a problem too?

The Pi 5 changes the picture a bit. On the Pi 5, camera support is tied pretty tightly to the kernel version, and we’re seeing instability/incompatibility with certain kernel versions affecting camera operation. We have a kernel version working on our side, but I can’t say yet why your Pi 5 isn’t landing on that same working version.

I’ve tried updating to the latest kernel and it still doesn’t help. What kernel version are you testing with? Is there anything else I can try right now, or am I basically stuck waiting?

Right now there’s no immediate fix. The camera support on the Raspberry Pi 5 depends on a stable kernel version from Raspberry Pi that hasn’t been released yet, so until that drops, the camera behavior on the Pi 5 is going to be hit or miss. To sum up where we are:

  • The original bash: libcamera-still: command not found error is because you’re on Bookworm, which doesn’t have libcamera-still for this workflow.
  • On a Pi 4, the fix would be to flash Bullseye and follow the Arducam guide I linked.
  • Since you only have a Pi 5, the blocker is the kernel — we’re waiting on a stable Raspberry Pi kernel release before camera operation will be reliable on the Pi 5.

I’ll post back here when there’s more info on the kernel release.