@Alex-Kushleyev The drivers worked, and the EIS as expected isn't tuned well. The MISP brightness looks alright outdoors, but indoors its very low. Increasing exposure_max_us
helps but adds blur. Not sure if that's to be expected with this sensor, since it isn't as good in low-light conditions as the IMX412. Let me know if there's anything I can tune in the conf file to help with the brightness, and EIS output. Thanks!
Latest posts made by SKA
-
RE: EIS merge
-
RE: Stereo Image sensor selection
@Alex-Kushleyev This worked! Thank you
-
RE: Stereo Image sensor selection
@Alex-Kushleyev I have 3 cameras connected in total. The earlier camera server output was for just the stereo pair.
Cam ID 0 connected at port J0 - AR0144
Cam ID 1 connected at port J1 - IMX412
Cam ID 2 connected at port J6 - AR0144I have experimented with using all of the ar0144 combo drivers, currently I have
com.qti.sensormodule.ar0144_fsin_combo_0
andcom.qti.sensormodule.ar0144_fsin_combo_6
.Using these drivers, the video streams appear normal when voxl-camera-server is configured to have the 2 AR0144 cameras stream separately instead of as a stereo pair.
When I run
voxl-camera-server -l
, it recognizes 3 cameras connected. I'll update with the exact output soon. -
RE: Stereo Image sensor selection
Hi @Alex-Kushleyev! I am trying to get my stereo AR0144 cam setup working. I originally had AR0144 stereo+DFS working with the flex sensor cameras, but after shifting to M0188 + microcoax cameras I haven't been able to accomplish the same.
Currently I have 2 AR0144 microcoax cams connected to port J0 and J6 of the M0188 board. When I configure the cameras and run
voxl-camera-server
, I see two separate video outputs from stereo (1280x800) and stereo_child (1280x800) respectively. Then, when I go intovoxl-camera-server.conf
and adjust it to stereo mode by adding camera_second_id, I see the new stereo output (1280x1600) but video is either empty or all dark. I have all the necessary intrinsics and extrinsics files that worked previously with the flex connector cameras. Let me know if I'm missing anything, and how I can try to get this working. Thanks!I'm using voxl-camera-server version: 2.2.6-202508142059
Here's the output when I runvoxl-camera-server
:Setting MISP AWB to Auto MISP channels enabled in defaults : 0 MISP channels enabled in config file: 0 ================================================================= configuration for 1 cameras: cam #0 name: stereo type: ar0144 bayer_type: 0 enabled: 1 camera_id: 0 camera_id_second: 2 fps: 30 en_rotate: 0 en_rotate2: 0 en_preview: 1 en_raw_preview: 1 preview_width: 1280 preview_height: 800 en_misp: 1 misp_width: 1280 misp_height: 800 en_small_video: 0 small_video_width: -1 small_video_height: -1 en_large_video: 0 large_video_width: -1 large_video_height: -1 en_snapshot: 0 snap_width: -1 snap_height: -1 exif_focal_length: 0.000000 exif_focal_len_35mm_format:0 exif_fnumber: 0.000000 ae_mode: lme_msv msv_exposure_min_us: 20 msv_exposure_max_us: 12000 gain_min : 54 gain_max : 8000 standby_enabled: 0 decimator: 1 independent_exposure:0 fsync_en: 1 fsync_gpio: 109 ================================================================= thread is locked to cores: 4 5 6 7 connected to mavlink pipe Connected to cpu-monitor Starting Camera: stereo (id #0) Opened GBM fd gbm_create_device(156): Info: backend name is: msm_drm Created GBM device MISP Initializing for camera stereo Detected 1 platform(s) Detected 1 GPU device(s) Estimated imu dt = 0.000978s Got unsupported format in getUVStartFromFmt, returning nullptr WARNING: OMX SetTargetBitrate: H265 CBR requires bps >= 3.0Mbit (2000000 bps provided). Using FPS hack. scale = 1.500000 Loading intrinsics cal file stereo_intrinsics.yml for camera stereo, ret 0 stereo lens calibration (fisheye): w: 1280, h:800 fx: 563.677, fy: 562.169 cx: 663.707, cy: 390.645 D: -0.062035, 0.065024, -0.041547, 0.008022, 0.000000 Loading extrinsics for camera stereo, ret 0 Extrinsics: 0.0000 1.0000 0.0000 -0.0000 0.0000 1.0000 1.0000 -0.0000 0.0000 Loading EIS output extrinsics for camera stereo, fetch ret 0 EIS Extrinsics: 1.0000 -0.0000 0.0000 0.0000 1.0000 -0.0000 0.0000 0.0000 1.0000 MISP Initializing for camera stereo_child Got unsupported format in getUVStartFromFmt, returning nullptr WARNING: OMX SetTargetBitrate: H265 CBR requires bps >= 3.0Mbit (2000000 bps provided). Using FPS hack. scale = 1.500000 Loading intrinsics cal file stereo_child_intrinsics.yml for camera stereo_child, ret 0 stereo_child lens calibration (fisheye): w: 1280, h:800 fx: 563.677, fy: 562.169 cx: 663.707, cy: 390.645 D: -0.062035, 0.065024, -0.041547, 0.008022, 0.000000 Loading extrinsics for camera stereo_child, ret 0 Extrinsics: 0.0000 -1.0000 0.0000 0.0000 0.0000 1.0000 -1.0000 -0.0000 0.0000 Loading EIS output extrinsics for camera stereo_child, fetch ret 0 EIS Extrinsics: 1.0000 -0.0000 0.0000 0.0000 1.0000 -0.0000 0.0000 0.0000 1.0000 ------ voxl-camera-server: Started 1 of 1 cameras ------ voxl-camera-server: Camera server is now running
-
RE: EIS merge
Hi @Alex-Kushleyev! Where can I find the IMX214 drivers for EIS? Thanks!
-
Micro-coax dual interposer board for M0166 cameras
Is there a board available that is similar to the VOXL 2 Mini Dual High-res and Boson MIPI Adapter (MCCA-M0194-1) for tracking cameras?
We are looking to connect 2 M0166 cameras to a VOXL 2 Mini as a synced stereo pair without using the M0173 board. Thanks!
-
DFS undistort issue
Hi! I'm trying to set up DFS using ar0144 cameras. I have the
voxl-camera-server
side working, and I'm able to view the stereo preview stream onvoxl-portal
. I've set up my extrinsics and intrinsics usingvoxl-calibrate-cameras
and have acceptable reprojection error.
However, when I runvoxl-dfs-server
I get these errors:ERROR computing undistort on left image in mcv_cvp_undistort_and_dfs_process ERROR performing undistort+DFS pipeline ERROR computing UD+DFS pipeline on CVP
Whether I enable or disable cvp rectification in the .conf file, I am facing errors. Let me know how I might be able to resolve this, thanks!
-
RE: OV with External Autopilot
@Eric-Katzfey Thanks for helping me out with this! I've made some progress at narrowing in on the problem. First to answer your questions:
- QVIO: I tried with
voxl-qvio-server
disabled, this didn't change anything. - VIO failed state: I fixed some other issues leading to the failed state from
voxl-open-vins-server
. Now the ovins translation and rotation outputs look healthy, and time_usec increments normally, but the external autopilot still does not log the odometry output. - Debug: VIO status debug shows that it isn't failing.
I was able to get qvio odometry outputs to log on the external autopilot, but when I switched over to ovins, it fails. With ovins I still see incoming VIO (comp IP 197) heartbeat and timestamp mavlink messages going through, but not the 331 odometry message.
Let me know what you think, thanks so much!
- QVIO: I tried with
-
RE: OV with External Autopilot
Here's the output of voxl-version:
voxl2-mini:~$ voxl-version -------------------------------------------------------------------------------- system-image: 1.8.02-M0104-14.1a-perf kernel: #1 SMP PREEMPT Mon Nov 11 23:21:25 UTC 2024 4.19.125 -------------------------------------------------------------------------------- hw platform: M0104 mach.var: 2.0.0 -------------------------------------------------------------------------------- voxl-suite: 1.4.0 -------------------------------------------------------------------------------- Packages: Repo: http://voxl-packages.modalai.com/ ./dists/qrb5165/sdk-1.4/binary-arm64/ Last Updated: 2025-03-12 18:51:42 WARNING: repo file has changed since last update, packages may have originated from a different repo List: kernel-module-voxl-fsync-mod-4.19.125 1.0-r0 kernel-module-voxl-gpio-mod-4.19.125 1.0-r0 kernel-module-voxl-platform-mod-4.19.125 1.0-r0 libfc-sensor 1.0.7 libmodal-cv 0.5.16 libmodal-exposure 0.1.3 libmodal-journal 0.2.2 libmodal-json 0.4.3 libmodal-pipe 2.10.4 libqrb5165-io 0.4.7 libvoxl-cci-direct 0.2.3 libvoxl-cutils 0.1.1 modalai-slpi 1.1.19 mv-voxl 0.1-r0 qrb5165-bind 0.1-r0 qrb5165-dfs-server 0.2.0 qrb5165-imu-server 1.1.0 qrb5165-rangefinder-server 0.1.4 qrb5165-slpi-test-sig 01-r0 qrb5165-system-tweaks 0.3.2 qrb5165-tflite 2.8.0-2 voxl-bind-spektrum 0.1.1 voxl-camera-calibration 0.5.9 voxl-camera-server 2.0.2 voxl-ceres-solver 2:1.14.0-10 voxl-configurator 0.9.4 voxl-cpu-monitor 0.5.1 voxl-docker-support 1.3.1 voxl-elrs 0.3.4 voxl-esc 1.4.8 voxl-feature-tracker 0.5.2 voxl-flow-server 0.3.6 voxl-fsync-mod 1.0-r0 voxl-gimbal 0.0.1 voxl-gphoto2-server 0.0.10 voxl-gpio-mod 1.0-r0 voxl-io-server 0.0.4 voxl-jpeg-turbo 2.1.3-5 voxl-lepton-server 1.3.3 voxl-lepton-tracker 0.0.4 voxl-libgphoto2 0.0.4 voxl-libuvc 1.0.7 voxl-logger 0.4.9 voxl-mavcam-manager 0.5.7 voxl-mavlink 0.1.1 voxl-mavlink-server 1.4.4 voxl-modem 1.1.3 voxl-mongoose 7.7.0-1 voxl-mpa-to-ros 0.3.9 voxl-mpa-tools 1.3.4 voxl-open-vins 0.4.14 voxl-open-vins-server 0.2.83 voxl-opencv 4.5.5-2 voxl-osd 0.0.2 voxl-platform-mod 1.0-r0 voxl-portal 0.7.2 voxl-px4 1.14.0-2.0.93 voxl-px4-imu-server 0.1.2 voxl-px4-params 0.5.8 voxl-qvio-server 1.1.1 voxl-remote-id 0.0.9 voxl-reset-slpi 0.0.1 voxl-state-estimator 0.0.3 voxl-streamer 0.7.5 voxl-suite 1.4.0 voxl-tag-detector 0.0.4 voxl-tflite-server 0.3.7 voxl-utils 1.4.4 voxl-uvc-server 0.1.7 voxl-vision-hub 1.8.18 voxl-vtx 1.1.3 voxl2-io 0.0.3 voxl2-system-image 1.8.02-r0 voxl2-wlan 1.0-r0 --------------------------------------------------------------------------------
-
RE: OV with External Autopilot
@tom I have some updates, and here's more info on my setup!
voxl-open-vins-server
is running and outputting the following:
voxl-vision-hub
andvoxl-mavlink-server
are running, and the odom messages are being sent. Here's the output fromvoxl-mavlink-server -l
:
At my external autopilot, the Odometry messages are coming through, but the values are not populating/reading correctly:
Thanks in advance for any input you may have!