SOLVED VEYE-imx462 and Orin Nano developer kit problem
-
Hello everyone,
I'm attempting to use the VEYE-imx462 camera in conjunction with the Jetson Orin Nano 8GB original developer kit. I've followed the instructions outlined in this guide:
https://wiki.veye.cc/index.php/VEYE_CS_Camera_for_Jetson_TX2Unfortunately, I'm encountering issues, and when I run "dmesg | grep veye," I receive the following output:
[16.290295] veye_mvcam: loading out-of-tree module taints kernel.
[16.290511] veye_mvcam: loading out-of-tree module taints kernel.
[16.297416] veye_mvcam: module verification failed: signature and/or required key missing - tainting kernel
[16.313909] mvcam 9-003b: veye mv series camera driver version: 01.01.03
[16.815979] veye_mvcam: mvcam_read: Reading register 0x04 failed
[16.832733] mvcam 10-003b: veye mv series camera driver version: 01.01.03Does anyone have a solution for this issue?
Thank you in advance.
-
@joe
Please verify the model of the camera you are using. If you are using VEYE-MIPI-IMX462, then the device tree file (DTB) you are using might be incorrect. You should use the DTB from the veyecam2m directory, not the mvcam directory. -
I appreciate your prompt and helpful response. I successfully copied the dtbs file from "dtbs/Orin/JetPack_5.1.2_Linux_JETSON_ORIN_TARGETS/dts dtb/VEYE-MIPI-CAM2M" path, and everything is functioning properly.
However, I am currently facing a second issue related to camera controls. I am attempting to manage exposure and gain, but when I use the v4l2-ctl command to list the camera controls, I cannot locate the settings for exposure and gain. Is there an alternative method to control exposure and gain that you could recommend?
The v4l2-ctl --all result:Driver Info:
Driver name : tegra-video
Card type : vi-output, veyecam 10-003b
Bus info : platform:tegra-capture-vi:2
Driver version : 5.10.120
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.10.120
Hardware revision: 0x00000003 (3)
Driver version : 5.10.120
Interface Info:
ID : 0x0300000b
Type : V4L Video
Entity Info:
ID : 0x00000009 (9)
Name : vi-output, veyecam 10-003b
Function : V4L2 I/O
Pad 0x0100000a : 0: Sink
Link 0x0200000f: from remote pad 0x1000006 of entity '13e40000.host1x:nvcsi@15a00000-': Data, Enabled
Priority: 2
Video input : 0 (Camera 2: no power)
Format Video Capture:
Width/Height : 1920/1080
Pixel Format : 'UYVY' (UYVY 4:2:2)
Field : None
Bytes per Line : 3840
Size Image : 4147200
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Limited Range)
Flags :Camera Controls
sensor_mode 0x009a2008 (int64) : min=0 max=1 step=1 default=0 value=0 flags=slider sensor_configuration 0x009a2032 (u32) : min=0 max=4294967295 step=1 default=0 [22] flags=read-only, volatile, has-payload sensor_mode_i2c_packet 0x009a2033 (u32) : min=0 max=4294967295 step=1 default=0 [1026] flags=read-only, volatile, has-payload sensor_control_i2c_packet 0x009a2034 (u32) : min=0 max=4294967295 step=1 default=0 [1026] flags=read-only, volatile, has-payload bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0 0: 0 (0x0) 1: 1 (0x1) override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0 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 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 [30][18] flags=read-only, has-payload sensor_image_properties 0x009a206a (u32) : min=0 max=4294967295 step=1 default=0 [30][16] flags=read-only, has-payload sensor_control_properties 0x009a206b (u32) : min=0 max=4294967295 step=1 default=0 [30][36] flags=read-only, has-payload sensor_dv_timings 0x009a206c (u32) : min=0 max=4294967295 step=1 default=0 [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 sensor_modes 0x009a2082 (int) : min=0 max=30 step=1 default=30 value=1 flags=read-only
-
-
@veye_xumm
Thank you for your prompt response.
I'm currently facing two issues while using the I2C script to set parameters from the specified path: nvidia_jetson_veye_bsp/i2c_cmd/bin/veye_mipi_i2c.sh .1- Firstly, the document link provided (https://wiki.veye.cc/index.php/I2c_bus_number_and_video_node) does not specify the appropriate -b parameter for Orin Nano. To identify the correct bus number, I executed the following command:
ls -ltrh /sys/bus/i2c/devices/i2c*
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-2 -> ../../../devices/platform/3180000.i2c/i2c-2
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-9 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-9
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-8 -> ../../../devices/platform/31e0000.i2c/i2c-8
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-7 -> ../../../devices/platform/c250000.i2c/i2c-7
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-6 -> ../../../devices/platform/31c0000.i2c/i2c-6
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-5 -> ../../../devices/platform/31b0000.i2c/i2c-5
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-4 -> ../../../devices/platform/bpmp/bpmp:i2c/i2c-4
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-3 -> ../../../devices/platform/3190000.i2c/i2c-3
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-10 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-10
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-1 -> ../../../devices/platform/c240000.i2c/i2c-1
lrwxrwxrwx 1 root root 0 Mar 15 2023 /sys/bus/i2c/devices/i2c-0 -> ../../../devices/platform/3160000.i2c/i2c-0
lrwxrwxrwx 1 root root 0 Dec 19 05:26 /sys/bus/i2c/devices/i2c-11 -> ../../../devices/platform/13800000.display/i2c-11
Can you assist me in determining the appropriate -b parameter based on this information?2- Secondly, although I can successfully read parameters, I encounter difficulties when attempting to set them. For instance:
./veye_mipi_i2c.sh -r -f mshutter
r mshutter is 0x1
./veye_mipi_i2c.sh -w -f mshutter -p1 0x44
w mshutter is 0x44
./veye_mipi_i2c.sh -r -f mshutter
r mshutter is 0x1
It appears that the parameter is not being set successfully, as reading it after the supposed update returns the default value. Could you guide me on where I might be going wrong in the parameter-setting process?
I appreciate your assistance in advance. -
@joe
Sorry, the information is not complete.
-
@veye_xumm
Thank you for your online response.
What about my second question. Have I do something wrong that the values of parameters do not set?
./veye_mipi_i2c.sh -b 9 -r -f mshutter
r mshutter is 0x 1
./veye_mipi_i2c.sh -b 9 -w -f mshutter -p1 0x44
w mshutter is 0x44
./veye_mipi_i2c.sh -b 9 -r -f mshutter
r mshutter is 0x 1
It have the fix value every time i get it!Thank you for your ongoing support
-
To confirm your I2C bus, please enter the following two commands and send the results back to me.
./veye_mipi_i2c.sh -r -f hdver -b 9
./veye_mipi_i2c.sh -r -f hdver -b 10
-
The results:
./veye_mipi_i2c.sh -r -f hdver -b 9
hardware version is 0x 1
release date is 20 1- 1- 1./veye_mipi_i2c.sh -r -f hdver -b 10
hardware version is 0x 7
release date is 20 0- 0- 0 -
@joe said in VEYE-imx462 and Orin Nano developer kit problem:
./veye_mipi_i2c.sh -r -f hdver -b 10
hardware version is 0x 7So your camera is connecting to i2c bus 10.
Please use -b 10 as parameter for ./veye_mipi_i2c.sh
-
@veye_xumm
It seems that the parameters I've configured are retaining their previous values:./veye_mipi_i2c.sh -b 10 -r -f mshutter
r mshutter is 0x 0
./veye_mipi_i2c.sh -b 10 -w -f mshutter -p1 0x44
w mshutter is 0x44
./veye_mipi_i2c.sh -b 10 -r -f mshutter
r mshutter is 0x 0or
./veye_mipi_i2c.sh -b 10 -r -f mirrormode
r mirrormode is 0x 0
./veye_mipi_i2c.sh -b 10 -w -f mirrormode -p1 0x02
w mirrormode is 0x 2
./veye_mipi_i2c.sh -b 10 -r -f mirrormode
r mirrormode is 0x 0Am I making a mistake somewhere?
-
@joe Please try putting
-b 10
at the end of the command. -
@veye_xumm
I noticed that there is no difference when I change the order of '-b 10' to the end of the line in the command. I'm running the command from ~/nvidia_jetson_veye_bsp/i2c_cmd/bin; can you confirm if this path is correct? Additionally, I'm open to any alternative solutions or suggestions. Thanks in advance for your help! -
@joe said in VEYE-imx462 and Orin Nano developer kit problem:
./veye_mipi_i2c.sh -r -f hdver -b 10
hardware version is 0x 7From this point, your program reads hdver correctly.
However, based on the feedback from all your other scripts, it seems that both reading and writing cannot be executed properly.
Here are the commands and displays from my side. The difference is that the camera is connected to i2c-9.
How about you try recompiling i2c_read and i2c_write?
i2c_cmd/source/i2c_tools
-
@veye_xumm
It work, after change the mipi connector! (I use -b 9.)
Thanks -
@joe
It is indicated in the documents about "New function list" that:
"The following new features are only supported in camera's firmware versions with release time later than 2022-11-22."
My firmware version is exactly 2022-11-22. Is this version support "New function list"? -
@joe yes