Cannot run IMX477 camera on AGX Xavier

Hello, I have a AGX Xavier board that is currently booting from SSD. It has JetPack 4.6.2 installed. I am trying to use an Arducam IMX477 camera (specifically the one for the Xavier). This camera definitely works when tested on the Raspberry.

I have two main issues:

1. After setting up boot from SSD, sudo /opt/nvidia/jetson-io/jetson-io.py no longer works.
I see the GUI pop-up and then disappear instantly with no error. I saw in another forum post that this has happened to other users.

2. I cannot switch the default camera from IMX219 to IMX477.
I have tried to follow some of the solutions for the JetPack 5.0.1, such as here. For example, I replaced my dtb file at /root/dtbwith kernel_tegra194-p3668-0000-p3509-0000-user-custom.dtb. However, this did not work.

Detailed outputs:
dmesg | grep -E "imx477|imx219" gives:

[    4.635856] imx219 9-0010: tegracam sensor driver:imx219_v2.0.6
[    4.668333] imx219 9-0010: imx219_board_setup: error during i2c read probe (-121)
[    4.668443] imx219 9-0010: board setup failed
[    4.668519] imx219: probe of 9-0010 failed with error -121
[    4.668905] imx219 10-0010: tegracam sensor driver:imx219_v2.0.6
[    4.696206] imx219 10-0010: imx219_board_setup: error during i2c read probe (-121)
[    4.696320] imx219 10-0010: board setup failed
[    4.696396] imx219: probe of 10-0010 failed with error -121

nano /boot/extlinux/extlinux.conf is:

TIMEOUT 30
DEFAULT JetsonIO

MENU TITLE L4T boot options

LABEL primary
      MENU LABEL primary kernel
      LINUX /boot/Image
      INITRD /boot/initrd
      APPEND ${cbootargs} quiet root=/dev/nvme0n1p1 rw rootwait rootfstype=ext4 console=ttyTCU0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
      FDT /boot/dtb/kernel_tegra194-p3668-0000-p3509-0000-user-custom.dtb

I am new to embedded systems so I am not familiar with where certain files are. For example, I tried to find the DTSI file mentioned in the other post, but I am totally unsure where it is.

Any help would be greatly appreciated!

1 Like

Have reference to below link for customized kernel and device tree.

https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3261/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/kernel_custom.html#

Hello, thank you for the reply.

As I understand, the there should be existing drivers for the IMX477, I simply cannot switch to them. How would rebuilding the kernel help?

You need implement the device tree for IMX477 on Xavier and build it to replace.
Please consult with Arducam to get the driver for Xavier. The native driver only support IMX477 on Xavier NX but Xavier AGX.

Hello, I also reached out to Arducam and they said “Our imx477 is consistent with the official imx477. You can use the native driver, the only difference from our driver is one resolution.”

So I just want to clarify again that the native Nvidia driver for the IMX477 will also not work for the AGX Xavier?

Yes, native device tree configure only support for Xavier NX.

Thanks

Hello, running the same code on the Xavier NX resulted in the same errors. What can be done to fix this for the NX?

For XNX you need to enable the IMX477 by jetson-io

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.