Error installing Arducam IMX477 mini on Jetson Nano Ubuntu with install_full.sh

Hi everyone, I’m trying to get an Arducam 12MP IMX477 mini (the Raspberry Pi version) working on a Jetson Nano board running Ubuntu. I followed the quick start guide here: Quick-Start-Guide - Arducam Wiki

Everything looks fine until I run ./install_full.sh -m imx477. The installer downloads the kernel package, but then it fails. Has anyone run into this before?

Can you paste the full output from the installer? The part right before and after where it fails would be most helpful. Also, what carrier board is your Nano module plugged into?

Sure. The download part completes without issues:

arducam-nvidia-l4t-kernel- 100%[========================================>]  7.80M  2.89MB/s    in 2.7s
2023-09-04 13:13:16 (2.89 MB/s) - 'arducam-nvidia-l4t-kernel-t210-4.9.253-tegra-32.6.1-20220124024834_arm64_imx477.deb' saved [8179728/8179728]

Then it reads the database and unpacks the package:

(Reading database ... 354967 files and directories currently installed.)
Preparing to unpack arducam-nvidia-l4t-kernel-t210-4.9.253-tegra-32.6.1-20220124024834_arm64_imx477.deb ...
Unpacking arducam-nvidia-l4t-kernel (4.9.253-tegra-32.6.1-20220124024834) over (4.9.253-tegra-32.6.1-20220124024834) ...
Setting up arducam-nvidia-l4t-kernel (4.9.253-tegra-32.6.1-20220124024834) ...

After that it errors out.

The package itself unpacks fine, so the failure looks like it’s happening in the package’s post-installation script. Can you run it again and capture the traceback that shows up right before the dpkg error?

Here’s what I get during the post-install part:

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 99, in main
    raise RuntimeError("Platform not supported, no headers found!")
RuntimeError: Platform not supported, no headers found!
Jetson Nano CSI Connector not found.
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 99, in main
    raise RuntimeError("Platform not supported, no headers found!")
RuntimeError: Platform not supported, no headers found!
2

And the installer also prints:

An unknown error occurred while installing dtoverlays.

Thanks, that’s useful. Can you also paste the dpkg error lines that come right after that? The ones about arducam-nvidia-l4t-kernel.

Yes, here’s the dpkg output:

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

Then the installer finishes with:

Unknown error, please send the error message to [email protected]
root@yahboom:~#

OK, that confirms where it’s dying. The important lines are:

RuntimeError: Platform not supported, no headers found!
Jetson Nano CSI Connector not found.

and

dpkg: error processing package arducam-nvidia-l4t-kernel (--install):
 installed arducam-nvidia-l4t-kernel package post-installation script subprocess returned error exit status 255

This usually means the installer’s config-by-hardware.py couldn’t detect the platform and CSI connector. In most cases we see this when the module is on a non-official/third-party carrier board rather than the official one. Can you tell me exactly which carrier board you’re using, and post pictures of the front and back of the board?

I’m connecting the Arducam 12MP IMX477 mini to a Jetson Nano running Ubuntu. Let me double-check the carrier board and I’ll get some photos of the front and back.

To summarize where things stand: the kernel package downloads and unpacks successfully, but the post-installation script fails during dtoverlay installation. The errors Platform not supported, no headers found! and Jetson Nano CSI Connector not found. indicate that config-by-hardware.py couldn’t identify the expected platform/CSI connector on your board. That failure makes the post-install script return exit status 255, which is what dpkg reports.

This pattern strongly suggests a hardware/platform detection problem, most likely a non-official carrier board. Once you can confirm which carrier board you have and post front/back photos, we can verify whether that’s the cause and go from there.