TX2 onboard camera gives green picture as output with gstreamer

Hi all,

I am developing an application on the Nvidia TX2. I embedded the TX2 with the J100 and M100 from Auvidea.

I am using 2 IMX219 cameras, I compiled 4.4 linux kernel (from Jetpack 3.2.1) with RidgeRun patch and GStreamer 1.8 with the other Ridgerun patch.

But when I execute the Gstreamer command, the capture stream is just green picture sometimes. The command is:

gst-launch-1.0 nvcamerasrc sensor-id=0 fpsRange="30 30" ! 'video/x-raw(memory:NVMM), width=(int)1640, height=(int)1232, format=(string)I420, framerate=(fraction)30/1' ! nvegltransform ! nveglglessink nvcamerasrc sensor-id=1 fpsRange="30 30" ! 'video/x-raw(memory:NVMM), width=(int)1640, height=(int)1232, format=(string)I420, framerate=(fraction)30/1' ! nvegltransform ! nveglglessink -e

And logs from GStreamer show:

launchCC abort cc 9044 session 0

        SCF: Error Timeout:  (propagating from src/api/Session.cpp, function capture(), line 830)

I can’t figure whether the problem is hardware or software.
I have another board same hardware, same software, the only difference is in file /etc/X11/xorg.conf

Option      "TegraReserveDisplayBandwidth" "false"

I add this line because we had the problem described here : https://devtalk.nvidia.com/default/topic/1046527/csi-camera-red-screen-with-quot-vid_rend-syncpoint-wait-timeout-quot-/

I saw that Auvidea released a 4.9 kernel. Do you think it is worth trying?

Anyone had this problem before ?

Nvcamera-daemon logs when problem appears are :

---- Imager: Calibration blob file handling supported in this build ----

    NvPclHwGetModuleList: OFParserListModules Succeeded

    NvPclHwGetModuleList: WARNING: Could not map module to ISP config string

    NvPclHwGetModuleList: No module data found

    NvPclHwPrintModuleDefinition -- Name: e3322_front_A819P2

    NvPclHwPrintModuleDefinition -- Position: 1

    NvPclHwPrintModuleDefinition -- CalibrationData Found: 1

    NvPclHwPrintCameraSubModule -- HwCamSubModule[0].Name: v4l2_sensor

    NvPclHwPrintCameraSubModule -- HwCamSubModule[0].DevName: imx219 0-0010

    NvPclHwGetModuleList: WARNING: Could not map module to ISP config string

    NvPclHwGetModuleList: No module data found

    NvPclHwPrintModuleDefinition -- Name: e3322_rear_A819P2

    NvPclHwPrintModuleDefinition -- Position: 0

    NvPclHwPrintModuleDefinition -- CalibrationData Found: 1

    NvPclHwPrintCameraSubModule -- HwCamSubModule[0].Name: v4l2_sensor

    NvPclHwPrintCameraSubModule -- HwCamSubModule[0].DevName: imx219 2-0010

    NvPclHwGetModuleList: OFParserListModules Succeeded

    NvPclModuleListInitialize: NvPclModule list[0]: e3322_front_A819P2 position1

    NvPclModuleListInitialize: NvPclModule list[1]: e3322_rear_A819P2 position0

    NvPclHwScanExternalCameras -- adding video1 to discover list

    NvPclHwScanExternalCameras -- adding video0 to discover list

    NvPclHwScanExternalCameras -- adding video1 to discover list

    NvPclHwScanExternalCameras -- adding video0 to discover list

    initialize: /dev/video0

    queryControls: 10100736 control Frame Length

    queryControls: 10100737 control Coarse Time

    queryControls: 10100739 control Group Hold

    queryControls: 10100740 control HDR enable

    queryControls: 10100743 control Fuse ID

    queryControls: 10100745 control Gain

    queryControls: 10100836 control Bypass Mode

    queryControls: 10100837 control Override Enable

    queryControls: 10100838 control Height Align

    queryControls: 10100839 control Size Align

    queryControls: 10100840 control Write ISP format

    queryControls: 10100841 control Sensor Signal Properties

    queryControls: 10100842 control Sensor Image Properties

    queryControls: 10100843 control Sensor Control Properties

    queryControls: 10100844 control Sensor DV Timings

    queryControls: 10100866 control Sensor Modes

    Ioctl failed: Invalid argument

    initialize: /dev/video1

    queryControls: 10100736 control Frame Length

    queryControls: 10100737 control Coarse Time

    queryControls: 10100739 control Group Hold

    queryControls: 10100740 control HDR enable

    queryControls: 10100743 control Fuse ID

    queryControls: 10100745 control Gain

    queryControls: 10100836 control Bypass Mode

    queryControls: 10100837 control Override Enable

    queryControls: 10100838 control Height Align

    queryControls: 10100839 control Size Align

    queryControls: 10100840 control Write ISP format

    queryControls: 10100841 control Sensor Signal Properties

    queryControls: 10100842 control Sensor Image Properties

    queryControls: 10100843 control Sensor Control Properties

    queryControls: 10100844 control Sensor DV Timings

    queryControls: 10100866 control Sensor Modes

    Ioctl failed: Invalid argument

    NvPclHwScanExternalCameras -- adding video1 to discover list

    NvPclHwScanExternalCameras -- adding video0 to discover list

    initialize: /dev/video0

    queryControls: 10100736 control Frame Length

    queryControls: 10100737 control Coarse Time

    queryControls: 10100739 control Group Hold

    queryControls: 10100740 control HDR enable

    queryControls: 10100743 control Fuse ID

    queryControls: 10100745 control Gain

    queryControls: 10100836 control Bypass Mode

    queryControls: 10100837 control Override Enable

    queryControls: 10100838 control Height Align

    queryControls: 10100839 control Size Align

    queryControls: 10100840 control Write ISP format

    queryControls: 10100841 control Sensor Signal Properties

    queryControls: 10100842 control Sensor Image Properties

    queryControls: 10100843 control Sensor Control Properties

    queryControls: 10100844 control Sensor DV Timings

    queryControls: 10100866 control Sensor Modes

    Ioctl failed: Invalid argument

    initialize: /dev/video1

    queryControls: 10100736 control Frame Length

    queryControls: 10100737 control Coarse Time

    queryControls: 10100739 control Group Hold

    queryControls: 10100740 control HDR enable

    queryControls: 10100743 control Fuse ID

    queryControls: 10100745 control Gain

    queryControls: 10100836 control Bypass Mode

    queryControls: 10100837 control Override Enable

    queryControls: 10100838 control Height Align

    queryControls: 10100839 control Size Align

    queryControls: 10100840 control Write ISP format

    queryControls: 10100841 control Sensor Signal Properties

    queryControls: 10100842 control Sensor Image Properties

    queryControls: 10100843 control Sensor Control Properties

    queryControls: 10100844 control Sensor DV Timings

    queryControls: 10100866 control Sensor Modes

    Ioctl failed: Invalid argument

    getHotplugMonitor: Getting hotplug monitor instance

     initializeHotplug++

     addWatch: Watch added wd='1'

     hotPlugfunc ++ CheckProcDTExists: INFO: accessing /proc/device-tree/tegra-virtual-camera-platform/modules; No such file or directory

OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree

    setHotplugCallback: Registered new callback client

    NvPclSetHotplugCallback: ----------------------

     hotPlugfunc: reading from inotify FD, Thread waiting 

    NvPclOpen: ++++++++++++++++++++++

    NvPclStateControllerOpen: Found GUID 1 match at index[0]

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb75dc0

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb75e50

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb75ee0

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb75f70

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb76000

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb76090

    LoadOverridesFile: looking for override file [/Calib/camera_override.isp] 1/16CheckOverridesPermissions: cannot stat file [/Calib/camera_override.isp]

    LoadOverridesFile: looking for override file [/data/nvcam/settings/camera_overrides.isp] 2/16CheckOverridesPermissions: cannot stat file [/data/nvcam/settings/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/camera_overrides.isp] 3/16CheckOverridesPermissions: cannot stat file [/opt/nvidia/nvcam/settings/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/camera_overrides.isp] 4/16CheckOverridesPermissions: cannot stat file [/var/nvidia/nvcam/settings/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/data/nvcam/camera_overrides.isp] 5/16CheckOverridesPermissions: cannot stat file [/data/nvcam/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/data/nvcam/settings/e3322_front_A819P2.isp] 6/16CheckOverridesPermissions: cannot stat file [/data/nvcam/settings/e3322_front_A819P2.isp]

    LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/e3322_front_A819P2.isp] 7/16CheckOverridesPermissions: cannot stat file [/opt/nvidia/nvcam/settings/e3322_front_A819P2.isp]

    LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/e3322_front_A819P2.isp] 8/16CheckOverridesPermissions: cannot stat file [/var/nvidia/nvcam/settings/e3322_front_A819P2.isp]

    ---- imager: No override file found. ----

    Imager: looking for override file [/mnt/factory/camera/factory.bin] 1/16

    Imager: looking for override file [/Calib/factory.bin] 2/16

    Imager: looking for override file [/Calib/calibration.bin] 3/16

    Imager: looking for override file [(null)] 4/16

    Imager: looking for override file [(null)] 5/16

    Imager: looking for override file [(null)] 6/16

    Imager: looking for override file [(null)] 7/16

    Imager: looking for override file [(null)] 8/16

    Imager: looking for override file [(null)] 9/16

    Imager: looking for override file [(null)] 10/16

    Imager: looking for override file [(null)] 11/16

    Imager: looking for override file [(null)] 12/16

    Imager: looking for override file [(null)] 13/16

    Imager: looking for override file [(null)] 14/16

    Imager: looking for override file [(null)] 15/16

    Imager: looking for override file [(null)] 16/16

    Imager: looking for override file [/data/nvcam/settings/factory.bin] 1/16

    Imager: looking for override file [/data/nvcam/settings/e3322_front_A819P2.bin] 2/16

    Imager: looking for override file [/opt/nvidia/nvcam/settings/e3322_front_A819P2.bin] 3/16

    Imager: looking for override file [/var/nvidia/nvcam/settings/e3322_front_A819P2.bin] 4/16

    Imager: looking for override file [(null)] 5/16

    Imager: looking for override file [(null)] 6/16

    Imager: looking for override file [(null)] 7/16

    Imager: looking for override file [(null)] 8/16

    Imager: looking for override file [(null)] 9/16

    Imager: looking for override file [(null)] 10/16

    Imager: looking for override file [(null)] 11/16

    Imager: looking for override file [(null)] 12/16

    Imager: looking for override file [(null)] 13/16

    Imager: looking for override file [(null)] 14/16

    Imager: looking for override file [(null)] 15/16

    Imager: looking for override file [(null)] 16/16

    NvPclCreateDriver: Found NvPcl Driver Hal dev_name match (v4l2_sensor)

    NvPclCreateDriver: Found a Driver name match (v4l2_sensor)

    NvPclConnectDrivers: hImager was NULL, creating new imager

    NvPclInitializeDrivers: v4l2_sensor ++++++++++++++++++

    OFDPropertyGetString: could not read property [devnode-bus]

    initialize: imx219 0-0010

    queryControls: 10100736 control Frame Length

    queryControls: 10100737 control Coarse Time

    queryControls: 10100739 control Group Hold

    queryControls: 10100740 control HDR enable

    queryControls: 10100743 control Fuse ID

    queryControls: 10100745 control Gain

    queryControls: 10100836 control Bypass Mode

    queryControls: 10100837 control Override Enable

    queryControls: 10100838 control Height Align

    queryControls: 10100839 control Size Align

    queryControls: 10100840 control Write ISP format

    queryControls: 10100841 control Sensor Signal Properties

    queryControls: 10100842 control Sensor Image Properties

    queryControls: 10100843 control Sensor Control Properties

    queryControls: 10100844 control Sensor DV Timings

    queryControls: 10100866 control Sensor Modes

    Ioctl failed: Invalid argument

    OFDPropertyGetString: could not read property [use_decibel_gain]

    OFDPropertyGetString: could not read property [use_sensor_mode_id]

    OFDPropertyGetString: could not read property [delayed_gain]

    OFDPropertyCopyToLong: could not read property [has-eeprom]

    Control OTP Data not found

    Control Frame Rate not found

    Control Exposure not found

    Control Coarse Time Short not found

    Control Coarse Time Short not found

    findCustomCids: calculated MaxCoarseDiff 4

    queryPixelFormats: type: 1, pixelformat 0x30314752 "RG10"

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    queryFormatSizes: Discrete frameSize 3280x2464

    queryFormatSizes: Discrete frameSize 1920x1080

    queryFormatSizes: Discrete frameSize 1640x1232

    queryFormatSizes: Discrete frameSize 1280x720

    queryFormatSizes: Discrete frameSize 820x616

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    loadBinaryBlob: Binary read 0

    OFDPropertyGetString: could not read property [type]

    loadSubType: Sensor type missing in DT, 199

    OFDPropertyCopyToLong: could not read property [mode0.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode0.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode0.mode_type]

    mode 0: Failed to load mode type

    OFDPropertyGetString: could not read property [mode0.pixel_phase]

    mode 0: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode0.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode0.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode0.x_start]

    OFDPropertyGetString: could not read property [mode0.y_start]

    OFDPropertyGetString: could not read property [mode0.x_end]

    OFDPropertyGetString: could not read property [mode0.y_end]

    OFDPropertyGetString: could not read property [mode0.h_scaling]

    OFDPropertyGetString: could not read property [mode0.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode1.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode1.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode1.mode_type]

    mode 1: Failed to load mode type

    OFDPropertyGetString: could not read property [mode1.pixel_phase]

    mode 1: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode1.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode1.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode1.dpcm_enable]

    OFDPropertyGetString: could not read property [mode1.x_start]

    OFDPropertyGetString: could not read property [mode1.y_start]

    OFDPropertyGetString: could not read property [mode1.x_end]

    OFDPropertyGetString: could not read property [mode1.y_end]

    OFDPropertyGetString: could not read property [mode1.h_scaling]

    OFDPropertyGetString: could not read property [mode1.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode2.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode2.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode2.mode_type]

    mode 2: Failed to load mode type

    OFDPropertyGetString: could not read property [mode2.pixel_phase]

    mode 2: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode2.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode2.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode2.dpcm_enable]

    OFDPropertyGetString: could not read property [mode2.x_start]

    OFDPropertyGetString: could not read property [mode2.y_start]

    OFDPropertyGetString: could not read property [mode2.x_end]

    OFDPropertyGetString: could not read property [mode2.y_end]

    OFDPropertyGetString: could not read property [mode2.h_scaling]

    OFDPropertyGetString: could not read property [mode2.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode3.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode3.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode3.mode_type]

    mode 3: Failed to load mode type

    OFDPropertyGetString: could not read property [mode3.pixel_phase]

    mode 3: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode3.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode3.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode3.dpcm_enable]

    OFDPropertyGetString: could not read property [mode3.x_start]

    OFDPropertyGetString: could not read property [mode3.y_start]

    OFDPropertyGetString: could not read property [mode3.x_end]

    OFDPropertyGetString: could not read property [mode3.y_end]

    OFDPropertyGetString: could not read property [mode3.h_scaling]

    OFDPropertyGetString: could not read property [mode3.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode4.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode4.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode4.mode_type]

    mode 4: Failed to load mode type

    OFDPropertyGetString: could not read property [mode4.pixel_phase]

    mode 4: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode4.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode4.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode4.dpcm_enable]

    OFDPropertyGetString: could not read property [mode4.x_start]

    OFDPropertyGetString: could not read property [mode4.y_start]

    OFDPropertyGetString: could not read property [mode4.x_end]

    OFDPropertyGetString: could not read property [mode4.y_end]

    OFDPropertyGetString: could not read property [mode4.h_scaling]

    OFDPropertyGetString: could not read property [mode4.v_scaling]

    initialize: Loaded Driver: 5 Modes Available--------------

    NvPclInitializeDrivers: v4l2_sensor ------------------

    NvPclOpen: ----------------------

    LSC: LSC surface is not based on full res!

    NvPclOpen: ++++++++++++++++++++++

    NvPclStateControllerOpen: Found GUID 0 match at index[1]

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb4b2f0

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb4b380

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb4b410

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb4b4a0

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb4b530

    NvPclHwInitializeModule: allocate overrides pathname @ 0x7facb4b5c0

    LoadOverridesFile: looking for override file [/Calib/camera_override.isp] 1/16CheckOverridesPermissions: cannot stat file [/Calib/camera_override.isp]

    LoadOverridesFile: looking for override file [/data/nvcam/settings/camera_overrides.isp] 2/16CheckOverridesPermissions: cannot stat file [/data/nvcam/settings/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/camera_overrides.isp] 3/16CheckOverridesPermissions: cannot stat file [/opt/nvidia/nvcam/settings/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/camera_overrides.isp] 4/16CheckOverridesPermissions: cannot stat file [/var/nvidia/nvcam/settings/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/data/nvcam/camera_overrides.isp] 5/16CheckOverridesPermissions: cannot stat file [/data/nvcam/camera_overrides.isp]

    LoadOverridesFile: looking for override file [/data/nvcam/settings/e3322_rear_A819P2.isp] 6/16CheckOverridesPermissions: cannot stat file [/data/nvcam/settings/e3322_rear_A819P2.isp]

    LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/e3322_rear_A819P2.isp] 7/16CheckOverridesPermissions: cannot stat file [/opt/nvidia/nvcam/settings/e3322_rear_A819P2.isp]

    LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/e3322_rear_A819P2.isp] 8/16CheckOverridesPermissions: cannot stat file [/var/nvidia/nvcam/settings/e3322_rear_A819P2.isp]

    ---- imager: No override file found. ----

    Imager: looking for override file [/mnt/factory/camera/factory.bin] 1/16

    Imager: looking for override file [/Calib/factory.bin] 2/16

    Imager: looking for override file [/Calib/calibration.bin] 3/16

    Imager: looking for override file [(null)] 4/16

    Imager: looking for override file [(null)] 5/16

    Imager: looking for override file [(null)] 6/16

    Imager: looking for override file [(null)] 7/16

    Imager: looking for override file [(null)] 8/16

    Imager: looking for override file [(null)] 9/16

    Imager: looking for override file [(null)] 10/16

    Imager: looking for override file [(null)] 11/16

    Imager: looking for override file [(null)] 12/16

    Imager: looking for override file [(null)] 13/16

    Imager: looking for override file [(null)] 14/16

    Imager: looking for override file [(null)] 15/16

    Imager: looking for override file [(null)] 16/16

    Imager: looking for override file [/data/nvcam/settings/factory.bin] 1/16

    Imager: looking for override file [/data/nvcam/settings/e3322_rear_A819P2.bin] 2/16

    Imager: looking for override file [/opt/nvidia/nvcam/settings/e3322_rear_A819P2.bin] 3/16

    Imager: looking for override file [/var/nvidia/nvcam/settings/e3322_rear_A819P2.bin] 4/16

    Imager: looking for override file [(null)] 5/16

    Imager: looking for override file [(null)] 6/16

    Imager: looking for override file [(null)] 7/16

    Imager: looking for override file [(null)] 8/16

    Imager: looking for override file [(null)] 9/16

    Imager: looking for override file [(null)] 10/16

    Imager: looking for override file [(null)] 11/16

    Imager: looking for override file [(null)] 12/16

    Imager: looking for override file [(null)] 13/16

    Imager: looking for override file [(null)] 14/16

    Imager: looking for override file [(null)] 15/16

    Imager: looking for override file [(null)] 16/16

    NvPclCreateDriver: Found NvPcl Driver Hal dev_name match (v4l2_sensor)

    NvPclCreateDriver: Found a Driver name match (v4l2_sensor)

    NvPclConnectDrivers: hImager was NULL, creating new imager

    NvPclInitializeDrivers: v4l2_sensor ++++++++++++++++++

    OFDPropertyGetString: could not read property [devnode-bus]

    initialize: imx219 2-0010

    queryControls: 10100736 control Frame Length

    queryControls: 10100737 control Coarse Time

    queryControls: 10100739 control Group Hold

    queryControls: 10100740 control HDR enable

    queryControls: 10100743 control Fuse ID

    queryControls: 10100745 control Gain

    queryControls: 10100836 control Bypass Mode

    queryControls: 10100837 control Override Enable

    queryControls: 10100838 control Height Align

    queryControls: 10100839 control Size Align

    queryControls: 10100840 control Write ISP format

    queryControls: 10100841 control Sensor Signal Properties

    queryControls: 10100842 control Sensor Image Properties

    queryControls: 10100843 control Sensor Control Properties

    queryControls: 10100844 control Sensor DV Timings

    queryControls: 10100866 control Sensor Modes

    Ioctl failed: Invalid argument

    OFDPropertyGetString: could not read property [use_decibel_gain]

    OFDPropertyGetString: could not read property [use_sensor_mode_id]

    OFDPropertyGetString: could not read property [delayed_gain]

    OFDPropertyCopyToLong: could not read property [has-eeprom]

    Control OTP Data not found

    Control Frame Rate not found

    Control Exposure not found

    Control Coarse Time Short not found

    Control Coarse Time Short not found

    findCustomCids: calculated MaxCoarseDiff 4

    queryPixelFormats: type: 1, pixelformat 0x30314752 "RG10"

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    queryFormatSizes: Discrete frameSize 3280x2464

    queryFormatSizes: Discrete frameSize 1920x1080

    queryFormatSizes: Discrete frameSize 1640x1232

    queryFormatSizes: Discrete frameSize 1280x720

    queryFormatSizes: Discrete frameSize 820x616

    Ioctl failed: Invalid argument

    Ioctl failed: Invalid argument

    loadBinaryBlob: Binary read 0

    OFDPropertyGetString: could not read property [type]

    loadSubType: Sensor type missing in DT, 199

    OFDPropertyCopyToLong: could not read property [mode0.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode0.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode0.mode_type]

    mode 0: Failed to load mode type

    OFDPropertyGetString: could not read property [mode0.pixel_phase]

    mode 0: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode0.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode0.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode0.x_start]

    OFDPropertyGetString: could not read property [mode0.y_start]

    OFDPropertyGetString: could not read property [mode0.x_end]

    OFDPropertyGetString: could not read property [mode0.y_end]

    OFDPropertyGetString: could not read property [mode0.h_scaling]

    OFDPropertyGetString: could not read property [mode0.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode1.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode1.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode1.mode_type]

    mode 1: Failed to load mode type

    OFDPropertyGetString: could not read property [mode1.pixel_phase]

    mode 1: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode1.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode1.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode1.dpcm_enable]

    OFDPropertyGetString: could not read property [mode1.x_start]

    OFDPropertyGetString: could not read property [mode1.y_start]

    OFDPropertyGetString: could not read property [mode1.x_end]

    OFDPropertyGetString: could not read property [mode1.y_end]

    OFDPropertyGetString: could not read property [mode1.h_scaling]

    OFDPropertyGetString: could not read property [mode1.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode2.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode2.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode2.mode_type]

    mode 2: Failed to load mode type

    OFDPropertyGetString: could not read property [mode2.pixel_phase]

    mode 2: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode2.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode2.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode2.dpcm_enable]

    OFDPropertyGetString: could not read property [mode2.x_start]

    OFDPropertyGetString: could not read property [mode2.y_start]

    OFDPropertyGetString: could not read property [mode2.x_end]

    OFDPropertyGetString: could not read property [mode2.y_end]

    OFDPropertyGetString: could not read property [mode2.h_scaling]

    OFDPropertyGetString: could not read property [mode2.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode3.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode3.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode3.mode_type]

    mode 3: Failed to load mode type

    OFDPropertyGetString: could not read property [mode3.pixel_phase]

    mode 3: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode3.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode3.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode3.dpcm_enable]

    OFDPropertyGetString: could not read property [mode3.x_start]

    OFDPropertyGetString: could not read property [mode3.y_start]

    OFDPropertyGetString: could not read property [mode3.x_end]

    OFDPropertyGetString: could not read property [mode3.y_end]

    OFDPropertyGetString: could not read property [mode3.h_scaling]

    OFDPropertyGetString: could not read property [mode3.v_scaling]

    OFDPropertyCopyToLong: could not read property [mode4.csi_pixel_bit_depth]

    OFDPropertyCopyToLong: could not read property [mode4.dynamic_pixel_bit_depth]

    OFDPropertyGetString: could not read property [mode4.mode_type]

    mode 4: Failed to load mode type

    OFDPropertyGetString: could not read property [mode4.pixel_phase]

    mode 4: Failed to load pixel phase

    OFDPropertyCopyToLongLong: could not read property [mode4.exp_time_1h]

    OFDPropertyCopyToFloat: could not read property [mode4.gain_step_pitch]

    OFDPropertyGetString: could not read property [mode4.dpcm_enable]

    OFDPropertyGetString: could not read property [mode4.x_start]

    OFDPropertyGetString: could not read property [mode4.y_start]

    OFDPropertyGetString: could not read property [mode4.x_end]

    OFDPropertyGetString: could not read property [mode4.y_end]

    OFDPropertyGetString: could not read property [mode4.h_scaling]

    OFDPropertyGetString: could not read property [mode4.v_scaling]

    initialize: Loaded Driver: 5 Modes Available--------------

    NvPclInitializeDrivers: v4l2_sensor ------------------

    NvPclOpen: ----------------------

    LSC: LSC surface is not based on full res!

    NvPclPowerOn: +++++++++++

    NvPclPowerOn: -----------

    LSC: LSC surface is not based on full res!

    NvPclSettingsUpdate: Sending Updated Settings through PCL

    NvPclSettingsApply: Applying last settings through PCL

    apply:+++++++++++++++++++++++

    writeMode: Target mode Id(3): Resolution 1280x720

    setActiveBufferMemory: 2

    INPUT: Width 1280 Height 720 pixelformat RG10

    writeFrameRate: INPUT frameLength:1591, frameRate:30.000000

    writeGain: INPUT gainCtrl:100 analogGain:1.000000

    writeExposure: INPUT coarseTime:1587, expTime:0.033234

    Ioctl failed: Remote I/O error

    (NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function setControlValMultiple(), line 781)

    (NvOdmDevice) Error IoctlFailed:  (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function setDeviceControls(), line 1618)

    updateOutputSettings: Set Control failed. Use cached values

    updateOutputSettings: OUTPUT frameLength:1591, frameRate:30.014336

    updateOutputSettings: OUTPUT analogGain:1.000000

    updateOutputSettings: OUTPUT coarseTime:2499, expTime:0.052332

    apply:-----------------------

    NvPclSettingsApply: Reading PCL settings

    SCF: Error InvalidState:  NonFatal ISO BW requested not set. Requested = 2147483647 Set = 3925327 (in src/services/power/PowerServiceCore.cpp, function setCameraBw(), line 653)

    NvPclSettingsUpdate: Sending Updated Settings through PCL

    NvPclSettingsApply: Applying last settings through PCL

    apply:+++++++++++++++++++++++

    Ioctl failed: Remote I/O error

    (NvOdmDevice) Error IoctlFailed:  (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function streamControl(), line 1642)

    (NvOdmDevice) Error IoctlFailed:  (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function apply(), line 202)

    NvPclSettingsApply: Reading PCL settings

    NvPclSettingsUpdate: Sending Updated Settings through PCL

    NvPclSettingsApply: Applying last settings through PCL

    apply:+++++++++++++++++++++++

    apply:-----------------------

    NvPclSettingsApply: Reading PCL settings

    PowerServiceCore:handleRequests: timePassed = 1216

    NvPclSettingsUpdate: Sending Updated Settings through PCL

    NvPclSettingsApply: Applying last settings through PCL

    apply:+++++++++++++++++++++++

    apply:-----------------------

    NvPclSettingsApply: Reading PCL settings

    NvPclSettingsUpdate: Sending Updated Settings through PCL

    NvPclSettingsApply: Applying last settings through PCL

    apply:+++++++++++++++++++++++

    apply:-----------------------

    NvPclSettingsApply: Reading PCL settings

    SCF: Error Timeout:  (propagating from src/services/capture/CaptureServiceEvent.cpp, function wait(), line 59)

    Error: Camera HwEvents wait, this may indicate a hardware timeout occured,abort current/incoming cc

    launchCC abort cc 104 session 0

    SCF: Error Timeout:  (propagating from src/api/Session.cpp, function capture(), line 830)

    launchCC abort cc 105 session 0

    SCF: Error Timeout:  (propagating from src/api/Session.cpp, function capture(), line 830)

    launchCC abort cc 106 session 0

    SCF: Error Timeout:  (propagating from src/api/Session.cpp, function capture(), line 830)

    launchCC abort cc 107 session 0

    SCF: Error Timeout:  (propagating from src/api/Session.cpp, function capture(), line 830)

    launchCC abort cc 108 session 0

    SCF: Error Timeout:  (propagating from src/api/Session.cpp, function capture(), line 830)

    Error: waitCsiFrameStart timeout guid 0

    SCF: Error Timeout: VI SOF timed out! (in src/services/capture/CaptureServiceDeviceViCsi.cpp, function waitCsiFrameStart(), line 948)

    VI Stream Id = 1 Virtual Channel = 0

Looks like you didn’t working on J4.2, the driver you integrate should for Jetpack 4.2

Sorry there was a mistake.
We are based on Jetpack 3.2.1

Check if v4l2-ctl can capture?

v4l2-ctl -d /dev/video0 --set-fmt-video=width=3280,height=2464,pixelformat=RG10 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=1 --stream-to=t.raw

the command gives a t.raw file which size is 16MB.

I forgot to add in the first place that the problem is not systematic. Sometimes, we have the expected output from the cameras, sometimes the green screen.

It’s looks like stabilise issue. You may need to get help from the vendor.

Is there anyway this problem could be related to nvcamera-daemon or nvcamerasrc gstreamer source ?

The Jetson Nano Dev Kit board has the CSI-2 connector for the Raspberry Pi camera 2.1 (with imx219) sensor. It comes with the Jetpack 4.2 which includes the imx219 driver.

The question is whether this driver also supports the TX2 and Xavier, as both can use the same Jetpack 4.2. Can somebody confirm this? Has this been tested? Does the driver support multiple instances of the camera? I would think that device tree changes are required however. We do have various carrier boards for the TX2, which have a single or multiple CSI-2 connectors for the imx219 sensor (or PI cam).

  1. J100 (4x CSI-2)
  2. J106 (6x CSI-2)
  3. J120/J121 (1x CSI-2)
  4. J140/J142 (3x CSI-2)

Xavier:

  1. X200 (8x CSI-2)
  2. X220 (6x CSI-2 via mechanical adapter)

If the above is the case, then this may solve the problem, which you are seeing.

We have now the JN30 carrier board for the Nano. It features 2 of these camera connectors for the imx219 sensor. We are able to connect the camera to either connector. We have worked out the device tree changes for each setup:

  1. J10: CSI-2 AB with one camera (imx219)
  2. J5: CSI-2 CD with one camera (imx219)

But we cannot connect 2 cameras at the same time. This seems to be a problem with the device tree settings. Only one CAM device is created as /dev/video0. We are not able to create the /dev/video1 device for the 2nd camera.

The JN30 might support 2 more imx219 sensors (for a total of 4), where most of the camera logic is already integrated on the JN30. We just need the right setup for the device tree.

We would like to connect 2 imx219 cameras to the JN30 Nano carrier board. But we cannot get both of them to work. Just one or the other. So the hardware must be fine. But we have an issue in the device tree setup.

We have made three changes in the device tree, to switch to the camera from J10 (CSI-2 AB) to J5 (CSI-2 CD). Now we can connect the imx219 camera to the other connector. The video device stays “/dev/video0”.

  1. assign new i2c bus in the first
  2. give it a new name: “rbpcv2_imx219_c”
  3. switch to the other CSI-2 bus (CSI-2 CD)

The problem is that we are not able the instantiate 2 camera, one connected to each connector. We have tried to insert both code sections. The one from the dev kit and the new one below.

Still we only get one “/dev/video0” device. We seem to be missing something. Can you be of help.

Complete DTSI file with all 3 changes:
http://auvidea.com/download/tegra210-camera-rbpcv2-imx219.dtsi

i2c@7000c000 {					//changed to other i2c bus 
			rbpcv2_imx219_c@10 {			        //changed form rbpcv2_imx219_a to rbpcv2_imx219_c
				compatible = "nvidia,imx219";
				reg = <0x10>;

				devnode = "video1";

				physical_w = "3.680";
				physical_h = "2.760";

				sensor_model = "imx219";

				use_sensor_mode_id = "true";

				
				mode0 { 
					mclk_khz = "24000";
					num_lanes = "2";
					tegra_sinterface = "serial_c";					//changed from serial_a to serial_c

In the end we would like to also use 2 more camera on CSI-2 E and CSI-2 F. These also will be imx219 cameras. And they will use 2 more I2C busses.

Did you have to add two imx219 to the correct i2c bus in the DT?

The 4 cameras are connected to the four I2C busses of the Nano, so each camera is on its own I2C bus. We could verify that this works fine at least for the 2 first cameras, as we can address them individually with a specific device tree. The settings below are for the Nano module dev kit version.

Camera 1: (this is the setting for the camera on the dev kit board)
CSI-2 bus AB (2 or 4 lanes)
I2C: CAM_I2C on pin 213 and 215
i2c@546c0000

Camera 2:
CSI-2 bus CD (2 or 4 lanes)
I2C: GEN1_I2C on pin 185 and 187
i2c@7000c000

Camera 3:
CSI-2 bus E (2 lanes)
I2C: GEN2_I2C on pin 189 and 191
i2c@7000c400 (is this correct?)

Camera 4:
CSI-2 bus F (2 lanes)
I2C: GEN3_I2C on pin 232 and 234
i2c@7000c500 (is this correct?)

Yes, the i2c bus is correct.

Hi ShaneCCC,

can you help us in putting a device tree together which supports 2 to 4 camera in parallel? We have attempted this but we failed.

We have copied the settings for camera 1 and camera 2 into one device tree file:
http://www.auvidea.com/download/tegra210-camera-rbpcv2-imx219-2cams.dtsi

The first problem is that that it still only creates one /dev/video0 device. How can we get /dev/video1?
tegra210-camera-rbpcv2-imx219-2cams.dtsi.zip (4.58 KB)

The num-channels should be 2.

host1x {
		vi {
			num-channels = <1>;

That is a good input. Now we are one step further. We now see both video devices /dev/video0 and /dev/video1.

But none of these 2 cameras actually work if both cameras are connected. We do not get a video window shown with gstreamer. If we just connect camera 1, it works fine (only /dev/video0). If we just connect camera 2 (only /dev/video0) it does not work. nvgstcapture-1_0 does not show a video window but does not throw an error message either.

Both cameras connected: In dmesg we see the following 2 errors (imx in line 6 and I2c in line 12):

ls /dev/video*
/dev/video0  /dev/video1
dmesg | grep imx
[    3.369975] imx219 0-0010: tegracam sensor driver:imx219_v2.0.6
[    3.394385] imx219 6-0010: tegracam sensor driver:imx219_v2.0.6
[    4.533705] vi 54080000.vi: subdev imx219 6-0010 bound
[    4.534311] vi 54080000.vi: subdev imx219 0-0010 bound
[    9.749646]<u> imx219 6-0010: Error writing mode</u>
dmesg | grep i2c
[    0.441687] iommu: Adding device 546c0000.i2c to group 22
[    0.441986] iommu: Adding device 7000c000.i2c to group 23
[    0.443457] tegra-pmc 7000e400.pmc: i2c-thermtrip node not found, emergency thermal reset disabled.
[    0.494371] iommu: Adding device 7000c400.i2c to group 26
[    0.494650] iommu: Adding device 7000c500.i2c to group 27
[    0.494919] iommu: Adding device 7000c700.i2c to group 28
[    0.495216] iommu: Adding device 7000d000.i2c to group 29
[    0.495482] iommu: Adding device 7000d100.i2c to group 30
[    0.595255] i2c i2c-6: Unbalanced pm_runtime_enable!
[    3.368363] i2c /dev entries driver
[    9.749545]<u> tegra-vii2c 546c0000.i2c: no acknowledge from address 0x10</u>

The current device tree is attached.
tegra210-camera-rbpcv2-imx219_2xvideo_devs.dtsi.zip (4.61 KB)

Make sure your power/rest pin is correct with your HW design.

And please using v4l2-ctl to verify both of them first.

v4l2-ctl -d /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=RG10 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=5

For I2C, you can probe the waveform to confirm output to camera is correct and no ACK from camera. If so, it might be the issue of camera initiating which maybe needs vendor to check.

There are some in DT need to modify. But should not fixed the i2c no ack problem.
The i2c problem please probe the i2c signal and make sure the power/and reset pin is correct.

embedded_metadata_height = "2";
				};

				ports {
					#address-cells = <1>;
					#size-cells = <0>;
					status="okay";
					port@0 {
						status="okay";
						reg = <0>;
						rbpcv2_imx219_out1: endpoint {
							status="okay";
							port-index = <0>; //** <b>Should be 2</b>  **//
							bus-width = <2>;
							remote-endpoint = <&rbpcv2_imx219_csi_in1>;			
						};
					};
status = "okay";
					reg = <0>;	
					rbpcv2_imx219_vi_in1: endpoint<s>1</s> {  //** endpoint only **/
						status = "okay";
						port-index = <2>;		
						bus-width = <2>;
						remote-endpoint = <&rbpcv2_imx219_csi_out1>;
					};

@Auvidea

any update regards supporting more then a single camera?