Hi everyone. I have an Arducam B0425 (IMX327 native camera) on a Raspberry Pi 3 B, but I can’t get it detected by libcamera at all. When I try to start libcamera I get:
ERROR: *** no cameras available ***
I already followed the quick start guide and the troubleshooting guide on the Arducam site, but the camera never worked. One thing I noticed is that my configuration doesn’t have the GL acceleration option mentioned in the guide, so I’m not sure if I missed something there or if that even matters.
For the IMX327 native camera, adding the dtoverlay line in config.txt should be enough to configure it. The GL acceleration option isn’t required for the camera itself, so don’t worry about that.
Could you reboot the Pi and run this, then paste the output here:
dmesg | grep imx
That will tell us whether the imx sensor driver actually got loaded.
Thanks, that’s helpful. I can already see a problem. It looks like there are two dtoverlay lines for cameras in your config - imx462 and imx290. The Pi can’t determine which camera module is actually connected when both overlays are present, so the driver never loads and /dev/video0 never gets created.
Could you paste the full contents of /boot/firmware/config.txt so we can see the exact layout?
This is actually two overlay sentences merged together on one line. The Pi ends up with both the imx462 and imx290 overlays present, so it can’t tell which camera module is connected and the sensor never gets initialized.
For the B0425 / IMX327, you need to remove the incorrect part. Edit /boot/firmware/config.txt and delete this:
dtoverlay=imx462
Keep only the correct line for your camera:
dtoverlay=imx290,clock-frequency=37125000
After that, reboot and check with ls /dev/video0 and dmesg | grep imx again.
Thanks, it worked. It was a typo. The camera is detected now.
Since it’s working, I have a follow-up question. I want to restream the camera image on my local network - basically use this camera module plus the Raspberry Pi as a remote WiFi security camera. Is there a recommended demo or setup for that?
Just to explain what I’m trying to do: the IMX327 works fine with the libcamera application and the low-light image is really good. But my goal is a security camera. I originally planned to run MotioneyeOS like I do with my other Raspberry Pi cameras, but the camera wasn’t recognized. I’ve tried several pieces of software to capture video and stream RTSP to an NVR (Frigate or Motioneye), but they all have issues reading the output format from this camera. Right now only libcamera can display the image.
The only workaround I found is streaming the whole desktop with ffmpeg and mediamtx while libcamera is open, but it’s extremely slow - basically useless. Any ideas?
I understand the situation. To set expectations, as the hardware vendor our responsibility is making sure the camera works with the Raspberry Pi through standard interfaces like libcamera. Integrating it into a specific security/NVR solution is outside our scope, so we can’t provide direct support for third-party software like MotioneyeOS or Frigate.
The core issue here is that those third-party applications don’t support the libcamera/IMX327 output, which is why the camera only works through libcamera itself.
A few options you could explore:
Contact the developers of the security software and ask if they plan to support libcamera or the IMX327 sensor.
Look at open-source projects that already support libcamera and build the security camera setup around one of those.
If you have programming experience, write a custom solution using the libcamera API and feed the stream into your NVR yourself.
There isn’t a simple config fix on our side for this one, unfortunately - it depends on the software ecosystem supporting libcamera.