No color output from B0429 camera on Jetson Orin Nano

Hey everyone, I’m having trouble getting my Arducam B0429 (AR0234) camera working with the ISP pipeline on a Jetson Orin Nano. I’ve got a single module connected to the CAM1 port, and the driver was installed following the official Arducam Wiki guide.

When I try to run the ISP pipeline test:

gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM),width=1920,height=1080,framerate=30/1' ! fakesink num-buffers=150 -e

I get this error:

no cameras available

The Jetson is running headless and I’m accessing it via SSH from my MacBook Pro. Any ideas what’s going on? I can see the camera at /dev/video0 so the hardware seems to be detected at some level, but nvargus just won’t pick it up.

Thanks for reaching out. I’ve taken a look at what’s happening here and I believe the root cause is a device tree overlay mismatch.

Check your /boot/extlinux/extlinux.conf file. It’s likely configured with a dual-camera overlay:

tegra234-p3737-camera-dual-hawk-ar0234-e3653-overlay.dtbo

Since you only have a single B0429 module connected, this dual-camera overlay doesn’t match your actual hardware configuration, and that’s why nvargus-daemon is failing to recognize the camera.

The V4L2 layer (/dev/video0) can still see the sensor because it operates at a lower level, but the Argus ISP stack needs the correct device tree configuration to initialize properly.

Could you post a couple photos of your Jetson Orin Nano — one of the top and one of the back — so I can see how everything is connected? That’ll help me suggest the right overlay for your setup.

Thanks for the quick analysis — that overlay mismatch makes a lot of sense.

Here are the photos of my setup:

Jetson Back

Jetson Top

To confirm the environment:

  • Single B0429 module connected to CAM1 port
  • NVIDIA Jetson Orin Nano, headless, accessed via SSH from MacBook Pro
  • Driver installed per the official Arducam Wiki guide
  • Device tree overlay currently set to the dual-camera one you mentioned
  • V4L2 device is /dev/video0 with capture format GRAY16_LE

So here’s where I’m at — I’ve actually been able to get a grayscale stream working through V4L2. Here’s my current pipeline:

  1. Capture from /dev/video0 via V4L2 in GRAY16_LE format
  2. Use videoconvert to convert to I420
  3. Encode with x264enc
  4. Send via RTP/UDP to my MacBook
  5. Receive and display on the MacBook using a GStreamer pipeline

That works fine but it’s grayscale only — no color.

So my questions are:

  1. Is software-only color demosaicing possible on the Jetson Orin Nano for the B0429, and can I stream that via RTP?
  2. Is there a recommended V4L2/GStreamer pipeline or an Arducam library/example for getting color streaming working?
  3. If the B0429 just can’t do color on this platform, is there an alternative camera module you’d recommend that properly supports the NVIDIA ISP on the Jetson Orin Nano for color video streaming?

Good to see the grayscale pipeline is working — that confirms the sensor itself is fine and the V4L2 driver is doing its job. Unfortunately, the color situation with the B0429 on Jetson is where things hit a wall.

Here’s the core issue: the B0429 (AR0234) is a raw Bayer sensor. It needs an ISP to handle debayering and color recovery. On the Jetson platform, that job is meant to be done by the hardware ISP exposed through Argus (nvarguscamerasrc). But the Argus stack simply doesn’t support this particular sensor driver — hence the “no cameras available” error, and even if you fix the device tree overlay, you’re not going to get Argus to process frames from this sensor.

As for your specific questions:

1. Software demosaicing on the CPU?

Not viable here. Purely software-based debayering on the Jetson’s CPU for real-time video isn’t supported or efficient in this pipeline. You’d need something like a properly integrated ISP pipeline, and the B0429 doesn’t have one on this platform. So software demosaicing for color output is effectively not possible with the B0429 on Jetson — you’re limited to RAW/grayscale.

2. Recommended pipeline or library?

There isn’t one that would unlock color for this combination. The V4L2 path you’re already using is as good as it gets for this sensor, but it’ll always deliver raw Bayer data (which shows up as grayscale unless something downstream debayers it — and as explained, that’s not practical here).

3. Alternative camera for color streaming?

For color video streaming on the Jetson Orin Nano, I’d recommend the Arducam XISP Swift camera series. These cameras have an on-board ISP that handles all the color processing and exposure control before the data even reaches the Jetson. That means you get a proper color stream without needing the NVIDIA ISP (Argus) at all — it bypasses the whole problem.

You can find it here: Arducam xISP - Swift, Pre-tuned ISP, Global shutter 2.3MP MIPI Camera for NVIDIA® Jetson™ ORIN™ NX / Orin™ Nano / Renesas RZ/V2H

TL;DR: The B0429 (AR0234) is a raw sensor and can’t leverage the Jetson’s hardware ISP. CPU-side debayering isn’t practical for real-time video. For color streaming on Jetson, you’ll want a camera with an on-board ISP like the XISP Swift. The grayscale V4L2 pipeline you’ve already got working is the best you’ll get out of the B0429 on this platform.