I am using a dual IMX415 camera setup on Owow OS (Rockchip-based). I want to disable auto exposure, auto white balance, and gain control to achieve consistent image output for depth estimation and also have to do Hardware based crop along with .
However, I cannot control exposure ,brightness ,auto focus and gain manually, and it seems the ISP is overriding the settings.
System Information
Platform: Owow OS
Camera Sensor:IMX415
Camera Interface:MIPI-CSI2
No of Camera Connected (2) :/dev/video33 and /dev/video51
kernel version- 6.1.84
Some Details below:
v4l2-ctl --list-devices: rkisp (platform:rkisp0):
/dev/video33(left cam)
/dev/video51(right cam)
m00_b_imx415 (platform: i2c-1):
/dev/v4l-subdev2
dmesg | grep rkisp :status Active
v4l2-ctl -d /dev/video33 --list-ctrls
Brightness: -1
Contrast: -1
Gain: -1
Exposure: -1
Auto Exposure: -1
Looks Like ISP is blocking manual settings
Sensor Subdevice for RAW Output:
v4l2-ctl -d /dev/v4l-subdev2 --list-ctrls
What I Need Help With:
How can I fully disable ISP processing and control exposure manually?
Is there a way to force the camera to output RAW Bayer (RG10) without ISP interference?
Can I use media-ctl or other tools to bypass ISP without modifying DTS?
If a kernel modification is required, what files should I change?
how i can get the Hardware cropping with ISP disable .
Please Help me to get this all solution done on priority .
1~4. You can kill rkisp_3A_server to fully disable ISP processing: sudo killall rkaiq_3A_server
then you can use v4l2-ctl command to control exposure and gain.
v4l2-ctl -d /dev/v4l-subdev2 --set-ctrl "exposure=800" #exposure control
v4l2-ctl -d /dev/v4l-subdev2 --set-ctrl "analogue_gain=64" #gain control
5 . If you want to corp the camera output image, you can try this command, The âtopâ, âleftâ, ârightâ, âbottomâ is the position to be cropped.
yes ubuntu 24.04
v4l2-ctl -d /dev/v4l-subdev2 --set-ctrl âexposure=800â #exposure control
v4l2-ctl -d /dev/v4l-subdev2 --set-ctrl âanalogue_gain=64â #gain control
applying this not reflecting on device id 51 and 33
also i want to do hardware crop.
v4l2-ctl -d /dev/video33 --all
Driver Info:
Driver name : rkisp_v6
Card type : rkisp_mainpath
Bus info : platform:rkisp0-vir0
Driver version : 2.6.1
Capabilities : 0x84201000
still using isp
after killing the rkaiq_3A_server(as instructed by you )
if i miss anything here please guide me .
media-ctrl -pd /dev/media2 (while imx415 connect to cam3)
or media-ctrl -pd /dev/media0 (while imx415 connect to cam2)
or media-ctrl -pd /dev/media1 (while imx415 connect to cam1)
You just want to get the raw video from camera, and can also control exposure abd gain, right? Please describe your project requirements and background.
We want control on gain exposure focus , brightness
So that we can make the appropriate settings for 24*7 to get the good quality image
All these things we want on isp level ( so that we can get the good speed of capture )
I have used this camera with vim4 and I found there few of the controls were present there .
Is it possible to get these all on edge2 (On isp)board with imx415.
We have also plan of using this cameras as stereo (for object depth finding)
NOte : Mostly we want manual control ,Auto should be disable (like focus exposureâŠetc.)
value reflected here
but not able to capture video using this device id
â/dev/video33â and â/dev/video51â
WARN:0@0.024] global cap_gstreamer.cpp:2829 handleMessage OpenCV | GStreamer warning: Embedded video playback halted; module source reported: Could not read from resource.
[ WARN:0@0.024] global cap_gstreamer.cpp:1698 open OpenCV | GStreamer warning: unable to start pipeline
[ WARN:0@0.024] global cap_gstreamer.cpp:1173 isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created
Error: Could not open /dev/video33!
no it is not opening the video .
i observed
while running this media-ctl -d /dev/media2 -p
i did not find any device id linked here .
dmesg | grep -i video
[ 10.806955] videodev: Linux video capture interface: v2.00
[ 11.343131] mpp_service mpp-srv: 0308f07933f7a author: Yandong Lin 2024-10-14 video: rockchip: mpp: iep2: fix err log false print
[ 13.763219] : get_remote_sensor: video pad[0] is null
[ 13.765485] : get_remote_sensor: video pad[0] is null
[ 13.767842] : get_remote_sensor: video pad[0] is null
[ 13.770231] : get_remote_sensor: video pad[0] is null
[ 13.782438] : get_remote_sensor: video pad[0] is null
[ 13.785037] : get_remote_sensor: video pad[0] is null
[ 13.787738] : get_remote_sensor: video pad[0] is null
[ 13.790533] : get_remote_sensor: video pad[0] is null
[ 13.804145] : get_remote_sensor: video pad[0] is null
[ 13.807100] : get_remote_sensor: video pad[0] is null
[ 13.810155] : get_remote_sensor: video pad[0] is null
[ 13.813262] : get_remote_sensor: video pad[0] is null
[ 13.875345] usbcore: registered new interface driver uvcvideo
It seems the system has already acquired the camera. Please reboot the board and try to open camera again.
If the problem continues, please share the command and error log.
now i can see the camera view
settings chnages behaviour i will confirm shortly with different test cases Result âŠ
How i will contorl over auto focus and white balance ,HDR ,Noise Reduction
also i saw link frequency is read only if some body wants to change it is it possible to change ?
how we confirm whether current cam has auto focus enabled?
if any stereo callibration related guidlines will be welcome .
We need to confirm how to control these parameters because we have been using auto mode so far.
The link frequency is configured in the camera driver and cannot be modified at the user layer.
There is no direct indicator to confirm if AF is enabled. However, disabling the 3A service will turn off AF. You can physically enable the camera and observe whether the focal length adjusts automatically to verify this.
Basically our camera should handle indoor and out door operation means
i need to setup my camera for 24*7 with stable stereo callibration(lets suppose for depth finding) result and for further processing .
i want my app with choice Auto and Manual configuraton of camera params like exposure gain,brightnes, FPS ,focus ,Auto white and HDR control âŠ
we also want cameraa should capture very good quality image so that we should not do the further post processing .
Note:
As I have Explained the all requirement
your suggestions are also welcome which will fullfill this all requirements .
â We like to consider existing hardware based cropping which i found on device node(/dev/video33 and /dev/video51)
Hello @gita.kumari
I find a demo and performed a simple test. You can refer to external_camera_engine_rkaiq/rkisp_demo/demo/rkisp_demo.c, which might help you.
After compiling, copy external_camera_engine_rkaiq/rkisp_demo/exe/MinSizeRel/rkisp_demo to the Edge2 board and follow these steps to test the demo:
Tips: Edge2 need connect HDMI screen.
Switch to root (the demo requires root privileges):
Then you can see the output as follow, select the test item you want to run.
Usage :
0) AE: module test sample.
1) AWB: module test sample.
2) AF: module test sample.
3) ACCM: module test sample.
4) A3DLUT: module test sample.
5) ADRC: module test sample.
6) AMERGE: module test sample.
7) AGAMMA: module test sample.
8) ADEHAZE: module test sample.
9) AYNR: module test sample.
a) ACNR: module test sample.
b) ASHARP: module test sample.
c) ABAYER2DNR: module test sample.
d) ABAYERTNR: module test sample.
e) CSM: module test sample.
f) ABLC: module test sample.
g) AGIC: module test sample.
h) ALDCH: module test sample.
i) ADEBAYER: module test sample.
j) ALSC: module test sample.
k) ACP: module test sample.
l) AIE: module test sample.
m) CGC: module test sample.
n) CAC: module test sample.
o) AGAIN: module test sample.
p) AWBV32: module test sample.
r) CCMV2: module test sample.
s) ALDCHV32: module test sample.
t) SMARTIR: module test sample.
u) DPCC: module test sample.
v) AINR: module test sample.
w) TRANS: module test sample.
x) ALDC: module test sample.
y) RGBIR: module test sample.
A) SYSCTL: module test sample.
z) ALL: module test sample.
ï»ż
please press the key:
Note: We havenât conducted further testing. The specific functionality needs to be tested by youă