Issues with the CSI cameras attached to the Xavier NX

Hi there, there are some issues with the issues with the camera feed on the Xavier NX development board when 2 CSI cameras are attached to it. Both the cameras are the Raspberry Pi v2 cameras (IMX219) with a Fisheye adapter, and they are both working fine when they are attached to the Jetson Nano (The output image is relatively noise free).

The issues are as follows:

  • When one camera is attached to the CAM0 port, testing it with gstreamer sensor_id=0 will output the correct image. However, when both the cameras are attached, the sensor_id of both the cameras are swapped around. (sensor_id=0 will ouput the camera of CAM1, and sensor_id=1 will ouput the camera of CAM0)
  • The output images of both the cameras are very noisy (grainy), even with noise reduction settings set at max. Furthermore, there are persistent white pixels in the output which does not go away when moving the camera around. (Which does not occur when attached to the Jetson Nano)

Is it possible that this is a hardware issue, or is it a xavier nx related driver/processing issue? Please advise.

I have noticed the same thing with my Xavier NX, I have not been able to fix or diagnose it. I would assume it will be fixed with time.

hello xaviernx,

it’s known issue that sensor-id=0 did not launch video0 for the multiple camera setups, it’s reading position property in the sensor device tree to determine the orders.
could you please also attach the capture results with noisy images for reference,
thanks

Here’s the capture result:

hello xaviernx,

it seems you’ll need to have image tuning supports. there should be exist tuning files on Nano, which the reason why you did not observe the noise.
due to Nano and Xavier were different chips, they’re going through different camera software pipelines.

we don’t provide image tuning support via forum discussion threads, suggest you should contact with your sensor vendor for tuning supports.
thanks

Both (the cameras on) the Jetson Nano & Jetson Xavier NX are running the same gstreamer configuration (resoultion, framerate, temporal noise reduction & edge enhancement), shouldn’t both images be similar even if they are using different camera software pipeline?

Furthermore, the persistent white pixels on the images could be a driver issue? (Doubt it’s a tuning problem since it is absent in the camera feed when using it with the Jetson Nano.)

1 Like

hello xaviernx,

due to tuning parameters cannot apply across different chips, you should consider your NX capture results without IQ settings.
please contact with your sensor vendor for tuning supports, such as Lens Shading, Noise Reduction…etc.
thanks

But NX is advised has fully support for Pi camera v2 as has Nano, why should we expect a worse behaviour than in the Nano with same camera and software? so is NX sold without a properly supported camera. Why me hobbyist should contract a specialised service in camera drivers?

if Seeedstudio, avermedia ,tom’s hardware, this same forum says NX is compatible RPi camera v2 why I should expect supported but with a bad quality? More when that bad quality is not in Nano, and when that grain affects to the main scope of jetson NX Image, video inference, etc,

I have similar issue with my xavier nx
SD card image was downloaded from https://developer.nvidia.com/jetson-nx-developer-kit-sd-card-image today (July 3 2020)
md5sum verified match 4b24e23867ed3d4b651934d0ac40c92c
sd card was flashed and system up running. But there is an imx219_board_setup error.
Messages generated from using command dmesg shows imx219_board_setup: error during i2c read probe

Here is the related details:
[ 1.995205] tegra_rtc c2a0000.rtc: Tegra internal Real Time Clock
[ 1.995418] i2c /dev entries driver
[ 1.997726] i2c i2c-2: Added multiplexed i2c bus 9
[ 1.998271] i2c i2c-2: Added multiplexed i2c bus 10
[ 1.998277] i2c-mux-gpio cam_i2cmux: 2 port mux on 3180000.i2c adapter
[ 1.998719] imx219 9-0010: tegracam sensor driver:imx219_v2.0.6
[ 2.022179] tegra-i2c 3180000.i2c: no acknowledge from address 0x10
[ 2.022231] imx219 9-0010: imx219_board_setup: error during i2c read probe (-121)
[ 2.022276] imx219 9-0010: board setup failed
[ 2.022381] imx219: probe of 9-0010 failed with error -121
[ 2.022906] imx219 10-0010: tegracam sensor driver:imx219_v2.0.6
[ 2.046138] tegra-i2c 3180000.i2c: no acknowledge from address 0x10
[ 2.046184] imx219 10-0010: imx219_board_setup: error during i2c read probe (-121)
[ 2.046243] imx219 10-0010: board setup failed
[ 2.046364] imx219: probe of 10-0010 failed with error -121
[ 2.047709] max77620-power max20024-power: Event recorder REG_NVERC : 0x0
[ 2.054357] tegra-thermal-throttle bthrot_cdev: clk:cpu max:1907200000, min:115200000 steps:24

I have this issue too.

  • Permanent large white dots scattered on the image
  • intensely grainy image

I was about to purchase a new camera, thinking I burnt out some pixels.

After reading this, it seems my trusted supplier has let me down.

Since nVidia changed the chip could they at least point us in the right direction to get support for a camera they explicitly claim is supported?

I do not have enough knowledge to talk to a Raspberry Pi V2 vendor! Since, it is clear that nVidia does not have sufficient graphics expertise to bring to the table. I hope someone with some expertise can help us out and post here.

I am puzzled and do not understand how folks are supposed to learn and use a deep learning sdk’s without effective camera support.

I guess I just put all my projects on hold while this gets sorted out.

At the very least nVidia should remove their advertising claim of support for the pi v2 camera. I have already been damaged by their lack of candor, future buyers should not be!

hello @Irakandjii @dnlod5,
this topic is talking about image quality issue,
you may also found in the beginning for description, that @xaviernx claim Raspberry Pi v2 cameras (IMX219) with a Fisheye adapter works on NX.

I have the same issue without any adapter.

I also have the same issue, noisy and hot(white) pixels on images. gstreamer(trn-mode, trn-strength) did not work.