Hi all, I’m trying to get an IMX477 camera driver installed on my Jetson and the installer keeps dying during the dtoverlay generation step with a FileNotFoundError for a custom DTB file. Anyone run into this? Happy to post the full error if it helps.
Hey, welcome. Can you tell us a bit more about your setup first - which Jetson model, what JetPack/L4T version, and which camera module? Also the exact commands you ran to install the driver.
Sure. It’s a Jetson AGX Orin (t234) on JetPack L4T 35.4.1, camera is an IMX477. I followed the ArduCAM MIPI_Camera steps exactly:
cd ~
wget https://github.com/ArduCAM/MIPI_Camera/releases/download/v0.0.3/install_full.sh
chmod +x ./install_full.sh
./install_full.sh -m imx477
That was my only attempt so far.
Thanks. That’s the standard install script. Can you paste the full output? I’d like to see the kernel package setup line and the traceback that follows.
Here you go. It starts with the package setup:
Setting up arducam-nvidia-l4t-kernel (5.10.120-tegra-35.4.1-20230927160348) …
Then when it tries to generate the DTB it crashes:
Traceback (most recent call last):
File “/opt/arducam/jetson-io/config-by-hardware.py”, line 125, in
main()
File “/opt/arducam/jetson-io/config-by-hardware.py”, line 121, in main
generate_dtb(jetson, dtbos)
File “/opt/arducam/jetson-io/config-by-hardware.py”, line 44, in generate_dtb
fn = jetson.create_dtb_for_headers(dtbos)
File “/opt/arducam/jetson-io/Jetson/board.py”, line 389, in create_dtb_for_headers
shutil.copyfile(dtb, os.path.join(self.appdir, dtb[1:]))
File “/usr/lib/python3.8/shutil.py”, line 264, in copyfile
with open(src, ‘rb’) as fsrc, open(dst, ‘wb’) as fdst:
FileNotFoundError: [Errno 2] No such file or directory: ‘/boot/arducam/dts/kernel_tegra234-p3701-0005-p3737-0000-user-custom.dtb’
Right after that it says:
An unknown error occurred while installing dtoverlays.
And dpkg reports:
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
Thanks, that’s very useful. So what’s happening: the installer’s post-install script is generating a device tree blob and tries to copy ‘/boot/arducam/dts/kernel_tegra234-p3701-0005-p3737-0000-user-custom.dtb’, but that file doesn’t exist on your system. The dtoverlay step fails with ‘An unknown error occurred while installing dtoverlays’, and the package post-install script exits with status 255.
The bigger issue is L4T 35.4.1 - that’s an older JetPack and this integration isn’t really supported there. Rather than chasing the missing DTB on that version, the recommended route is to flash the AGX Orin to JetPack 6.2 (L4T 36.4.3). The IMX477 driver integration is verified smooth on that version.
Makes sense. I was hoping to avoid a full reflash though. Is the missing DTB something I could just generate manually on 35.4.1, or is upgrading really the only clean option?
On 35.4.1, the DTB generation path is exactly where it breaks - the installer expects that kernel_tegra234-p3701-0005-p3737-0000-user-custom.dtb to already be present, and manually producing it on that old release isn’t something we can reliably support. So the current conclusion is to flash JetPack 6.2 (L4T 36.4.3) and re-run the same install steps you already used. On that version the dtoverlay step should complete without this FileNotFoundError.