Jetson Orin Nano and IMX219 MIPI CSI-2 Camera(s) not working

I can see both camera inputs using gst-launch… command but video apps (cheese, guvcview) are unable to show video. I am including my system diagnostic commands and responses below. Been on this for days now and would appreciate any guidance to get cameras working.

Camera(s) Qty(2) ArduCam 8MP IMX219 Autofocus Lens
Computer Jetson Orin Nano Developer kit
History New system installation on new Jetson with new cameras

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
NVIDIA NVIDIA Jetson Orin Nano Engineering Reference Developer Kit Super
L4T 36.4.7 [ JetPack UNKNOWN ]
Ubuntu 22.04.5 LTS
Kernel Version: 5.15.148-tegra
CUDA 12.6.68
CUDA Architecture: 8.7
OpenCV version: 4.8.0
OpenCV Cuda: NO
CUDNN: ii libcudnn9
TensorRT: 10.3.0.30
Vision Works: NOT_INSTALLED
VPI: 3.2.4
Vulcan: 1.3.204

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Check I2C Bus for Sensor (10 for CAM0 and bus 9 for CAM1)

sudo i2cdetect -y -r 9

0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – –
10: UU – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –

sudo i2cdetect -y -r 10

 0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

00: – – – – – – – –
10: UU – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – – – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – – – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
System finds the cameras :)

ls /dev/video*

/dev/video0 /dev/video1

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
v4l2-ctl --list-devices

NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0

vi-output, imx219 10-0010 (platform:tegra-capture-vi:1):
/dev/video1

vi-output, imx219 9-0010 (platform:tegra-capture-vi:2):
/dev/video0

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
show camera permissions

ls -l /dev/video0

crw-rw----+ 1 root video 81, 0 Feb 8 22:12 /dev/video0

ls -l /dev/video1

crw-rw----+ 1 root video 81, 4 Feb 8 22:12 /dev/video1

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
lsmod | grep video

videobuf2_dma_contig 24576 1 tegra_camera
videobuf2_memops 20480 1 videobuf2_dma_contig
videobuf2_v4l2 28672 1 tegra_camera
videobuf2_common 61440 4 videobuf2_dma_contig,videobuf2_v4l2,tegra_camera,videobuf2_memops
videodev 249856 4 v4l2_async,videobuf2_v4l2,tegra_camera,videobuf2_common
mc 57344 4 videodev,videobuf2_v4l2,tegra_camera,videobuf2_common

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
camera configuration

xrandr --query

Screen 0: minimum 8 x 8, current 3840 x 2160, maximum 32767 x 32767
DP-0 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 607mm x 345mm
3840x2160 30.00*+
2560x1440 59.95
1920x1080 60.00 59.94
1680x1050 59.95
1600x900 60.00
1440x900 59.89
1280x1024 75.02 60.02
1280x800 59.81
1280x720 60.00
1152x864 75.00
1024x768 75.03 70.07 60.00
800x600 75.00 72.19 60.32 56.25
640x480 75.00 72.81 59.94
DP-1 disconnected (normal left inverted right x axis y axis)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

I can see both cameras working properly with this command :)

gst-launch-1.0 -e \
  multiqueue sync-by-running-time=true name=mqueue \
  nvarguscamerasrc sensor-id=0 ! 'video/x-raw(memory:NVMM),width=1920,height=1080,format=NV12,framerate=30/1' ! mqueue.sink_0 \
  nvarguscamerasrc sensor-id=1 ! 'video/x-raw(memory:NVMM),width=1920,height=1080,format=NV12,framerate=30/1' ! mqueue.sink_1 \
  mqueue.src_0 ! nv3dsink \
  mqueue.src_1 ! nv3dsink

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
This command fails

gst-launch-1.0 nvarguscamerasrc ! ‘video/x-raw(memory:NVMM), width=1280, height=720, framerate=30/1’ ! nvvidconv ! nvegltransform ! nveglglessink -e

Setting pipeline to PAUSED …

Using winsys: x11
Pipeline is live and does not need PREROLL …
Got context from element ‘eglglessink0’: gst.egl.EGLDisplay=context, display=(GstEGLDisplay)NULL;
Pipeline is PREROLLED …
Setting pipeline to PLAYING …
New clock: GstSystemClock
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected…
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3280 x 2464 FR = 21.000000 fps Duration = 47619048 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 3280 x 1848 FR = 28.000001 fps Duration = 35714284 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1920 x 1080 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1640 x 1232 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 59.999999 fps Duration = 16666667 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: Running with following settings:
Camera index = 0
Camera mode = 4
Output Stream W = 1280 H = 720
seconds to Run = 0
Frame Rate = 59.999999
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
Redistribute latency…
WARNING: from element /GstPipeline:pipeline0/GstEglGlesSink:eglglessink0: Pipeline construction is invalid, please add queues.
Additional debug info:
../libs/gst/base/gstbasesink.c(1249): gst_base_sink_query_latency (): /GstPipeline:pipeline0/GstEglGlesSink:eglglessink0:
Not enough buffering available for the processing deadline of 0:00:00.015000000, add enough queues to buffer 0:00:00.015000000 additional data. Shortening processing latency to 0:00:00.000000000.
WARNING: from element /GstPipeline:pipeline0/GstEglGlesSink:eglglessink0: Pipeline construction is invalid, please add queues.
Additional debug info:
../libs/gst/base/gstbasesink.c(1249): gst_base_sink_query_latency (): /GstPipeline:pipeline0/GstEglGlesSink:eglglessink0:
Not enough buffering available for the processing deadline of 0:00:00.015000000, add enough queues to buffer 0:00:00.015000000 additional data. Shortening processing latency to 0:00:00.000000000.
ERROR: from element /GstPipeline:pipeline0/GstEglGlesSink:eglglessink0: Output window was closed
Additional debug info:
/dvs/git/dirty/git-master_linux/3rdparty/gst/gst-nveglglessink/ext/eglgles/gsteglglessink.c(914): gst_eglglessink_event_thread (): /GstPipeline:pipeline0/GstEglGlesSink:eglglessink0
Execution ended after 0:00:06.636369983
Setting pipeline to NULL …
GST_ARGUS: Cleaning up
CONSUMER: Done Success
GST_ARGUS: Done Success
Freeing pipeline …

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Try to see camera with cheese - fails :(

cheese

** Message: 08:11:18.904: cheese-application.vala:222: Error during camera setup: No device found

(cheese:11874): cheese-CRITICAL **: 08:11:18.921: cheese_camera_device_get_name: assertion ‘CHEESE_IS_CAMERA_DEVICE (device)’ failed

(cheese:11874): GLib-CRITICAL **: 08:11:18.921: g_variant_new_string: assertion ‘string != NULL’ failed

(cheese:11874): GLib-CRITICAL **: 08:11:18.921: g_variant_ref_sink: assertion ‘value != NULL’ failed

(cheese:11874): GLib-GIO-CRITICAL **: 08:11:18.921: g_settings_schema_key_type_check: assertion ‘value != NULL’ failed

(cheese:11874): GLib-CRITICAL **: 08:11:18.921: g_variant_get_type_string: assertion ‘value != NULL’ failed

(cheese:11874): GLib-GIO-CRITICAL **: 08:11:18.921: g_settings_set_value: key ‘camera’ in ‘org.gnome.Cheese’ expects type ‘s’, but a GVariant of type ‘(null)’ was given

(cheese:11874): GLib-CRITICAL **: 08:11:18.921: g_variant_unref: assertion ‘value != NULL’ failed

** (cheese:11874): CRITICAL **: 08:11:18.921: cheese_preferences_dialog_setup_resolutions_for_device: assertion ‘device != NULL’ failed

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Try to see video in gucview - fails :(

guvcview -d /dev/video0

Opening in O_NONBLOCKING MODE
libv4l2: error getting capabilities: Inappropriate ioctl for device
V4L2_CORE: ERROR opening V4L2 interface for /dev/v4l-subdev0
Opening in O_NONBLOCKING MODE
libv4l2: error getting capabilities: Inappropriate ioctl for device
V4L2_CORE: ERROR opening V4L2 interface for /dev/v4l-subdev1
Opening in O_NONBLOCKING MODE
libv4l2: error getting capabilities: Inappropriate ioctl for device
V4L2_CORE: ERROR opening V4L2 interface for /dev/v4l-subdev3
Opening in O_NONBLOCKING MODE
libv4l2: error getting capabilities: Inappropriate ioctl for device
V4L2_CORE: ERROR opening V4L2 interface for /dev/v4l-subdev2
Opening in O_NONBLOCKING MODE
Opening in BLOCKING MODE
Available Sensor modes :
Resolution: 3280 x 2464 ; Framerate = 21.000000; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 3280 x 1848 ; Framerate = 28.000001; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1920 x 1080 ; Framerate = 29.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1640 x 1232 ; Framerate = 29.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1280 x 720 ; Framerate = 59.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

V4L2_CORE: Unable to find parent usb device.Opening in O_NONBLOCKING MODE
Opening in BLOCKING MODE
Available Sensor modes :
Resolution: 3280 x 2464 ; Framerate = 21.000000; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 3280 x 1848 ; Framerate = 28.000001; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1920 x 1080 ; Framerate = 29.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1640 x 1232 ; Framerate = 29.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1280 x 720 ; Framerate = 59.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

V4L2_CORE: Unable to find parent usb device.GUVCVIEW: version 2.0.7
GUVCVIEW: couldn’t open /home/patrick/.config/guvcview2/video0 for read: No such file or directory
Opening in O_NONBLOCKING MODE
Opening in BLOCKING MODE
Available Sensor modes :
Resolution: 3280 x 2464 ; Framerate = 21.000000; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 3280 x 1848 ; Framerate = 28.000001; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1920 x 1080 ; Framerate = 29.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1640 x 1232 ; Framerate = 29.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

Resolution: 1280 x 720 ; Framerate = 59.999999; Analog Gain Range Min 1.000000, Max 10.625000, Exposure Range Min 13000, Max 683709000

DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
DEFAULT no IOCTL called
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: Invalid argument
V4L2_CORE: Error opening device /dev/video0: video capture not supported.
GUVCVIEW (1): Guvcview error
no video device (/dev/video0) found

(guvcview:11219): Gtk-WARNING **: 08:01:20.488: Theme parsing error: :1:17: not a number

(guvcview:11219): Gtk-WARNING **: 08:01:20.488: Theme parsing error: :1:31: Using Pango syntax for the font: style property is deprecated; please use CSS syntax

(guvcview:11219): Gtk-WARNING **: 08:01:20.488: Theme parsing error: :1:17: not a number

(guvcview:11219): Gtk-WARNING **: 08:01:20.488: Theme parsing error: :1:32: Using Pango syntax for the font: style property is deprecated; please use CSS syntax

(guvcview:11219): Gtk-WARNING **: 08:01:20.488: Theme parsing error: :1:17: not a number

(guvcview:11219): Gtk-WARNING **: 08:01:20.488: Theme parsing error: :1:26: Using Pango syntax for the font: style property is deprecated; please use CSS syntax

*** Please note that this reply is generated by LLM automatically ***

Based on the provided information, it appears that you are experiencing issues with accessing the camera on your Jetson Orin Nano using various applications such as cheese and guvcview. However, you are able to see both camera inputs using the gst-launch command.

The main issue seems to be that the camera applications are unable to find the camera device, and you are receiving errors such as “No device found” and “Inappropriate ioctl for device”.

After reviewing the provided information, I noticed that the camera API matrix suggests that the libargus and GStreamer (GST-nvarguscamerasrc) APIs are available for cameras that use the Jetson ISP (CSI interface). However, the V4L2 API is used for cameras that do not use the Jetson ISP (CSI interface) or for USB (UVC) cameras.

Since you are able to see both camera inputs using the gst-launch command, it is likely that the cameras are properly connected and configured. However, the issue seems to be with the camera applications (cheese and guvcview) not being able to find the camera device.

Here are a few potential solutions to try:

  1. Use the libargus API: Since the camera API matrix suggests that the libargus API is the preferred path to access the camera, you may want to try using the libargus API to access the camera. You can use the nvarguscamerasrc element in GStreamer to access the camera using the libargus API.

  2. Check camera permissions: Make sure that the camera applications have the necessary permissions to access the camera device. You can check the camera permissions by running the command ls -l /dev/video0 and ls -l /dev/video1. If the permissions are not set correctly, you can try changing the ownership of the camera device to the user running the camera application.

  3. Use the V4L2 API: If the camera applications are using the V4L2 API, you may want to try using the v4l2-ctl command to check the camera settings and to see if the camera device is properly configured.

  4. Check for conflicts with other camera applications: If you have other camera applications running in the background, they may be interfering with the camera applications you are trying to use. Try closing all other camera applications and then try running the camera application again.

  5. Reboot the system: Sometimes, simply rebooting the system can resolve issues with camera applications not being able to find the camera device.

In comparison to the provided information, it appears that the camera API matrix is correct, and the libargus API is the preferred path to access the camera. However, the issue seems to be with the camera applications not being able to find the camera device, rather than an issue with the camera API itself.

I hope this helps! Let me know if you have any further questions or if you would like more information on any of the potential solutions I suggested.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

Hello @pfrantz

A few questions:

  • Is your Jetson a devkit?
  • Did you enable the IMX219 driver by using jetson-io?

Check NVIDIA Jetson Orin Nano - Camera Sensors Support - IMX219 and try with the v4l2-ctl command from there.

Please let us know your results.

Best regards.
Eduardo Salazar
Embedded SW Engineer at RidgeRun

Contact us: support@ridgerun.com
Developers wiki: https://developer.ridgerun.com/
Website: www.ridgerun.com

Eduardo,

Q: Is your Jetson a devkit?

A: My Jetson is a dev kit that I just purchased from microcenter last week.

Q: Did you enable the IMX219 driver by using jetson-io?

A: Yes, I configured for the dual IMX219 option. Note that the camera(s) work from the gst-launch-1.0 -e….. command but not from cheese or guvcview

Q: Try the v4l2-ctl command

A1: v4l2-ctl --list-devices

NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0

vi-output, imx219 10-0010 (platform:tegra-capture-vi:1):
/dev/video1

vi-output, imx219 9-0010 (platform:tegra-capture-vi:2):
/dev/video0

A2: v4l2-ctl --all

Driver Info:
Driver name : tegra-video
Card type : vi-output, imx219 9-0010
Bus info : platform:tegra-capture-vi:2
Driver version : 5.15.148
Capabilities : 0x84200001
Video Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Media Driver Info:
Driver name : tegra-camrtc-ca
Model : NVIDIA Tegra Video Input Device
Serial :
Bus info :
Media version : 5.15.148
Hardware revision: 0x00000003 (3)
Driver version : 5.15.148
Interface Info:
ID : 0x0300000b
Type : V4L Video
Entity Info:
ID : 0x00000009 (9)
Name : vi-output, imx219 9-0010
Function : V4L2 I/O
Pad 0x0100000a : 0: Sink
Link 0x0200000f: from remote pad 0x1000006 of entity ‘13e00000.host1x:nvcsi@15a00000-’ (Unknown sub-device (0002000a)): Data, Enabled
Priority: 2
Video input : 0 (Camera 2: ok)
Format Video Capture:
Width/Height : 3280/2464
Pixel Format : ‘RG10’ (10-bit Bayer RGRG/GBGB)
Field : None
Bytes per Line : 6560
Size Image : 16163840
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Full Range)
Flags :
Streaming Parameters Video Capture:
Capabilities : timeperframe
Frames per second: 21.000 (21/1)
Read buffers : 0

Camera Controls

                 group_hold 0x009a2003 (bool)   : default=0 value=0 flags=execute-on-write
                sensor_mode 0x009a2008 (int64)  : min=0 max=5 step=1 default=0 value=0 flags=slider
                       gain 0x009a2009 (int64)  : min=16 max=171 step=1 default=16 value=16 flags=slider
                   exposure 0x009a200a (int64)  : min=13 max=683710 step=1 default=2495 value=13 flags=slider
                 frame_rate 0x009a200b (int64)  : min=2000000 max=21000000 step=1 default=21000000 value=2000000 flags=slider
       sensor_configuration 0x009a2032 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[22] flags=read-only, volatile, has-payload
     sensor_mode_i2c_packet 0x009a2033 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[1026] flags=read-only, volatile, has-payload
  sensor_control_i2c_packet 0x009a2034 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[1026] flags=read-only, volatile, has-payload
                bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0 (0 0x0)
			0: 0 (0x0)
			1: 1 (0x1)
            override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0 (0 0x0)
			0: 0 (0x0)
			1: 1 (0x1)
               height_align 0x009a2066 (int)    : min=1 max=16 step=1 default=1 value=1
                 size_align 0x009a2067 (intmenu): min=0 max=2 default=0 value=0 (1 0x1)
			0: 1 (0x1)
			1: 65536 (0x10000)
			2: 131072 (0x20000)
           write_isp_format 0x009a2068 (int)    : min=1 max=1 step=1 default=1 value=1
   sensor_signal_properties 0x009a2069 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][18] flags=read-only, has-payload
    sensor_image_properties 0x009a206a (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][16] flags=read-only, has-payload
  sensor_control_properties 0x009a206b (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][36] flags=read-only, has-payload
          sensor_dv_timings 0x009a206c (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][16] flags=read-only, has-payload
           low_latency_mode 0x009a206d (bool)   : default=0 value=0
           preferred_stride 0x009a206e (int)    : min=0 max=65535 step=1 default=0 value=0
override_capture_timeout_ms 0x009a206f (int)    : min=-1 max=2147483647 step=1 default=2500 value=2500
               sensor_modes 0x009a2082 (int)    : min=0 max=30 step=1 default=30 value=5 flags=read-only

No problem by below command.

I don’t think the cheese and guvcview able to work for the CSI cameras.

export DISPLAY=:0
gst-launch-1.0 nvarguscamerasrc ! ‘video/x-raw(memory:NVMM), width=1280, height=720, framerate=30/1’ ! nvvidconv ! nvegltransform ! nveglglessink -e

Hello @pfrantz

Please try the command recommended by @ShaneCCC and let us know your results.

If the command fails, you can also try to capture using v4l2-ctl:

v4l2-ctl --set-fmt-video=width=3280,height=2464,pixelformat=RG10 --stream-mmap --stream-count=300 -d /dev/video0

If capture still failing, you can share the VI trace messages by doing:

sudo su
modprobe rtcpu_debug

echo 1 > /sys/kernel/debug/tracing/tracing_on
echo 30720 > /sys/kernel/debug/tracing/buffer_size_kb
echo 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enable
echo 1 > /sys/kernel/debug/tracing/events/freertos/enable
echo 3 > /sys/kernel/debug/camrtc/log-level
echo 1 > /sys/kernel/debug/tracing/events/camera_common/enable
echo > /sys/kernel/debug/tracing/trace

exit

And share also the dmesg logs.

Regards!

Eduardo,

Q: Is your Jetson a devkit?

A: My Jetson is a dev kit that I just purchased from microcenter last week.

Q: Did you enable the IMX219 driver by using jetson-io?

A: Yes, I configured for the dual IMX219 option. Note that the camera(s) work from the gst-launch-1.0 -e….. command but not from cheese or guvcview

Q: Try the v4l2-ctl command

A1: v4l2-ctl --list-devices

NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0

vi-output, imx219 10-0010 (platform:tegra-capture-vi:1):
/dev/video1

vi-output, imx219 9-0010 (platform:tegra-capture-vi:2):
/dev/video0

A2: v4l2-ctl --all

Driver Info:
Driver name : tegra-video
Card type : vi-output, imx219 9-0010
Bus info : platform:tegra-capture-vi:2
Driver version : 5.15.148
Capabilities : 0x84200001
Video Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Media Driver Info:
Driver name : tegra-camrtc-ca
Model : NVIDIA Tegra Video Input Device
Serial :
Bus info :
Media version : 5.15.148
Hardware revision: 0x00000003 (3)
Driver version : 5.15.148
Interface Info:
ID : 0x0300000b
Type : V4L Video
Entity Info:
ID : 0x00000009 (9)
Name : vi-output, imx219 9-0010
Function : V4L2 I/O
Pad 0x0100000a : 0: Sink
Link 0x0200000f: from remote pad 0x1000006 of entity ‘13e00000.host1x:nvcsi@15a00000-’ (Unknown sub-device (0002000a)): Data, Enabled
Priority: 2
Video input : 0 (Camera 2: ok)
Format Video Capture:
Width/Height : 3280/2464
Pixel Format : ‘RG10’ (10-bit Bayer RGRG/GBGB)
Field : None
Bytes per Line : 6560
Size Image : 16163840
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Full Range)
Flags :
Streaming Parameters Video Capture:
Capabilities : timeperframe
Frames per second: 21.000 (21/1)
Read buffers : 0

Camera Controls

                 group_hold 0x009a2003 (bool)   : default=0 value=0 flags=execute-on-write
                sensor_mode 0x009a2008 (int64)  : min=0 max=5 step=1 default=0 value=0 flags=slider
                       gain 0x009a2009 (int64)  : min=16 max=171 step=1 default=16 value=16 flags=slider
                   exposure 0x009a200a (int64)  : min=13 max=683710 step=1 default=2495 value=13 flags=slider
                 frame_rate 0x009a200b (int64)  : min=2000000 max=21000000 step=1 default=21000000 value=2000000 flags=slider
       sensor_configuration 0x009a2032 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[22] flags=read-only, volatile, has-payload
     sensor_mode_i2c_packet 0x009a2033 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[1026] flags=read-only, volatile, has-payload
  sensor_control_i2c_packet 0x009a2034 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[1026] flags=read-only, volatile, has-payload
                bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0 (0 0x0)
			0: 0 (0x0)
			1: 1 (0x1)
            override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0 (0 0x0)
			0: 0 (0x0)
			1: 1 (0x1)
               height_align 0x009a2066 (int)    : min=1 max=16 step=1 default=1 value=1
                 size_align 0x009a2067 (intmenu): min=0 max=2 default=0 value=0 (1 0x1)
			0: 1 (0x1)
			1: 65536 (0x10000)
			2: 131072 (0x20000)
           write_isp_format 0x009a2068 (int)    : min=1 max=1 step=1 default=1 value=1
   sensor_signal_properties 0x009a2069 (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][18] flags=read-only, has-payload
    sensor_image_properties 0x009a206a (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][16] flags=read-only, has-payload
  sensor_control_properties 0x009a206b (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][36] flags=read-only, has-payload
          sensor_dv_timings 0x009a206c (u32)    : min=0 max=4294967295 step=1 default=0 dims=[30][16] flags=read-only, has-payload
           low_latency_mode 0x009a206d (bool)   : default=0 value=0
           preferred_stride 0x009a206e (int)    : min=0 max=65535 step=1 default=0 value=0
override_capture_timeout_ms 0x009a206f (int)    : min=-1 max=2147483647 step=1 default=2500 value=2500
               sensor_modes 0x009a2082 (int)    : min=0 max=30 step=1 default=30 value=5 flags=read-only

Well, the statement

I don’t think that cheese and guvcview are able to work for the CSI cameras.

seems to describe the problem very well. I googled the issue and other sources seem to confirm this statement. I am going to table this for now.

Thank you for your support.