<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[VIO features not getting detected on drone takeoff]]></title><description><![CDATA[<p dir="auto">Hi all,</p>
<p dir="auto">I am running the voxl 2 mini with 3x ar0144 cameras, all extrinsics and intrinsics were verified, and a Kalibr calibration was done for each camera. When doing a bench test and moving the drone, handheld feature recognition is great.<br />
The problem is when the drones take off on its own, from the 0 feature state, it doesn't start recognizing new features, and the position hold doesn't work. I have to manually pick up the drone and shake it around a bit, and then it will start to recognize new features.<br />
Here is a log, my estimator, open-vins-server and vision-hub settings: <a href="https://review.px4.io/plot_app?log=589a6bd9-e8dd-4aaa-8e0d-b0b386450142" rel="nofollow ugc">https://review.px4.io/plot_app?log=589a6bd9-e8dd-4aaa-8e0d-b0b386450142</a></p>
<pre><code>%YAML:1.0

verbosity: INFO
use_fej: true
integration: rk4
use_stereo: false
max_cameras: 3
calib_cam_extrinsics: true
calib_cam_intrinsics: true
calib_cam_timeoffset: true
calib_imu_intrinsics: false
calib_imu_g_sensitivity: false
max_clones: 11
max_slam: 30
max_slam_in_update: 15
max_msckf_in_update: 10
dt_slam_delay: 2
gravity_mag: 9.81
feat_rep_msckf: ANCHORED_MSCKF_INVERSE_DEPTH
feat_rep_slam: ANCHORED_MSCKF_INVERSE_DEPTH
feat_rep_aruco: ANCHORED_MSCKF_INVERSE_DEPTH
try_zupt: true
zupt_chi2_multipler: 1.0
zupt_max_velocity: 0.03
zupt_noise_multiplier: 1
zupt_max_disparity: 8
zupt_only_at_beginning: true
init_window_time: 2.0
init_imu_thresh: 1.0
init_max_disparity: 20.0
init_max_features: 30
init_dyn_use: true
init_dyn_mle_opt_calib: false
init_dyn_mle_max_iter: 50
init_dyn_mle_max_time: 0.05
init_dyn_mle_max_threads: 4
init_dyn_num_pose: 13
init_dyn_min_deg: 5.0
init_dyn_inflation_ori: 10
init_dyn_inflation_vel: 100
init_dyn_inflation_bg: 10
init_dyn_inflation_ba: 100
init_dyn_min_rec_cond: 1e-12
init_dyn_bias_g: [0.0, 0.0, 0.0]
init_dyn_bias_a: [0.0, 0.0, 0.0]
init_gravity_max_angle: 15.0
record_timing_information: false
record_timing_filepath: /tmp/traj_timing.txt
save_total_state: false
filepath_est: /tmp/ov_estimate.txt
filepath_std: /tmp/ov_estimate_std.txt
filepath_gt: /tmp/ov_groundtruth.txt
use_klt: true
use_gpu: true
num_pts: 100
fast_threshold: 3
grid_x: 4
grid_y: 3
min_px_dist: 8
knn_ratio: 0.70
track_frequency: 30.0
downsample_cameras: false
num_opencv_threads: 4
histogram_method: CLAHE
fi_min_dist: 0.1
fi_max_dist: 60
fi_max_baseline: 40
fi_refine_features: true
fi_max_runs: 5
use_aruco: false
num_aruco: 1024
downsize_aruco: true
up_msckf_sigma_px: 1.2
up_msckf_chi2_multipler: 20.0
up_slam_sigma_px: 1.2
up_slam_chi2_multipler: 1.0
up_aruco_sigma_px: 1.0
up_aruco_chi2_multipler: 3.5
use_mask: false
relative_config_imu: kalibr_imu_chain.yaml
relative_config_imucam: kalibr_imucam_chain.yaml
</code></pre>
<pre><code>{
        "en_auto_reset":        true,
        "auto_reset_max_velocity":      20,
        "auto_reset_max_v_cov_instant": 0.20000000298023224,
        "auto_reset_max_v_cov": 0.20000000298023224,
        "auto_reset_max_v_cov_timeout_s":       0.5,
        "auto_reset_min_features":      1,
        "auto_reset_min_feature_timeout_s":     10,
        "ok_state_grace_timeout_s":     2,
        "auto_fallback_timeout_s":      3,
        "auto_fallback_min_v":  0.600000023841858,
        "en_cont_yaw_checks":   false,
        "fast_yaw_thresh":      5,
        "fast_yaw_timeout_s":   1.75,
        "yaml_folder":  "/usr/share/modalai/voxl-open-vins/VoxlConfig/custom_tunnel",
        "using_stereo": 0,
        "takeoff_alt_threshold":        0.5,
        "takeoff_occlude_stereo_left":  false,
        "takeoff_occlude_stereo_right": false,
        "sync_config":  true,
        "fusion_rate_dt_ms":    20,
        "imu_body_frame_mode":  true,
        "quality_low_thresh_initial":   15,
        "quality_low_thresh_good":      14,
        "quality_high_thresh":  35,
        "quality_initial_to_bad_count": 20,
        "quality_initial_to_good_count":        50,
        "quality_bad_to_good_count":    60,
        "quality_good_to_bad_count":    45
}
</code></pre>
<pre><code>{
        "config_file_version":  1,
        "en_localhost_mavlink_udp":     false,
        "localhost_udp_port_number":    14551,
        "en_vio":       true,
        "vio_pipe":     "ov",
        "secondary_vio_pipe":   "qvio",
        "vfc_vio_pipe": "ov",
        "en_reset_vio_if_initialized_inverted": true,
        "vio_warmup_s": 3,
        "send_odom_while_failed":       true,
        "horizon_cal_tolerance":        0.5,
        "en_hitl":      false,
        "offboard_mode":        "vfc",
        "follow_tag_id":        0,
        "figure_eight_move_home":       true,
        "robot_radius": 0.300000011920929,
        "collision_sampling_dt":        0.1,
        "max_lookahead_distance":       1,
        "wps_move_home":        true,
        "wps_stride":   0,
        "wps_timeout":  0,
        "wps_damp":     1,
        "wps_vfc_mission":      true,
        "wps_vfc_mission_loop": false,
        "wps_vfc_mission_to_ramp":      25,
        "wps_vfc_mission_to_kp":        0.10000000149011612,
        "wps_vfc_mission_cruise_speed": 1,
        "tracking_trigger_ch":  12,
        "tracking_trigger_ch_thresh_temp":      1200,
        "tracking_trigger_ch_thresh_new":       1800,
        "en_tag_fixed_frame":   false,
        "fixed_frame_filter_len":       5,
        "en_transform_mavlink_pos_setpoints_from_fixed_frame":  false,
        "en_voa":       false,
        "voa_upper_bound_m":    -0.15000000596046448,
        "voa_lower_bound_m":    0.15000000596046448,
        "voa_voa_memory_s":     1,
        "voa_max_pc_per_fusion":        100,
        "voa_pie_max_dist_m":   20,
        "voa_pie_min_dist_m":   0.25,
        "voa_pie_under_trim_m": 1,
        "voa_pie_threshold":    3,
        "voa_send_rate_hz":     20,
        "voa_pie_slices":       36,
        "voa_pie_bin_depth_m":  0.15000000596046448,
        "voa_inputs":   [{
                        "enabled":      true,
                        "type": "point_cloud",
                        "input_pipe":   "dfs_point_cloud",
                        "frame":        "stereo_l",
                        "max_depth":    8,
                        "min_depth":    0.300000011920929,
                        "cell_size":    0.079999998211860657,
                        "threshold":    4,
                        "x_fov_deg":    68,
                        "y_fov_deg":    56,
                        "conf_cutoff":  0
                }, {
                        "enabled":      true,
                        "type": "point_cloud",
                        "input_pipe":   "stereo_front_pc",
                        "frame":        "stereo_front_l",
                        "max_depth":    8,
                        "min_depth":    0.300000011920929,
                        "cell_size":    0.079999998211860657,
                        "threshold":    4,
                        "x_fov_deg":    68,
                        "y_fov_deg":    56,
                        "conf_cutoff":  0
                }, {
                        "enabled":      true,
                        "type": "point_cloud",
                        "input_pipe":   "stereo_rear_pc",
                        "frame":        "stereo_rear_l",
                        "max_depth":    8,
                        "min_depth":    0.300000011920929,
                        "cell_size":    0.079999998211860657,
                        "threshold":    4,
                        "x_fov_deg":    68,
                        "y_fov_deg":    56,
                        "conf_cutoff":  0
                }, {
                        "enabled":      true,
                        "type": "tof",
                        "input_pipe":   "tof",
                        "frame":        "tof",
                        "max_depth":    6,
                        "min_depth":    0.15000000596046448,
                        "cell_size":    0.079999998211860657,
                        "threshold":    3,
                        "x_fov_deg":    106.5,
                        "y_fov_deg":    85.0999984741211,
                        "conf_cutoff":  125
                }, {
                        "enabled":      true,
                        "type": "rangefinder",
                        "input_pipe":   "rangefinders",
                        "frame":        "body",
                        "max_depth":    8,
                        "min_depth":    0.300000011920929,
                        "cell_size":    0.079999998211860657,
                        "threshold":    4,
                        "x_fov_deg":    68,
                        "y_fov_deg":    56,
                        "conf_cutoff":  0
                }]
}
</code></pre>
<p dir="auto">Any help will be appreciated, thanks!</p>
]]></description><link>https://forum.modalai.com/topic/5369/vio-features-not-getting-detected-on-drone-takeoff</link><generator>RSS for Node</generator><lastBuildDate>Fri, 07 Aug 2026 01:51:33 GMT</lastBuildDate><atom:link href="https://forum.modalai.com/topic/5369.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 06 Aug 2026 20:34:19 GMT</pubDate><ttl>60</ttl></channel></rss>