Hey everyone, I’m stuck with my Arducam USB3.0 Camera Shield + IMX586 48MP (B0478) on Windows 11 x64. It was working fine at first — I was able to capture full-res images using the Arducam USB Camera Shield Python SDK, following the official docs. Then suddenly it stopped. Now I can only use it as a standard UVC webcam capped at 4K, and the SDK won’t let me access the full 48MP sensor anymore.
I’ve been digging around trying to find the .json configuration file for the IMX586 sensor in the installed SDK packages and in the online docs, but it’s nowhere to be found. Does anyone know where this file lives, or if it even exists? Am I missing a download?
Welcome to the forum! A few things to help narrow this down:
Which version of the Arducam SDK are you using?
When you say the camera “stopped working” with the SDK — what error do you get? Does the script fail to detect the camera entirely, or does it connect but refuse to capture at full resolution?
Have you tried reinstalling the SDK or drivers since the issue started?
The .json config files are sensor-specific and not all of them are bundled in the public SDK package, so that might explain why you can’t find the IMX586 one.
SDK version is whatever the latest was on the Arducam GitHub when I set this up a few weeks ago. I also pip-installed the Python bindings as per the docs.
The camera is detected, but when I try to capture at anything above 4K, it either fails silently or returns a frame at UVC max resolution. It’s like the SDK can’t switch the sensor into full-res mode anymore.
I haven’t done a full reinstall yet — wanted to understand what broke before nuking everything.
One thing I tried: I found some .cfg files in the SDK (looked like they were for other camera models) and tried loading those with the Python API just to see, but they were incompatible — threw errors about sensor mismatch. So yeah, I really need the IMX586-specific config. Anyone have a copy or know where it’s supposed to be?
Okay, this is actually a known point of confusion with the IMX586 on the USB3 shield. The .json configuration file for that specific sensor is not included in the public SDK package — so you’re not missing anything, it simply isn’t distributed that way.
But here’s the thing: you don’t actually need a separate .json config file to capture full 48MP stills. The Python OpenCV demo script (arducam_demo.py) that comes with the SDK supports specifying the capture resolution directly via command-line arguments, bypassing the need for external config files entirely.
-F : capture a single still frame (not continuous video)
-W 8000 : capture width set to 8000 pixels
-H 6000 : capture height set to 6000 pixels
-d 1280:720 : preview/display resolution at 720p (keeps the preview window responsive)
-o test.jpg : output filename
The -W and -H flags directly tell the camera what resolution to capture at, so you’re not relying on any config file. The -d flag just controls the live preview — it doesn’t affect the final captured image.