Arducam UC-599 not showing /dev/video0 on Jetson Nano after driver install

Hi, hoping someone here can help me out. I’m running a Jetson Nano B01 with an Arducam SPI camera, model UC-599. I followed the driver installation guide on the Arducam site for the MIPI camera modules for Jetson Nano (the driver-installation page) step by step.

When I connect the camera to the Jetson Nano I measure 3.2V, so it’s clearly getting power. But after finishing the Arducam driver installation, I check the camera with ls /dev/video0 and nothing appears — it just says “No such file or directory”.

I’ve honestly never got this camera to work at all. Any idea what I’m doing wrong?

Welcome! Let’s dig into this. A couple of things to confirm first.

  1. Can you check the exact model number printed on the camera board itself? There are a few SPI camera variants that physically look almost identical but they use different drivers (B0165 vs B0233), so it matters a lot when you’re on a Jetson.

  2. Can you reboot the Jetson and then run the bug report tool so we can see the whole system state? Commands below:

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

That should output an arducam-bug-report.txt in the current directory. Please attach that file here and I’ll take a look.

Okay, I ran those commands. Problem is the arducam-bug-report.txt comes out completely empty — 0 bytes — so there’s nothing useful in it to attach. Here’s exactly what I ran:

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

For what it’s worth, I’ve already tried a bunch of stuff: unplugging and plugging the camera back in with the SPI connection, restarting the Jetson Nano multiple times, and even downloading the driver package again and reinstalling. Still the same. The board says UC-599 on it.

An empty bug report usually means the script couldn’t collect anything at all, which itself is a bit of a clue. Let’s gather the same info manually instead. Can you run these and paste the output?

lsmod | grep -i arducam
dmesg | grep -i -E 'arducam|ov9281|i2c'
ls /dev/video*
i2cdetect -y 7
i2cdetect -y 8
i2cdetect -y 9
i2cdetect -y 10

Also please double-check the physical side: the ribbon/adapter is fully seated in the CSI connector and the orientation is right (contacts facing the correct way), and the camera board has power with no bent pins. If any of those dmesg or i2cdetect commands return nothing, tell me that too — no output is still useful info.

Ran them all. Basically nothing comes back:

  • ls /dev/video* returns nothing — there are no video nodes at all.
  • dmesg | grep -i -E 'arducam|ov9281|i2c' shows no mention of arducam or ov9281 anywhere.
  • i2cdetect doesn’t detect any device on any of the buses I tried.

I’ve re-seated the SPI ribbon a few times and restarted the board more than once, so I don’t think it’s a loose connection. I’m attaching a screenshot that shows this camera is listed as supporting the Jetson Nano driver, so from my side it really looks like it’s supposed to work.

Two side questions while I’m here: 1) I can’t find FSIN on the circuit — where exactly is the input for the External Trigger on this camera? A picture of where it is would help me decide. 2) Can the OV9281 be linked to the Jetson Nano through a jetvariety adapter board, and is that adapter board sold separately?

Thanks, that all helps. About the V4L2 listing — the V4L2 “frame” is shared across variants, so the listing can look like it covers your board even though the actual driver differs. The B0165 and B0233 look the same but are driven differently.

From what you’ve described (power present at 3.2V, no /dev/video node, nothing in dmesg, no i2c device detected), the camera you have is the B0165, and that variant is built for Raspberry Pi — it isn’t compatible with the Jetson Nano. To use this style of camera on the Jetson you’d need the B0223 variant, which is the one with the Jetson-compatible driver.

Let me confirm the external trigger and the adapter board question with our team before I give you a definitive answer, since it involves a specific board revision.

I’m sorry, but that doesn’t line up with what’s advertised. The product is listed as V4L2 driver compatible with Jetson Nano hardware. If the V4L2 driver supports the Jetson Nano, then this camera should work with the Jetson Nano driver — that’s the reason I went with it. I followed the driver installation guide exactly, and I’m still measuring 3.2V on the camera when it’s connected, so the hardware isn’t dead. I don’t think “wrong variant” fully explains it.

I hear you, and I get why the listing is confusing — the V4L2 part is common across the variants, but V4L2 support alone doesn’t mean the driver binary matches. The B0165 and B0233 use different drivers even though the V4L2 frame is listed the same, and on the Jetson the B0165 won’t create a /dev/video node no matter how many times you reinstall. That matches exactly what you’re seeing: no node, nothing in dmesg, no i2c device.

On your two side questions, here’s the answer:

  1. The jetvariety adapter board is NOT sold separately. It’s been merged with the camera module into a single combined board, so you can’t buy the adapter on its own to link a standalone OV9281 module to the Jetson Nano that way.

  2. The combined board is the one that supports the External Trigger Global Shutter Camera, and that’s where the trigger input lives. On the older separate-module arrangement the FSIN isn’t broken out the way you’d expect, which is why you can’t find it on the circuit.

So to summarize where this landed:

  • Your board is the B0165, which is Raspberry Pi oriented and won’t produce a video node on the Jetson Nano — this is why ls /dev/video0 gives “No such file or directory” despite the 3.2V you measured.
  • For Jetson Nano use you’d need the B0223 variant instead.
  • The jetvariety adapter board is no longer a standalone part; it’s integrated into a single combined board that also supports the External Trigger Global Shutter Camera.
  • The empty bug report, no dmesg entries and no i2c devices are all consistent with a driver/variant mismatch rather than a wiring or power problem.

If you want to go the Jetson route, the B0223 is the part that matches the driver you installed. Let me know and I can point you to the exact driver steps for that one.