Arducam IMX219 cameras not detected on Waveshare Jetson Nano after flashing JetPack 4.6

Hi everyone,

I’m stuck getting my cameras detected on my Jetson Nano. I’m running a Waveshare JETSON-NANO-DEV-KIT (https://www.waveshare.com/wiki/JETSON-NANO-DEV-KIT and neither of my cameras shows up.

I flashed the kit with JetPack using SDK Manager. Weird thing: when I flashed 4.6.1 I could actually see /dev/video0 and /dev/video1, but after flashing 4.6 the devices just don’t appear at all. Nothing in /dev/video*.

The cameras I’m trying:

  • Arducam MINI IMX219 camera module for Jetson Nano/Xavier NX (SKU: B0342)
  • Arducam IMX219 Low Distortion IR Sensitive (NoIR) M12 Mount Camera Module for NVIDIA Jetson Nano (SKU: B0187)

I already got a reply from Waveshare and they say it should work. Is there some workaround from the Arducam side? Anyone seen this 4.6 vs 4.6.1 difference?

Thanks!

Hi, thanks for the detailed report.

A quick clarification first: there’s no real difference between our IMX219 and the official IMX219 module. Our main advantage is that the lens is replaceable, so we can treat your question essentially as if it were the official IMX219.

One important caveat: we don’t work with Microsnow, and all of our testing is done on the official Jetson development board. So for third-party hardware we can’t give a 100% guaranteed solution - but we can still help.

The fact that 4.6.1 shows /dev/video0 and /dev/video1 while 4.6 shows nothing is a useful clue. To diagnose it, can you send us the dmesg output from the device? We can look at the errors there and narrow it down even on the official dev board.

Please show the dmesg information on the device and paste it here.

Ok, update from my side - I connected the cameras to a Nano developer kit and it still doesn’t show anything.

When I run:

nvgstcapture-1.0

the output says “no cameras available”.

Any update on this? Still stuck with the same detection issue.

Sorry for the slow reply, I’m still looking into this for you.

Before we go further I need the diagnostic data. Please generate an Arducam bug report - this collects the system and camera info we need to figure out why the camera isn’t being detected.

Reboot your device first, then run:

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

This will output an arducam-bug-report.txt in the current directory. Please send that file as an attachment here. Also, if you can, send a new picture/diagram of the hardware connection - it helps us see how the CSI cables are routed.

If you already ran it, just attach the file again so I’m sure I have the latest one.

Here you go. Please see the attached picture of the nano kit and also the bug report file (arducam-bug-report.txt).

Let me know what you find in it.

Good news - according to the report, your camera IS detected. So the connection and detection look fine on the system side.

Next step: let’s run the documented setup commands for the IMX219 and see if it actually initializes. Please follow the commands on this page:

https://www.arducam.com/docs/camera-for-jetson-nano/native-jetson-cameras-imx219-imx477/imx219-8mp-camera/

If any step reports an error, send me a screenshot of the exact error message so I can take a look.

Ah, I think there’s a mix-up. The camera you saw detected is a USB camera (UB020201) that I also had connected to the Nano - that’s not the one I’m trying to get working. Sorry, should have mentioned that.

I’ve now removed the USB camera. Please see the attached screenshot for the output of:

v4l2-ctl --list-formats-ext

Also please check the latest report file I attached earlier - that should reflect the current setup.

Thanks for clearing that up.

Looking at what you sent, I have to be honest - I’ve never seen a CSI interface like the one in your setup, and the fact that the camera gets tested 4 times isn’t normal. On the official Jetson Nano development kit the CSI is usually buses 7 and 8 (<-> i2c buses).

So a couple of questions:

  1. Is the system you installed actually the official one?
  2. If possible, do you have an official IMX219 camera you could test with, just to see if it works? That would help us isolate whether it’s the module or the platform.

I only have these two cameras and no others. I’ve tried checking them on 2 different kits and they still don’t get connected.

So I can’t test with an official IMX219 - these are all I’ve got.

Understood.

Looking at everything so far, there’s something weird going on with your system - I’ve attached an image pointing at the part that looks off (it’s around the repeated camera-enable behavior).

If you’re sure both the device and the system are official, then this is really something to check with the official (NVIDIA) source. I’m happy to ask them on your behalf if you confirm the device and system are official.

Can you confirm that?

Yes, it is official. You can ask.

I went ahead and asked NVIDIA on your behalf.

Please join the discussion here so you can follow up directly and add any logs they ask for:

https://forums.developer.nvidia.com/t/enables-the-camera-four-times/228273

Note the thread title references the camera being enabled four times - that matches the abnormal repeated camera-enable behavior we saw earlier. Please post your setup details and the report there.

I replied in the NVIDIA forum. Here’s what I posted:

“That’s not actually 4-times to enable the same camera, it’s looking for imx219 at four different i2c buses but all return with probing failure. May I know what camera module you’re using?”

Waiting to see what they say.

I read your reply in the forum thread - nice description of the probing behavior, that helps a lot. I’ll keep an eye on it daily and follow up there.

In the meantime, can you send me a couple more outputs? Please reboot your device first and then run the commands below, because after prolonged use dmesg gets very messy and hard to read:

dpkg --list
dmesg

Attach both outputs here. And can you confirm again whether your system was installed by official means? Just want to be sure before I dig further.

Can you explain what you mean by “official”? Not totally sure what you’re asking for.

I installed the JetPack using SDK Manager, if that’s what you mean.

Please see the attached output files for dpkg --list and dmesg. And below is the reply that’s now in the forum:

“That’s not actual 4-times to enable same camera, it’s looking for imx219 at four different i2c buses but all return with probing failure.”

By “official” I mean your system’s device tree - the directory it’s currently using isn’t the official one. SDK Manager can also install third-party/custom system images, so flashing through SDK Manager doesn’t by itself guarantee it’s an official build. I’ve attached screenshots showing the device tree / system part that looks non-standard.

So the recommended path here: burn an official Jetson system image and test the camera on that. That will rule out a non-official system as the cause of the CSI detection and i2c probing failures.

Summary of where we are:

  • Camera/module itself is being detected, but your CSI interface (4x bus probing failures) and device tree don’t match the official Nano configuration (official CSI is usually buses 7 and 8).
  • USB camera UB020201 detects fine, so this is specific to the CSI IMX219 path.
  • The repeated camera-enable behavior has been escalated to NVIDIA’s developer forum.
  • Next action on your side: flash an official Jetson image and test again; if it still fails on a confirmed official system, we’ll continue from the forum thread with NVIDIA. Send me the results once you’ve tried the official image.