AR0234 camera not working on Jetson Orin NX custom board - need device tree documentation

Hi everyone. I’m trying to get an Arducam AR0234 camera working on a Jetson Orin NX, but it has never worked since I got it. I’ve followed the Arducam quick start guide (Quick Start Guide - Arducam Wiki) but the camera still isn’t detected. This is on a custom carrier board with the Orin NX module, not the official dev kit. Has anyone run into this before?

Thanks for the details. Could you walk me through exactly what you did during setup? In particular, how you configured the jetson-io tool and whether the install script finished and you rebooted afterwards.

Sure. I ran /opt/arducam/jetson-io/jetson-io.py and selected the ‘arducam Dual’ option. Then I ran the installation script and rebooted the board. No errors during the install as far as I could tell, but the camera still doesn’t show up.

Let’s see what the kernel is actually reporting. Could you run: dmesg | grep arducam and paste the output here?

Here’s the output:
[ 0.002729] DTS File Name: /home/arducam_006/jenkins/workspace/rin_nx_kernel_l4t-35.3.1-arducam/kernel/kernel-5.10/arch/arm64/boot/dts/…/…/…/…/…/…/hardware/nvidia/platform/t23x/p3768/kernel-dts/tegra234-p3767-0000-p3768-0000-a0.dts
[ 14.820605] arducam_csi2: no symbol version for module_layout
[ 14.854275] arducam-csi2: arducam_read: Reading register 0x103 failed
[ 14.864882] arducam-csi2 9-000c: probe failed
[ 14.873426] arducam-csi2 9-000c: Failed to setup board.
[ 14.909753] arducam-csi2: arducam_read: Reading register 0x103 failed
[ 14.923151] arducam-csi2 10-000c: probe failed
[ 14.934496] arducam-csi2 10-000c: Failed to setup board.

Thanks, that’s very helpful. A couple of things stand out:

  • ‘arducam_csi2: no symbol version for module_layout’ points to a version mismatch between the arducam kernel module and the running kernel.
  • ‘arducam_read: Reading register 0x103 failed’ on I2C addresses 9-000c and 10-000c means the sensor isn’t answering at the I2C addresses the driver expects. That’s why both probes fail with ‘Failed to setup board.’

Could you share clear photos of the front and back of the Orin NX board? It may help spot a connection or wiring issue.

I’ve sent you the board photos through private message. One thing I’ve realized while digging into this is that our board is a custom carrier, so the device tree probably needs to be modified for our specific wiring/power setup. Is there any documentation for modifying the device tree files for the AR0234 on a custom Orin NX board? For reference, here’s an example imx219 device tree that our board uses: https://github.com/ARK-Electronics/ark_jetson_orin_nano_nx_device_tree/blob/ark_jetson_device_tree/cvb/tegra234-camera-ark-imx219.dtsi

Thanks for sending those. Based on what you’ve described and the logs, the root cause is that a custom carrier board needs a custom device tree configuration for the AR0234. The stock Arducam setup assumes the standard dev kit I2C bus addresses, power/reset GPIOs and pin mapping, and those can be different on a custom board. Customizing the device tree for your specific hardware is unfortunately beyond what standard support can cover. I’d recommend reaching out to [email protected] with your board details and that imx219 dtsi as a reference — they handle customization requests.

Understood, that makes sense. I’ve forwarded the details and the imx219 dtsi reference to [email protected] for the device tree customization.

Perfect. To summarize for anyone finding this thread: the AR0234 on a custom Jetson Orin NX board is failing because the driver module has a version mismatch and the sensor isn’t responding at the expected I2C addresses (9-000c / 10-000c), which on a custom carrier usually means the device tree needs to be customized. That’s beyond standard support, so the next step is contacting [email protected] for customization. I’ll keep this thread open in case you have updates.