Arducam IMX519 camera not detected by OS when used in project

Hi everyone, I recently got an Arducam IMX519 camera for a Raspberry Pi project, but the OS doesn’t detect it at all. I’ve re-seated the ribbon cable a few times and still nothing shows up. Any idea where to start?

Thanks for the report. Before we dig into the config, can you generate a diagnostic report so I can see the camera/system state? Please reboot the Pi first, then run:

wget -O arducam-camera-bug-report https://github.com/ketai-dhr/arducam-camera-bug-report/releases/download/tools/arducam-camera-bug-report
chmod +x ./arducam-camera-bug-report
./arducam-camera-bug-report

This creates an arducam-bug-report.txt file in the current directory. Please send me that file via private message so I can take a look.

I’ve run the tool and sent you the arducam-bug-report.txt through PM. Any update on what’s going on?

Thanks, I checked the report. Your config.txt has two dtoverlay=arducam-pivariety entries plus a dtoverlay=imx477 entry, and none of those match the IMX519. Please delete both arducam-pivariety lines and change dtoverlay=imx477 to dtoverlay=imx519, then reboot. The camera needs the imx519 overlay to be detected.

I made those changes - removed the two pivariety lines and switched imx477 to imx519 - then rebooted, but the camera still isn’t showing up. I’ve generated a fresh bug report and sent it over.

Thanks, I’ve looked at the new report. Since the overlay changes didn’t help, I’m starting to suspect the physical connection rather than the software side. Could you post photos of the connection at both ends - the camera side and the Raspberry Pi side?

Here’s a photo of the connection at both ends.

Thanks for the photo. Looking at it, you’re actually using an Arducam-64MP camera, not the IMX519. So the dtoverlay=imx519 we just added is the wrong driver for this hardware. Please remove the dtoverlay=imx519 line from config.txt, then install the Arducam-64MP camera driver following the guide here:

https://docs.arducam.com/Raspberry-Pi-Camera/Native-camera/Quick-Start-Guide/#arducam-pi-hawk-eye-64mp-cameras

Okay, after installing the 64MP driver the camera is now detected, but the stream only opens for a very short time and then stops. I’ve sent the new report and some screenshots.

Good, detection is sorted. The short stream is likely a memory issue - the Pi has trouble storing full-resolution 64MP images. Try capturing without preview to free up memory:

libcamera-still -t 5000 -o test.jpg -n

By the way, in one of the screenshots there’s a line across the image - is that the object you’re shooting or a camera error?

I ran that command but I still get the error and can’t save a picture. The line you mentioned is just my display, not the camera.

Let’s try smaller resolutions to stay within the Pi’s memory limits. Run these:

libcamera-still -t 5000 -o test_don.jpg -n --width 8000 --height 6000
&
libcamera-still -t 5000 -o test_don.jpg -n --width 4624 --height 3472

The 4624x3472 option is worth trying if 8000x6000 fails.

I ran both commands and got no errors in the output, but the image isn’t saved anywhere - I searched the whole filesystem and can’t find test_don.jpg. I’ve attached the command output.

I see the problem - the command you ran is missing the -o parameter, which tells libcamera-still where to write the output file. Double-check against these:

libcamera-still -t 5000 -o test_don.jpg -n --width 8000 --height 6000
&
libcamera-still -t 5000 -o test_don.jpg -n --width 4624 --height 3472

Make sure -o test_don.jpg is included.

That did it - camera’s working now, thanks!

One more thing: I can’t take a picture at high resolution. This command gives errors:

libcamera-still -t 5000 -o test_don.jpg -n --width 8000 --height 6000

I’ve sent the error and a fresh bug report.

This is the memory constraint again - previewing and saving at the same time uses too much memory on the Pi. Use the -n flag to close the preview so memory is available for capture:

libcamera-still -t 5000 -o test_don.jpg -n --width 8000 --height 6000

Okay, I ran that command on Friday and it works.

Just to confirm for my project - was the root cause found? I need to document this.

Since you confirmed the command worked on Friday, I’ll close this out. To summarize the remaining screenshot guidance: the goal is to store the image, and previewing uses memory that capture needs, so always close the preview with -n. To store an image:

libcamera-still -e jpg -o test7.jpg --width 8000 --height 6000 -n

If you want to preview first:

libcamera-still -t 0

Then keep the camera fixed and run the capture command above to store the image. Separating the preview step from the capture step avoids the memory problem.