Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. VOXL Compute & Autopilot
  3. VOXL 2 Mini
  4. VIO features not getting detected on drone takeoff

VIO features not getting detected on drone takeoff

Scheduled Pinned Locked Moved VOXL 2 Mini
1 Posts 1 Posters 16 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Samuel Marchetti
    wrote last edited by Samuel Marchetti
    #1

    Hi all,

    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.
    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.
    Here is a log, my estimator, open-vins-server and vision-hub settings: https://review.px4.io/plot_app?log=589a6bd9-e8dd-4aaa-8e0d-b0b386450142

    %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
    
    {
            "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
    }
    
    {
            "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
                    }]
    }
    

    Any help will be appreciated, thanks!

    1 Reply Last reply
    0

    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

    With your input, this post could be even better 💗

    Register Login
    Reply
    • Reply as topic
    Log in to reply
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes


    ModalAI
    Categories Recent Tags ModalAI.com Docs
    © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups