Arducam IMX477 install script fails with 'Cannot find corresponding deb package' on Auvidea JNX30D Jetson

Hi all, I’m stuck trying to get an Arducam B0249 (IMX477) camera working. I got the camera from Auvidea and it’s connected to a JNX30D Jetson carrier board (Xavier NX). When I run the Arducam install_imx477.sh script, it errors out with ‘Cannot find the corresponding deb package’ and prints ‘Jetson type: UNKNOWN’. Not really sure what that means or what I’m doing wrong.

Can you share a bit more about your environment? Specifically the JetPack version, kernel version, and the full output of ‘uname -a’. Also, how exactly are you connecting the camera (MIPI?), and which cable are you using?

Sure. I’m on JetPack 4.6, kernel 4.9.253-tegra-32.6.1-20210726122859. Here’s the uname -a output:
Linux poker-desktop 4.9.253-tegra #1 SMP PREEMPT Mon Jul 26 12:19:28 PDT 2021 aarch64 aarch64 aarch64 GNU/Linux
Camera is connected over MIPI, and I’m using a 22-to-22 pin cable. I’m honestly not sure if that cable is even correct. Do I need separate drivers for JetPack 4.6 on the Xavier NX?

Thanks. Could you show the exact steps you used to download and run the script? Including the chmod and sudo commands, and paste the complete output it gave you.

Here’s what I did:
2023-05-05 19:19:38 (5.84 MB/s) - ‘install_imx477.sh’ saved [15707/15707]
poker@poker-desktop:~$ chmod +x install_imx477.sh
poker@poker-desktop:~$ sudo ./install_imx477.sh

And the output was:
Cannot find the corresponding deb package, please send the following information to [email protected]
Kernel version: 4.9.253-tegra-32.6.1-20210726122859
Jetson type: UNKNOWN
Linux poker-desktop 4.9.253-tegra #1 SMP PREEMPT Mon Jul 26 12:19:28 PDT 2021 aarch64 aarch64 aarch64 GNU/Linux

The ‘Jetson type: UNKNOWN’ line is the key here. The install script detects the board/device tree to pick the correct deb package, and on your JNX30D it’s not recognizing the platform, so it can’t find a matching deb. The JNX30D is a third-party carrier board, so it may not be fully compatible with some Arducam cameras - the script simply doesn’t know how to classify it. At this point we can’t tell whether the camera itself is faulty or whether the hardware platform detection is what’s failing.

Got it, that makes sense. So how do I figure out if the camera itself is actually OK? Is there a way to verify it separately?

The best test is to run the same camera on the official NVIDIA development kit for the Xavier NX. That way the script should detect the platform correctly and install the right package. The steps are the same:
chmod +x install_imx477.sh
sudo ./install_imx477.sh
If it still doesn’t work on the official dev kit, then it’s likely the camera and you should reach out to [email protected]. But if it works there, the issue is with the JNX30D not being recognized by the script.