Hi, I’m trying to install the imx477 driver on my Orin NX but it keeps throwing an error. My setup is kernel 5.10.104-tegra-35.3.1-20230319081403 on an NVIDIA Orin NX Developer Kit. Not sure if I’m using the wrong driver package or missing a step.
On the Orin NX, Arducam’s own driver package isn’t supported and can’t be installed. For this board you should use the official Jetson imx477 driver and configure it through Jetson-IO. Don’t try to install the Arducam driver on the Orin NX. Here’s the reference guide for configuring imx477 in Jetson-IO: Jetson-io - Arducam Wiki
I tried opening that link but it won’t load at all. Attached a screenshot of what I get.
That documentation link needs you to bypass the GFW / network restrictions to access it. Try a VPN or proxy and then open it again: Jetson-io - Arducam Wiki
I enabled my VPN and can reach other normally blocked sites fine, but that specific link still won’t open. Screenshot attached again.
A regular VPN may not be enough for that page — try enabling a global proxy so all traffic goes through it. If it still won’t load, just search Google for “jetson-io” and follow the related guidance instead.
Okay, so I went ahead and followed the install_full.sh method for the imx477 on the Orin NX. I configured the Jetson expansion headers to imx477 using the NVIDIA r35.3.1 docs, saved and rebooted, then ran install_full.sh from the ArduCAM MIPI_Camera v0.0.3 releases. It fails with ‘No DTB found for NVIDIA Orin NX Developer Kit!’ and a dpkg post-install script error. The package was arducam-nvidia-l4t-kernel-t234-5.10.104-tegra-35.2.1-20230315052005_arm64_imx477.deb, and the install script I used was: https://github.com/ArduCAM/MIPI_Camera/releases/download/v0.0.3/install_full.sh
Here’s the log:
(Reading database ... 156498 files and directories currently installed.)
Preparing to unpack arducam-nvidia-l4t-kernel-t234-5.10.104-tegra-35.2.1-20230315052005_arm64_imx477.deb ...
Unpacking arducam-nvidia-l4t-kernel (5.10.104-tegra-35.2.1-20230315052005) over (5.10.104-tegra-35.2.1-20230315052005) ...
Setting up arducam-nvidia-l4t-kernel (5.10.104-tegra-35.2.1-20230315052005) ...
Traceback (most recent call last):
File "/opt/arducam/jetson-io/config-by-hardware.py", line 125, in <module>
main()
File "/opt/arducam/jetson-io/config-by-hardware.py", line 94, in main
jetson = board.Board()
File "/opt/arducam/jetson-io/Jetson/board.py", line 230, in __init__
self.dtb = _board_get_dtb(self.compat, self.model, dtbdir)
File "/opt/arducam/jetson-io/Jetson/board.py", line 114, in _board_get_dtb
raise RuntimeError("No DTB found for %s!" % model)
RuntimeError: No DTB found for NVIDIA Orin NX Developer Kit!
An unknown error occurred while installing dtoverlays.
dpkg: error processing package arducam-nvidia-l4t-kernel (--install):
installed arducam-nvidia-l4t-kernel package post-installation script subprocess returned error exit status 255
Errors were encountered while processing:
arducam-nvidia-l4t-kernel
Unknown error, please send the error message to support
Arducam hasn’t released any imx477 camera driver for the Orin NX, so install_full.sh is the wrong approach for this board. That’s exactly why you’re seeing ‘No DTB found for NVIDIA Orin NX Developer Kit!’ and the dpkg post-installation error (exit status 255).
Since you’ve already configured imx477 in Jetson-IO, just reboot the device and then check detection:
reboot
ls /dev/video0
dmesg | grep imx477
See whether the camera gets detected. Only the official Jetson imx477 driver configured via Jetson-IO should be used here.
Just wanted to confirm — the earlier driver install issue is resolved now. Thanks!
I’ve hit a new problem though. After flashing generated firmware to the Orin NX, I can’t install or run jtop — jtop.service isn’t active. Setup: Jetson Linux 35.3.1 dev package, Orin NX, external NVMe device nvme0n1p1, board config p3509-a02+p3767-0000.
Flash steps I used:
cd Linux_for_Tegra
sudo ./apply_binaries.sh
sudo ./tools/l4t_flash_prerequisites.sh
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" --showlogs --network usb0 p3509-a02+p3767-0000 internal
jtop install attempts:
sudo apt update
sudo apt install python3-pip
sudo -H pip3 install -U jetson-stats
# or
sudo pip3 install jetson-stats -i https://pypi.douban.com/simple/
reboot
jtop
After reboot, running jtop gives:
$ jtop
The jtop.service is not active. Please run:
sudo systemctl restart jtop.service
I’ve tried various fixes I found online but jtop still won’t run.
Installing jtop isn’t related to driving the imx477 camera, so it’s fine to set that aside for now. Also note that arducam_displayer.py is only for jetvariety cameras, not for the imx477. To actually access the imx477, use GStreamer as described in the official Native Camera Quick Start Guide: Quick-Start-Guide - Arducam Wiki