Hi everyone, running into a frustrating issue with the Arducam B0579 (AR0234 Global Shutter) on a Jetson Orin Nano 8GB Dev Kit. We bought 4 units for a product evaluation.
Setup:
Jetson Orin Nano 8GB
Two B0579 cameras connected
Driver installed with the arducam_4lane option
Both cam0 and cam1 show up under ls /dev/vi*, so they’re detected at some level. But only cam0 can actually capture images. Cam1 is visible in the device list but any attempt to grab a frame just fails silently.
I spoke to another camera supplier and they mentioned that for dual-camera setups on the Orin Nano, you need a 2-lane option in the driver. I looked through Arducam’s driver list and couldn’t find any 2-lane option for this camera. Is there one I’m missing? Anyone else hit this?
Thanks for the detailed report. Let’s narrow this down. Can you confirm which physical CSI ports on the Orin Nano carrier board each camera is connected to? And when you say cam1 can’t capture, are you getting a specific error, a timeout, or just a blank/black frame? Also, could you share the output of:
v4l2-ctl --list-devices
That’ll help us see how the system is enumerating both cameras.
Yeah so CAM0 is on the first CSI connector (the one closer to the edge of the board) and CAM1 is on the second connector. That’s the only way they fit physically.
When I try to capture from cam1, I don’t get a specific error code — the capture pipeline just hangs or times out. With v4l2-ctl I can query the device and see the formats listed, but actually streaming frames doesn’t work.
So both enumerate. But only /dev/video0 actually works for capture.
I also checked ls /dev/vi* and see both video0 and video1 nodes there. The other supplier I talked to said on Orin Nano, the second CSI port only has 2 data lanes routed, so cameras that need 4 lanes won’t work on that port unless the driver supports a 2-lane fallback mode. Arducam’s driver list only shows the 4-lane option. Is there a 2-lane mode hidden somewhere?
Alright, this is actually expected behavior — not a defect with your cameras or your setup. Here’s what’s going on:
The Arducam B0579 (AR0234 sensor) requires a full 4-lane MIPI CSI-2 connection. The sensor itself outputs over 4 lanes and needs all of them to deliver frames at its native resolution and frame rate.
Now the Jetson Orin Nano Developer Kit carrier board has two CSI connectors, but they are not equal:
CAM0 (the first port) — supports a 4-lane MIPI configuration
CAM1 (the second port) — is physically limited to 2 lanes on the board routing
So cam0 works because it’s getting all 4 lanes. Cam1 is detected because the I2C control channel (which handles device enumeration) is present on both ports — that’s why it shows up in v4l2-ctl and /dev/video1 exists. But as soon as you try to push pixel data through only 2 lanes when the sensor is trying to drive 4, the capture pipeline can’t sync and times out.
Unfortunately there’s no software or driver-level fix for this — it’s a physical lane count mismatch on the carrier board. The B0579 can only be used on the single 4-lane CAM0 port.
That’s really disappointing to hear, and honestly it’s a roadblock for our project. We need dual-camera operation.
I’ve been looking at alternatives and noticed that e-con Systems’ e-CAM25 (also an AR0234-based global shutter camera) offers a 2-lane mode option right in their driver. When you flash their driver, you can select between 2-lane and 4-lane operation depending on your setup. This lets two of their cameras work in parallel on the Orin Nano — one on the 4-lane port, one on the 2-lane port.
Can Arducam provide something similar for the B0579? A 2-lane mode option in the driver when flashing? The sensor is the same AR0234, so if they can do it, shouldn’t Arducam be able to as well?
I understand the frustration. Let me clarify why this is different from the e-con Systems implementation.
The AR0234 sensor does technically support being configured for fewer lanes at the register level, but implementing that isn’t just a driver toggle — it requires:
The sensor’s register configuration to be set for 2-lane output mode
The MIPI clock and data rate adjustments to fit within 2-lane bandwidth
A corresponding device tree entry that tells the NVIDIA VI/CSI driver to expect 2 lanes
In the case of the B0579, Arducam’s current firmware and driver package for this SKU is designed exclusively for 4-lane operation. The bandwidth needed for the full resolution at the target frame rate requires all 4 lanes to be active. Dropping to 2 lanes would mean either reducing the resolution or the frame rate significantly, and this configuration hasn’t been validated or released as a supported mode for this particular SKU.
That said, if dual-camera is a hard requirement on the Orin Nano, the recommended alternative would be the sync-stereo global shutter dual camera bundle kit, which is specifically designed for dual-camera operation on Jetson platforms:
This kit handles the lane allocation properly for both ports and supports hardware-synchronized stereo capture.
Appreciate the explanation, but I want to circle back on this — has anyone on the engineering side actually looked into whether a 2-lane mode for the B0579 is feasible, even at reduced resolution or frame rate? For our application we might be able to accept a lower frame rate if it means dual-camera operation. Even if it’s not a publicly released mode, is there any internal build or experimental firmware that could do this?
I’m still hoping there’s a path forward here with the B0579s we already purchased, rather than having to switch to a completely different product.
I’ve checked with the engineering team on this. The short answer is that a 2-lane mode for the B0579 is not available — not even as an experimental or internal build. Here’s the concrete reason:
The B0579 uses a specific baseboard/firmware configuration where the AR0234 sensor is hard-wired to output over 4 lanes at the hardware level. Unlike some other camera modules where the lane count is purely a software-defined parameter, the B0579’s PCB routing and on-board serializer configuration assume 4-lane operation. Changing this would require a hardware revision of the module itself, not just a driver update.
This is different from the e-con Systems module you mentioned, which likely has a different baseboard design that was built with lane-configurability in mind from the start.
So unfortunately, there is no path to running two B0579 cameras simultaneously on the Orin Nano Dev Kit. For dual-camera setups on that platform, the sync-stereo bundle kit I linked earlier is the supported route.
Alright, that’s clear — even if it’s not the answer I was hoping for. Thanks for digging into it with the engineering team.
Separate question while I have your attention — we’ve also ordered some B0577 units and I’m working on designing a mounting bracket for them. I found two 3D models on the Arducam website but they appear to be for a different product — the dimensions don’t match what I’m measuring on the B0577. Can you provide the proper 3D models (STEP or similar) for the B0577 PCB and camera module? Need these for the mechanical design of our enclosure.
No problem — I know it’s not the ideal outcome, but at least the limitation is clearly understood now. To summarize for anyone else reading this thread:
B0579 (AR0234) requires 4 MIPI lanes and will only work on the 4-lane CAM0 port of the Jetson Orin Nano Dev Kit.
Two B0579 cameras cannot be used simultaneously on that carrier board due to the CAM1 port’s 2-lane hardware limitation.
For stereo/dual-camera needs on Orin Nano, the sync-stereo bundle kit is the intended solution.
Regarding the B0577 3D models — I’ve sent you the correct STEP files for both the PCB and the camera module via private message. Please check your inbox. The models you found on the website were likely for a different SKU, so disregard those. Let me know if the dimensions check out once you’ve had a chance to review them.