IMX708 B0310 camera not detected by Raspberry Pi 5, probe fails

Hey everyone, hoping someone can help me out. I just got an Arducam B0310 (the IMX708 camera module) and I’m trying to get it working with my Raspberry Pi 5, but no luck so far.

Whenever I run rpicam-hello I get:

no cameras available

I checked dmesg and I can see the camera module ID “0x0301” is being picked up, but right after that I’m seeing:

arducam-pivariety 11-000c: probe failed

I’ve been following the instructions on the Arducam docs page for the 12MP IMX708 — specifically the section for Raspberry Pi Zero to Pi 3. Not sure if that matters since I’m on a Pi 5. I’ve tried installing some packages but honestly I’m not sure what I’m doing wrong. The camera has never been detected since day one.

Anyone seen this before? Is there something different I need to do for Pi 5?

Welcome to the forum! A couple of things stand out to me right away.

First, you mentioned you’re following the instructions for Pi Zero to Pi 3, but you’re running a Raspberry Pi 5. That could definitely be part of the problem — the Pi 5 handles camera detection a bit differently than the older models, so the setup steps aren’t necessarily the same.

Before we dive into software fixes, let’s get a clear picture of what’s going on. Can you do two things for me?

Step 1 — Hardware photos:
Can you take clear photos of:

  • (a) The ribbon cable connection on the camera board itself
  • (b) The ribbon cable connection on the Raspberry Pi

Step 2 — Diagnostic log:
Run these commands to generate a full diagnostic report:

sudo reboot
wget -O arducam-camera-bug-report https://github.com/Dion4cen/arducam-camera-bug-report/releases/download/Tool/arducam-camera-bug-report
chmod +x ./arducam-camera-bug-report
./arducam-camera-bug-report

That last command will create a file called arducam-bug-report.txt in your current directory. Please attach that file along with the photos. That’ll give me a full view of your software configuration and we can go from there.

Thanks for the quick reply! Here’s everything you asked for.

Problem recap:

  • IMX708 (B0310) not detected by Raspberry Pi 5
  • rpicam-hello → “no cameras available”
  • dmesg | grep -E "imx708|arducam" shows module ID 0x0301 detected, but then arducam-pivariety 11-000c: probe failed
  • Following the Pi Zero–Pi 3 instructions from the Arducam docs

Diagnostic log:
arducam-bug-report.txt

Connection photos:

Camera board side:
IMG_7565
IMG_7566

Pi side:
IMG_7567
IMG_7568

Let me know if you spot anything off!

Okay, I’ve gone through your diagnostic report and photos — and I found the issue.

What’s happening:

Your camera is plugged into the CAM 1 port on the Pi 5, which is fine physically. The problem is all in your config.txt. You have both the arducam-pivariety overlay and the imx708 overlay enabled at the same time:

  • dtoverlay=arducam-pivariety
  • dtoverlay=imx708

These two drivers conflict with each other. When both are active, the kernel tries to probe both and they step on each other’s toes — that’s exactly why you’re seeing arducam-pivariety 11-000c: probe failed in dmesg. The IMX708 is a native Raspberry Pi camera that uses the standard imx708 overlay. The arducam-pivariety overlay is meant for an entirely different type of camera module and should not be enabled here.

The fix:

Edit your /boot/firmware/config.txt and make sure only the imx708 overlay is active. Remove or comment out the arducam-pivariety line. It should look like this:

dtoverlay=imx708

Here’s a screenshot of what needs to change:

config.txt changes

After saving, reboot:

sudo reboot

Then test with:

rpicam-still -t 0

You should see a preview window pop up. The key takeaway here is: one camera, one overlay. Having both enabled is what’s been causing the probe failure all along.

Thank you so much — it worked!!

Removed the arducam-pivariety line, kept only dtoverlay=imx708, rebooted, and the camera came right up. rpicam-still -t 0 shows the preview window perfectly.

Really appreciate the help. I had no idea having both overlays in there would cause a conflict like that. Hopefully this thread helps someone else who makes the same mistake!