Problem in capturing image via rpi camera in axon board

I am using rpi camera v2 for capturing image in axon board.
I am using v4l2-ctl library for capturing image but captured image is looking greenish.

do one thing,

sudo apt update
sudo apt upgrade

Most probably the issue is coming from the in-built ISP tuning file, updating the linux will install the necessary ISP files into the board for rpi cam-v2

I also tried this but still facing same problem.

give me output of

cat /etc/os-release

icharak@vicharak:~$ cat /etc/os-release
PRETTY_NAME=“Ubuntu 24.04.4 LTS”
NAME=“Ubuntu”
VERSION_ID=“24.04”
VERSION=“24.04.4 LTS (Noble Numbat)”
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL=“https://www.ubuntu.com/
SUPPORT_URL=“https://help.ubuntu.com/
BUG_REPORT_URL=“Bugs : Ubuntu
PRIVACY_POLICY_URL=“Data privacy | Ubuntu and Canonical Legal
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
vicharak@vicharak:~$

check if there is a tuning file for the imx219,

ls /etc/iqfiles/imx219*

vicharak@vicharak:~$ ls /etc/iqfiles/imx219*
/etc/iqfiles/imx219_RADXA-CAMERA-8M_default.json
/etc/iqfiles/imx219_rpi-camera-v2_default.json
vicharak@vicharak:~$

There are IQ files for the camera, give me output of

media-ctl -d 0 -p
media-ctl -d 1 -p

vicharak@vicharak:~$ media-ctl -d 0 -p
media-ctl -d 1 -p
Media controller API version 6.1.75

Media device information

driver rkcif
model rkcif-mipi-lvds2
serial
bus info platform:rkcif-mipi-lvds2
hw revision 0x0
driver version 6.1.75

Device topology

  • entity 1: stream_cif_mipi_id0 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video0
    pad0: Sink
    ← “rockchip-mipi-csi2”:1 [ENABLED]
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 5: stream_cif_mipi_id1 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video1
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2 [ENABLED]
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 9: stream_cif_mipi_id2 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video2
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3 [ENABLED]
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 13: stream_cif_mipi_id3 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video3
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4 [ENABLED]
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 17: rkcif_scale_ch0 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video4
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5 [ENABLED]
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 21: rkcif_scale_ch1 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video5
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6 [ENABLED]
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 25: rkcif_scale_ch2 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video6
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7 [ENABLED]
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 29: rkcif_scale_ch3 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video7
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8 [ENABLED]
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 33: rkcif_tools_id0 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video8
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9 [ENABLED]
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11

  • entity 37: rkcif_tools_id1 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video9
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10 [ENABLED]
    ← “rockchip-mipi-csi2”:11

  • entity 41: rkcif_tools_id2 (1 pad, 11 links)
    type Node subtype V4L flags 0
    device node name /dev/video10
    pad0: Sink
    ← “rockchip-mipi-csi2”:1
    ← “rockchip-mipi-csi2”:2
    ← “rockchip-mipi-csi2”:3
    ← “rockchip-mipi-csi2”:4
    ← “rockchip-mipi-csi2”:5
    ← “rockchip-mipi-csi2”:6
    ← “rockchip-mipi-csi2”:7
    ← “rockchip-mipi-csi2”:8
    ← “rockchip-mipi-csi2”:9
    ← “rockchip-mipi-csi2”:10
    ← “rockchip-mipi-csi2”:11 [ENABLED]

  • entity 45: rockchip-mipi-csi2 (12 pads, 122 links, 0 routes)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev0
    pad0: Sink
    [stream:0 fmt:SRGGB10_1X10/3280x2464 field:none
    crop.bounds:(0,0)/3280x2464
    crop:(0,0)/3280x2464]
    ← “rockchip-csi2-dphy1”:1 [ENABLED]
    pad1: Source
    → “stream_cif_mipi_id0”:0 [ENABLED]
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad2: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0 [ENABLED]
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad3: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0 [ENABLED]
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad4: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0 [ENABLED]
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad5: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0 [ENABLED]
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad6: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0 [ENABLED]
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad7: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0 [ENABLED]
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad8: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0 [ENABLED]
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad9: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0 [ENABLED]
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0
    pad10: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0 [ENABLED]
    → “rkcif_tools_id2”:0
    pad11: Source
    → “stream_cif_mipi_id0”:0
    → “stream_cif_mipi_id1”:0
    → “stream_cif_mipi_id2”:0
    → “stream_cif_mipi_id3”:0
    → “rkcif_scale_ch0”:0
    → “rkcif_scale_ch1”:0
    → “rkcif_scale_ch2”:0
    → “rkcif_scale_ch3”:0
    → “rkcif_tools_id0”:0
    → “rkcif_tools_id1”:0
    → “rkcif_tools_id2”:0 [ENABLED]

  • entity 58: rockchip-csi2-dphy1 (2 pads, 2 links, 0 routes)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev1
    pad0: Sink
    [stream:0 fmt:SRGGB10_1X10/3280x2464@10000/210000 field:none]
    ← “m02_f_imx219 1-0010”:0 [ENABLED]
    pad1: Source
    → “rockchip-mipi-csi2”:0 [ENABLED]

  • entity 63: m02_f_imx219 1-0010 (1 pad, 1 link, 0 routes)
    type V4L2 subdev subtype Sensor flags 0
    device node name /dev/v4l-subdev2
    pad0: Source
    [stream:0 fmt:SRGGB10_1X10/3280x2464@10000/210000 field:none]
    → “rockchip-csi2-dphy1”:0 [ENABLED]

Media controller API version 6.1.75

Media device information

driver rkisp0-vir2
model rkisp0
serial
bus info platform:rkisp0-vir2
hw revision 0x0
driver version 6.1.75

Device topology

  • entity 1: rkisp-isp-subdev (4 pads, 10 links, 0 routes)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev3
    pad0: Sink
    [stream:0 fmt:SRGGB10_1X10/3280x2464 field:none
    crop.bounds:(0,0)/3280x2464
    crop:(0,0)/3280x2464]
    ← “rkisp_rawrd0_m”:0
    ← “rkisp_rawrd2_s”:0
    ← “rkisp_rawrd1_l”:0
    ← “rkcif-mipi-lvds2”:0 [ENABLED]
    pad1: Sink
    ← “rkisp-input-params”:0 [ENABLED]
    pad2: Source
    [stream:0 fmt:YUYV8_2X8/3280x2464 field:none colorspace:smpte170m quantization:full-range
    crop.bounds:(0,0)/3280x2464
    crop:(0,0)/3280x2464]
    → “rkisp_mainpath”:0 [ENABLED]
    → “rkisp_selfpath”:0 [ENABLED]
    → “rkisp_fbcpath”:0 [ENABLED]
    → “rkisp_iqtool”:0 [ENABLED]
    pad3: Source
    → “rkisp-statistics”:0 [ENABLED]

  • entity 6: rkisp_mainpath (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video11
    pad0: Sink
    ← “rkisp-isp-subdev”:2 [ENABLED]

  • entity 12: rkisp_selfpath (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video12
    pad0: Sink
    ← “rkisp-isp-subdev”:2 [ENABLED]

  • entity 18: rkisp_fbcpath (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video13
    pad0: Sink
    ← “rkisp-isp-subdev”:2 [ENABLED]

  • entity 24: rkisp_iqtool (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video14
    pad0: Sink
    ← “rkisp-isp-subdev”:2 [ENABLED]

  • entity 30: rkisp_rawrd0_m (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video15
    pad0: Source
    → “rkisp-isp-subdev”:0

  • entity 36: rkisp_rawrd2_s (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video16
    pad0: Source
    → “rkisp-isp-subdev”:0

  • entity 42: rkisp_rawrd1_l (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video17
    pad0: Source
    → “rkisp-isp-subdev”:0

  • entity 48: rkisp-statistics (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video18
    pad0: Sink
    ← “rkisp-isp-subdev”:3 [ENABLED]

  • entity 54: rkisp-input-params (1 pad, 1 link)
    type Node subtype V4L flags 0
    device node name /dev/video19
    pad0: Source
    → “rkisp-isp-subdev”:1 [ENABLED]

  • entity 60: rkcif-mipi-lvds2 (1 pad, 1 link, 0 routes)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev4
    pad0: Source
    [stream:0 fmt:SRGGB10_1X10/3280x2464@10000/210000 field:none]
    → “rkisp-isp-subdev”:0 [ENABLED]

vicharak@vicharak:~$

from which device you are trying to take video from, is it /dev/video11? if not try with that once.

i am taking with /dev/video11

Have you tried using ffmpeg or qv4l2, you can check out this portion of the doc, MIPI Camera Interface | Vicharak

Still same result and i have followed each and every thing from ur documentation. I also tried openCV utility methods but from all methods i got same greenish result.

vicharak@vicharak:~$ ffplay -f v4l2 -pixel_format nv12 -video_size 1920x1080 /dev/video11
ffplay version 02d1bacb5f Copyright (c) 2003-2023 the FFmpeg developers
built with gcc 13 (Ubuntu 13.3.0-6ubuntu2~24.04)
configuration: --prefix=/usr --extra-ldflags=‘-Wl,-rpath=/usr/lib/vicharak/’ --enable-gpl --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga --enable-libx264 --enable-libx265 --enable-libvpx --enable-libfdk-aac --enable-nonfree --enable-libopus --enable-libaom --enable-libsvtav1 --enable-libdav1d --enable-libvmaf --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libvorbis --enable-gnutls --enable-libpulse --enable-sdl2 --enable-opengl --enable-opencl --enable-openal --enable-omx --enable-lv2 --enable-libzvbi --enable-libzimg --enable-libxvid --enable-libxml2 --enable-libwebp --enable-libvidstab --enable-libtwolame --enable-libtheora --enable-libssh --enable-libsrt --enable-libspeex --enable-libsoxr --enable-libsnappy --enable-libshine --enable-librubberband --enable-librabbitmq --enable-libopenmpt --enable-libmysofa --enable-libjack --enable-libgsm --enable-libgme --enable-libfribidi --enable-libfontconfig --enable-libcodec2 --enable-libcdio --enable-libcaca --enable-libbs2b --enable-libbluray --enable-ladspa --enable-libopenjpeg --enable-libflite --enable-libzmq
libavutil 58. 29.100 / 58. 29.100
libavcodec 60. 31.102 / 60. 31.102
libavformat 60. 16.100 / 60. 16.100
libavdevice 60. 3.100 / 60. 3.100
libavfilter 9. 12.100 / 9. 12.100
libswscale 7. 5.100 / 7. 5.100
libswresample 4. 12.100 / 4. 12.100
libpostproc 57. 3.100 / 57. 3.100
[video4linux2,v4l2 @ 0x7f84000c20] ioctl(VIDIOC_G_INPUT): Inappropriate ioctl for device
[video4linux2,v4l2 @ 0x7f84000c20] ioctl(VIDIOC_G_PARM): Inappropriate ioctl for device
[video4linux2,v4l2 @ 0x7f84000c20] Time per frame unknown
[video4linux2,v4l2 @ 0x7f84000c20] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, video4linux2,v4l2, from ‘/dev/video11’:
Duration: N/A, start: 1567.722397, bitrate: N/A
Stream #0:0: Video: rawvideo (NV12 / 0x3231564E), nv12, 1920x1080, 1000k tbr, 1000k tbn
^Cvicharak@vicharak:~$ 3 aq= 0KB vq= 0KB sq= 0B f=0/0

try 3280x2464 resolution with ffplay once

ffplay -f v4l2 -pixel_format nv12 -video_size 3280x2464 /dev/video11
i used this but still i got same result.

Please place a few objects(different colors preferably) in front of the camera, capture the image and share it here for us to better understand.