After upgrade to JetPack 4.6 only one CSI port is functional on Jetson Nano

On Jetson Nano (4GB) devkit we have two cameras connected. Everything works with Jetpack 4.5, however after upgrade on 4.6 second camera is not recognized anymore. We did some tests and the second connector (camera1) is not recognized by the system (we use Ubuntu 18.04 from Nvidia). Anyone hit that issue?

What’s your sensor? Did you check the kernel message to check for the driver probe message?

Sensor is ordinary Raspberry Pi camera V2.1. In dmesg I can see just this line: [ 1.272640] imx219 6-0010: tegracam sensor driver:imx219_v2.0.6. Is there anything I can use to see more debug information?

Thanks in advance.

The dmesg should show the “imx219 7-0010” for second.
Have a try jetson-io to enable two imx219 to confirm it.

How can I enable two imx219 via jetson-io? This is an output from config-by-hardware -l:

./config-by-hardware.py -l
Header 1 [default]: Jetson 40pin Header
  Available hardware modules:
  1. Adafruit SPH0645LM4H
  2. Adafruit UDA1334A
  3. FE-PI Audio V1 and Z V2
  4. MCP251x CAN Controller
  5. ReSpeaker 4 Mic Array
  6. ReSpeaker 4 Mic Linear Array
Header 2: Jetson Nano CSI Connector
  Available hardware modules:
  1. Camera IMX219
  2. Camera IMX477
Header 3: Jetson M.2 Key E Slot
  No hardware configurations found!

I tried ./config-by-hardware.py -n 2="Camera IMX219" with this result:

Configuration saved to /boot/kernel_tegra210-p3448-0000-p3449-0000-a02-user-custom.dtb.
Reboot system to reconfigure.

After reboot nothing changed.

Check this document for it.

https://docs.nvidia.com/jetson/archives/r34.1/DeveloperGuide/text/HR/ConfiguringTheJetsonExpansionHeaders.html?highlight=jetson%20io

I’m probably blind, but I can find it in the docs. In /boot I can see tegra210-p3448-all-p3449-0000-camera-imx219-dual.dtbo which is probably what I want to integrate into the kernel_tegra210-p3448-0000-p3449-0000-a02.dtb, but I don’t know how. Why I can’t see IMX219 Dual in config-by-hardware -l output?

Suppose your BSP is much older.

Update to latest r32.7.x to confirm it.

nvidia@ubuntu:~$ ls /boot/ | grep -i imx219
tegra210-p3448-all-p3449-0000-camera-imx219-dual.dtbo
tegra210-p3448-all-p3449-0000-camera-imx477-imx219.dtbo
tegra210-p3448-common-imx219.dtbo

I already have r32.7.1 from `https://developer.nvidia.com/embedded/l4t/r32_release_v7.1/t210/jetson-210_linux_r32.7.1_aarch64.tbz2.

Don’t know what happen on your device.
Could you flash by sdkmanager again to check.
If still the same you can build the dtbo by download the source for it.

I have 3 same devices with the latest JetPack and it doesn’t work on any of them. I’ll try to build it from the source code. I think the imx-219-dual is missing from the hardware configuration.

Problem fixed. When I was creating image using little bit older version of Create your own image for jetson nano board, there was hardcoded revision 200 (A02) of the board. That board is A02 board which has just one SPI connector. Modifying it to 300, which is B01 board type, solved the issue. Now the Jetson knows that it sits on B01 board which has two SPI connectors.

Thanks for navigating me into the right direction.