voxl-open-vins-server
-
@Alex-Kushleyev @tom @Vinny @zauberflote1 @Eric-Katzfey
My drone is drifting off when i fly VOXL 2 with 2 tracking camera using voxl-open-vins-server.
I am getting the following warnings on the terminal and i would to get some help get my drone flying without any errors and drift.
The major drift is when the drone is yawing, it is drifting both is ground test and flight test
voxl2:~$ voxl-open-vins-server Setting printing level to: SILENT ================================================================= =========================AUTO RESET============================== en_auto_reset: 1 auto_reset_max_velocity: 20.000 auto_reset_max_v_cov_instant: 0.100 auto_reset_max_v_cov: 0.100 auto_reset_max_v_cov_timeout_s: 0.500 auto_reset_min_features: 1 auto_reset_min_feature_timeout_s: 3.000 auto_fallback_timeout_s: 3.000 auto_fallback_min_v: 0.600 en_cont_yaw_checks: false fast_yaw_thresh: 5.000 fast_yaw_timeout_s: 1.750 ===========================STATE================================= do fej: true imu avg: true use rk4 integration: true cam to imu refinement: true cam intrins refinement: true cam imu ts refinement: true max clone size: 8 max slam features: 35 max slam in update: 10 max msckf in update: 10 feat rep msckf: ANCHORED_MSCKF_INVERSE_DEPTH feat rep slam: ANCHORED_MSCKF_INVERSE_DEPTH cam imu time offset: 0.00000 slam delay: 1.00000 pyr levels: 6 grid x: 5 grid y: 5 ================================================================= =====================INERTIAL INITIALIZER======================== gravity mag: 9.80665 init window time: 1.00000 init imu thresh: 1.00000 init dyn use: false ================================================================= ==========================IMU NOISE============================== imu sigma w: 0.00014 imu sigma wb: 0.00000 imu sigma a: 0.00389 imu sigma ab: 0.00006 ================================================================= ========================FEATURE NOISE============================ msckf chi^2 multiplier: 1.00000 msckf sigma px: 1.00000 slam chi^2 multiplier: 40.00000 slam sigma px: 1.80000 zupt chi^2 multiplier: 1.00000 zupt sigma px: 1.00000 ================================================================= =============================ZUPT================================ refine features: true max runs: 5 try zupt: true en_ext_feature_tracker: 0 en_gpu_for_tracking: 1 raansac_gn: false raansac_tri: true zupt max velocity: 0.03000 zupt only at beginning: true zupt noise multiplier: 1.00000 zupt max disparity: 8.00000 ================================================================= use mask: false use stereo: false use baro: false ================================================================= ========================FEATURE INITIALIZER====================== triangulate 1d: false init lamda: 0.00100 max lamda: 10000000000.00000 min dx: 0.00000 min dcost: 0.00000 lam mult: 10.00000 min dist: 0.10000 max dist: 60.00000 max baseline: 40.00000 num_opencv_threads: 4 fast_threshold: 15 histogram_method: HISTOGRAM knn_ratio: 0.70000 track_frequency: 15.00000 publish_frequency: 5 imu takeoff accel thresh: 0.50000 force init on takeoff: true takeoff_threshold(m): -0.100000 publish stats: false max_allowable_cep: 1.00000 force FLU to NED transform: true publish IMU frame: false VIO always on (for bench testing): true num_features_to_track: 20 Enable Thermal Enhance: false Enable Overlay Landscape: false Thermal Brightness: 1.00000 Thermal Brightness BOSON: 1.00000 ================================================================= ================================================================= vio_cam config: cam 0: enable: 1 name: tracking_front pipe_for_preview: tracking_front pipe_for_tracking: tracking_front is_occluded_on_ground: 0 imu: imu_apps is_extrinsic_present: 1 extrinsic cam wrt imu: parent: imu_apps child: tracking_front T_cam_wrt_imu: 0.131 0.017 0.033 RPY_imu_to_cam: 0.0 90.0 90.0 R_cam_to_imu: 0.000 -0.000 1.000 1.000 0.000 -0.000 -0.000 1.000 0.000 cal file: opencv_tracking_front_intrinsics.yml is_cal_present: 1 cam cal intrinsics: width: 1280 height: 800 fx: 462.958 fy: 464.368 cx: 632.240 cy: 398.053 n_coeffs: 4 is_fisheye: 1 D: 0.0672 0.0019 0.0062 -0.0040 cam 1: enable: 1 name: tracking_down pipe_for_preview: tracking_down pipe_for_tracking: tracking_down is_occluded_on_ground: 1 imu: imu_apps is_extrinsic_present: 1 extrinsic cam wrt imu: parent: imu_apps child: tracking_down T_cam_wrt_imu: 0.106 0.017 0.050 RPY_imu_to_cam: 0.0 0.0 180.0 R_cam_to_imu: -1.000 -0.000 0.000 0.000 -1.000 -0.000 0.000 0.000 1.000 cal file: opencv_tracking_down_intrinsics.yml is_cal_present: 1 cam cal intrinsics: width: 1280 height: 800 fx: 467.157 fy: 468.573 cx: 652.260 cy: 381.475 n_coeffs: 4 is_fisheye: 1 D: 0.0618 0.0066 0.0043 -0.0039 ================================================================= vio cam: 0 is occluded: 0 [INFO] Camera: 0 -- converted extrinsics *in FLU* are: Roll: -0.000000, Pitch 90.000000, Yaw 90.000000 (1.570796) vio cam: 1 is occluded: 1 [INFO] Camera: 1 -- converted extrinsics *in FLU* are: Roll: -0.000000, Pitch 0.000000, Yaw -180.000000 (-3.141593) WORLD QUATERNION: -0.000000 0.000000 -0.000000 1.000000 OpenVINS using fisheye camera OpenVINS FINAL Cam extrinsics to IMU for tracking_front: 7 0.5 0.5 0.5 0.5 0.131119 -0.01686 -0.032587 OpenVINS using fisheye camera OpenVINS FINAL Cam extrinsics to IMU for tracking_down: 7 -0 0 -1 6.12323e-17 0.10642 -0.017472 -0.049789 ++++++++++++++++++++++++++ OpenVINS reports number of cameras being used, regardless of delivery method (pipe, merge, etc...): 2 ++++++++++++++++++++++++++ Set camera intrinsics and extrinsics ====> Using Internal KLT feature tracker (w/ GPU) <==== initialized ocl manager >>>>>>>>>> Current reference counts: trackDB: 1 trackFEATS: 1 propagator: 2 updaterMSCKF: 1 updaterSLAM: 1 active_tracks_initializer: 1 initializer: 1 existing instance of voxl-open-vins-server found, attempting to stop it thread is locked to cores: 4 5 6 7 create_server_pipes connecting client pipes imu pipe name: imu_apps Number of Cameras active: 2 Camera merge --- > ch: 1 to cam id: 0 Opening camera pipe: tracking_front tmp_camera_pipe_names.push_back(): tracking_front Camera merge --- > ch: 2 to cam id: 1 Opening camera pipe: tracking_down tmp_camera_pipe_names.push_back(): tracking_down [WARN] (0.005173 and 0.429242) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005557 and 0.414437) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004569 and 0.410084) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [INFO] world : 1.000000 1.000000 (2) [WARN] (0.002892 and 0.391982) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005072 and 0.376832) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.003555 and 0.430667) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005692 and 0.390681) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004505 and 0.402070) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.003865 and 0.396118) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.002470 and 0.419256) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005667 and 0.413984) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.003450 and 0.391701) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004175 and 0.414603) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.002370 and 0.406459) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005461 and 0.382791) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005294 and 0.429766) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004939 and 0.415523) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005433 and 0.415484) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.002918 and 0.386400) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005973 and 0.424467) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005410 and 0.394569) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.003912 and 0.405820) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004101 and 0.405439) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.003168 and 0.391471) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [ERROR] In init too long, timeout, retry RESET 5016505415 [WARN] (0.004056 and 0.424981) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005692 and 0.399984) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.003530 and 0.413739) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005548 and 0.375363) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004837 and 0.385353) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004894 and 0.413352) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005565 and 0.399380) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.005435 and 0.386146) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! [WARN] (0.004120 and 0.409839) Cannot initialize FRD to IMU transform--too much drift: your IMU may need to be recalibrated or is OVERHEATED! ^C
voxl2:~$ voxl-open-vins-server Setting printing level to: SILENT ================================================================= =========================AUTO RESET============================== en_auto_reset: 1 auto_reset_max_velocity: 20.000 auto_reset_max_v_cov_instant: 0.100 auto_reset_max_v_cov: 0.100 auto_reset_max_v_cov_timeout_s: 0.500 auto_reset_min_features: 1 auto_reset_min_feature_timeout_s: 3.000 auto_fallback_timeout_s: 3.000 auto_fallback_min_v: 0.600 en_cont_yaw_checks: false fast_yaw_thresh: 5.000 fast_yaw_timeout_s: 1.750 ===========================STATE================================= do fej: true imu avg: true use rk4 integration: true cam to imu refinement: true cam intrins refinement: true cam imu ts refinement: true max clone size: 8 max slam features: 35 max slam in update: 10 max msckf in update: 10 feat rep msckf: ANCHORED_MSCKF_INVERSE_DEPTH feat rep slam: ANCHORED_MSCKF_INVERSE_DEPTH cam imu time offset: 0.00000 slam delay: 1.00000 pyr levels: 6 grid x: 5 grid y: 5 ================================================================= =====================INERTIAL INITIALIZER======================== gravity mag: 9.80665 init window time: 1.00000 init imu thresh: 1.00000 init dyn use: false ================================================================= ==========================IMU NOISE============================== imu sigma w: 0.00014 imu sigma wb: 0.00000 imu sigma a: 0.00389 imu sigma ab: 0.00006 ================================================================= ========================FEATURE NOISE============================ msckf chi^2 multiplier: 1.00000 msckf sigma px: 1.00000 slam chi^2 multiplier: 40.00000 slam sigma px: 1.80000 zupt chi^2 multiplier: 1.00000 zupt sigma px: 1.00000 ================================================================= =============================ZUPT================================ refine features: true max runs: 5 try zupt: true en_ext_feature_tracker: 0 en_gpu_for_tracking: 1 raansac_gn: false raansac_tri: true zupt max velocity: 0.03000 zupt only at beginning: true zupt noise multiplier: 1.00000 zupt max disparity: 8.00000 ================================================================= use mask: false use stereo: false use baro: false ================================================================= ========================FEATURE INITIALIZER====================== triangulate 1d: false init lamda: 0.00100 max lamda: 10000000000.00000 min dx: 0.00000 min dcost: 0.00000 lam mult: 10.00000 min dist: 0.10000 max dist: 60.00000 max baseline: 40.00000 num_opencv_threads: 4 fast_threshold: 15 histogram_method: HISTOGRAM knn_ratio: 0.70000 track_frequency: 15.00000 publish_frequency: 5 imu takeoff accel thresh: 0.50000 force init on takeoff: true takeoff_threshold(m): -0.100000 publish stats: false max_allowable_cep: 1.00000 force FLU to NED transform: false publish IMU frame: true VIO always on (for bench testing): true num_features_to_track: 30 Enable Thermal Enhance: false Enable Overlay Landscape: false Thermal Brightness: 1.00000 Thermal Brightness BOSON: 1.00000 ================================================================= ================================================================= vio_cam config: cam 0: enable: 1 name: tracking_front pipe_for_preview: tracking_front pipe_for_tracking: tracking_front is_occluded_on_ground: 0 imu: imu_apps is_extrinsic_present: 1 extrinsic cam wrt imu: parent: imu_apps child: tracking_front T_cam_wrt_imu: 0.131 0.017 0.033 RPY_imu_to_cam: 0.0 90.0 90.0 R_cam_to_imu: 0.000 -0.000 1.000 1.000 0.000 -0.000 -0.000 1.000 0.000 cal file: opencv_tracking_front_intrinsics.yml is_cal_present: 1 cam cal intrinsics: width: 1280 height: 800 fx: 462.958 fy: 464.368 cx: 632.240 cy: 398.053 n_coeffs: 4 is_fisheye: 1 D: 0.0672 0.0019 0.0062 -0.0040 cam 1: enable: 1 name: tracking_down pipe_for_preview: tracking_down pipe_for_tracking: tracking_down is_occluded_on_ground: 1 imu: imu_apps is_extrinsic_present: 1 extrinsic cam wrt imu: parent: imu_apps child: tracking_down T_cam_wrt_imu: 0.106 0.017 0.050 RPY_imu_to_cam: 0.0 0.0 180.0 R_cam_to_imu: -1.000 -0.000 0.000 0.000 -1.000 -0.000 0.000 0.000 1.000 cal file: opencv_tracking_down_intrinsics.yml is_cal_present: 1 cam cal intrinsics: width: 1280 height: 800 fx: 467.157 fy: 468.573 cx: 652.260 cy: 381.475 n_coeffs: 4 is_fisheye: 1 D: 0.0618 0.0066 0.0043 -0.0039 ================================================================= vio cam: 0 is occluded: 0 [INFO] Camera: 0 -- converted extrinsics *in FLU* are: Roll: -0.000000, Pitch 90.000000, Yaw -90.000000 (-1.570796) vio cam: 1 is occluded: 1 [INFO] Camera: 1 -- converted extrinsics *in FLU* are: Roll: -0.000000, Pitch 180.000000, Yaw -360.000000 (-6.283185) WORLD QUATERNION: -0.000000 0.000000 -0.000000 1.000000 OpenVINS using fisheye camera OpenVINS FINAL Cam extrinsics to IMU for tracking_front: 7 -0.5 0.5 -0.5 0.5 0.131119 -0.01686 -0.032587 OpenVINS using fisheye camera OpenVINS FINAL Cam extrinsics to IMU for tracking_down: 7 -1.22465e-16 -1 -7.4988e-33 -6.12323e-17 0.10642 -0.017472 -0.049789 ++++++++++++++++++++++++++ OpenVINS reports number of cameras being used, regardless of delivery method (pipe, merge, etc...): 2 ++++++++++++++++++++++++++ Set camera intrinsics and extrinsics ====> Using Internal KLT feature tracker (w/ GPU) <==== initialized ocl manager >>>>>>>>>> Current reference counts: trackDB: 1 trackFEATS: 1 propagator: 2 updaterMSCKF: 1 updaterSLAM: 1 active_tracks_initializer: 1 initializer: 1 thread is locked to cores: 4 5 6 7 create_server_pipes connecting client pipes imu pipe name: imu_apps Number of Cameras active: 2 Camera merge --- > ch: 1 to cam id: 0 Opening camera pipe: tracking_front tmp_camera_pipe_names.push_back(): tracking_front Camera merge --- > ch: 2 to cam id: 1 Opening camera pipe: tracking_down tmp_camera_pipe_names.push_back(): tracking_down [INFO] world : 1.000000 1.000000 (2) client "voxl-portal63468110" connected to overlay FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 ^C received SIGINT Ctrl-C FAILED TO FETCH IMG RINGBUF at time 0 -2 -2 -2 -2 -2 Quiting OpenVINS server QUIT REQUESTED Exiting Cleanly voxl2:~$
-
Hello @Jetson-Nano,
Would you be able to confirm your SDK version?
Also, have you attempted to recalibrate the IMU?
voxl-calibrate-imu `` https://docs.modalai.com/calibrate-imu/ All the best, ZBFT
-
@zauberflote1 i am using the latest sdk 1.4.5
I have calibrated the imu, as well as imu temp
-
@zauberflote1 @Alex-Kushleyev @Eric-Katzfey @tom
I am providing my config file here for your reference.
the drone contains a voxl 2 board, M1073 camera coax board with 2 tracking camera and 1 tof and 1 hires camers along with one flight core v2 as external fc.The drone is losing position very easily. within the few seconds of take off
"en_auto_reset": true, "auto_reset_max_velocity": 20, "auto_reset_max_v_cov_instant": 0.10000000149011612, "auto_reset_max_v_cov": 0.10000000149011612, "auto_reset_max_v_cov_timeout_s": 0.5, "auto_reset_min_features": 1, "auto_reset_min_feature_timeout_s": 3, "auto_fallback_timeout_s": 3, "auto_fallback_min_v": 0.600000023841858, "en_cont_yaw_checks": true, "fast_yaw_thresh": 5, "fast_yaw_timeout_s": 1.75, "do_fej": true, "imu_avg": true, "use_rk4_integration": true, "cam_to_imu_refinement": true, "cam_intrins_refinement": true, "cam_imu_ts_refinement": true, "max_clone_size": 8, "max_slam_features": 35, "max_slam_in_update": 10, "max_msckf_in_update": 10, "feat_rep_msckf": 4, "feat_rep_slam": 4, "cam_imu_time_offset": 0, "slam_delay": 1, "gravity_mag": 9.80665, "init_window_time": 1, "init_imu_thresh": 1, "imu_sigma_w": 0.00013990944749616306, "imu_sigma_wb": 4.1189724174615527e-07, "imu_sigma_a": 0.0038947538150776763, "imu_sigma_ab": 5.538346201712153e-05, "msckf_chi2_multiplier": 1, "slam_chi2_multiplier": 40, "zupt_chi2_multiplier": 1, "refine_features": true, "pyr_levels": 6, "grid_x": 5, "grid_y": 5, "msckf_sigma_px": 1, "slam_sigma_px": 1.8, "zupt_sigma_px": 1, "try_zupt": true, "zupt_max_velocity": 0.03, "zupt_only_at_beginning": true, "zupt_noise_multiplier": 1, "zupt_max_disparity": 8, "init_dyn_use": false, "triangulate_1d": false, "max_runs": 5, "init_lamda": 0.001, "max_lamda": 10000000000, "min_dx": 1e-06, "min_dcost": 1e-06, "lam_mult": 10, "min_dist": 0.1, "max_dist": 60, "max_baseline": 40, "max_cond_number": 600000, "use_mask": false, "use_stereo": false, "use_baro": true, "num_opencv_threads": 4, "fast_threshold": 15, "histogram_method": 1, "knn_ratio": 0.7, "take_cam":0, "takeoff_accel_threshold": 0.5, "takeoff_threshold": -0.1, "use_stats": false, "max_allowable_cep": 1, "en_force_init": true, "en_force_ned_2_flu": false, "en_imu_frame_output": true, "track_frequency": 15, "publish_frequency": 5, "en_vio_always_on": false, "en_ext_feature_tracker": false, "en_gpu_for_tracking": true, "num_features_to_track": 30, "raansac_gn": false, "raansac_tri": true, "en_thermal_enhance": false, "en_overlay_landscape": false, "thermal_brightness": 1, "thermal_brightness_bos": 1 }
-
Hello,
Regarding the IMU temperature calibration, it is now optional as some platforms may underperform if the calibration is not executed properly, i.e., getting poor measurements at the cold phase. I would recommend removing the IMU temperature calibration file from /data/modalai and double-checking if the behaviour persists.
Quick question: Which cameras are you using? Did you set your extrinsics file correctly?
Please make sure you calibrate all the cameras as well.Thanks,
ZBFT -
@zauberflote1 I will the imu temp file and remove it for test.
The ov overlay and map created by mapper, shows that the drone is not drifting in ground test, but in actual test the drone is jumping up and down. i would like to know why this is happening, this is only when when i use tracking camera data, when i use an optical flow that is directly connected to fc v2 the drone is very stable, and collision prevention is also working.All the camera where calibrated before the tests and calibration was successful. I have already checked out the obvious issues, and they all are fine, am i missing out something. help me out to get a better position hold and autonomy without drifting of the system
-
@Alex-Kushleyev can you help me with this
also which is the preferred imu for the extrinsic when I am using voxl 2 + fc v2 + M1073
-
@Jetson-Nano , I am not the best person to answer questions regarding open-vins. Let me double check with other team members.
Also, can you please clarify your question "which is the preferred imu for the extrinsic when I am using voxl 2 + fc v2 + M1073" -- what do you mean which IMU? VOXL2 has two IMUs - one is used by PX4 for flight (accessed from DSP) and the second IMU is connected to the CPU. The latter is used for all VIO processing.
Alex
-
Hi there, just a quick sanity check. Does the drone fly normal in manual mode?
If so, it is worthwhile to do a hand/bench test by powering up on a flat surface. Then connect to the drone via wifi and startup VOXL-Portal. Going to the VIO panel in portal, if you life the drone up and down, then left and right, it should be reflected in portal with the correct trajectory display. If not and it drifts in manual mode too, then there's like a voxl2 calibration or param issue (not vio).
-
@Jetson-Nano
Could you confirm that you are using the correct camera stream?Please run the following:
voxl-inspect-cams voxl-inspect-vins #with openvins running on a separate terminal
Check if you have any error codes or camera feeds that have stalled.
Finally, double check your vio_cams.conf file to see if you are using the *misp_norm
camera pipes.
-- An easy way to do this is to reset your openvins and vio cam configuration files, run the following after backing up your .conf files.voxl-configure-cameras voxl-configure-open-vins
Then, reboot the platform and attempt to run openvins with the new conf files.
-
@zauberflote1 @Alex-Kushleyev @Cliff-Wong Thank you for reverting, I have setted up the openvins server now, the major cause of drift was improper extrinsic value, now the drone is much stable, but still drifting with in a small area, the vio data is fed into fc v2 . can that be an issue for the drifting
-
Z zauberflote1 referenced this topic
-
I am attaching an issue i am facing, the drone is stable in a mat, but as soon as i bring it back i loses the position and drifts out and goes crazy when i try to give pilot input
INFO] world : 1.000000 1.000000 (2) ERROR in insert_data, detected timestamp out of order ov, 1440558439657 vs 1440591773303 ERROR in insert_data, detected timestamp out of order ov, 1456191779391 vs 1456191779391 ERROR in insert_data, detected timestamp out of order ov, 1460758438920 vs 1460791771472 ERROR in insert_data, detected timestamp out of order ov, 1461691774910 vs 1461691774910 ERROR in insert_data, detected timestamp out of order ov, 1461858441212 vs 1461858441212 ERROR in insert_data, detected timestamp out of order ov, 1462091774232 vs 1462125109024 ERROR in insert_data, detected timestamp out of order ov, 1462258438295 vs 1462291773555 ERROR in insert_data, detected timestamp out of order ov, 1462491774024 vs 1462525106316 ERROR in insert_data, detected timestamp out of order ov, 1462658436524 vs 1462725109597 ERROR in insert_data, detected timestamp out of order ov, 1462825106628 vs 1462891775690 ERROR in insert_data, detected timestamp out of order ov, 1462991771420 vs 1463058439440 ERROR in insert_data, detected timestamp out of order ov, 1464125106211 vs 1464125106211 ERROR in insert_data, detected timestamp out of order ov, 1464291773919 vs 1464291773919 ERROR in insert_data, detected timestamp out of order ov, 1464458441002 vs 1464458441002 ERROR in insert_data, detected timestamp out of order ov, 1464691773398 vs 1464725105273 ERROR in insert_data, detected timestamp out of order ov, 1465425110585 vs 1465558437773 ERROR in insert_data, detected timestamp out of order ov, 1465658438450 vs 1465825104596 ERROR in insert_data, detected timestamp out of order ov, 1465925106418 vs 1466091986731 ERROR in insert_data, detected timestamp out of order ov, 1466091986731 vs 1466225109387 ERROR in insert_data, detected timestamp out of order ov, 1466258441991 vs 1466391773450 ERROR in insert_data, detected timestamp out of order ov, 1467658442251 vs 1467691776314 ERROR in insert_data, detected timestamp out of order ov, 1470658438812 vs 1470658438812 ERROR in insert_data, detected timestamp out of order ov, 1470791773187 vs 1470858439698 ERROR in insert_data, detected timestamp out of order ov, 1470958439854 vs 1471025104073 ERROR in insert_data, detected timestamp out of order ov, 1471125105010 vs 1471191771000 ERROR in insert_data, detected timestamp out of order ov, 1471325106781 vs 1471358439125 ERROR in insert_data, detected timestamp out of order ov, 1471491772927 vs 1472058437406 ERROR in insert_data, detected timestamp out of order ov, 1471658438604 vs 1472225105843 ERROR in insert_data, detected timestamp out of order ov, 1471791775375 vs 1472225105843 ERROR in insert_data, detected timestamp out of order ov, 1471958440114 vs 1472425105999 ERROR in insert_data, detected timestamp out of order ov, 1472125105427 vs 1472592004124 ERROR in insert_data, detected timestamp out of order ov, 1472291774385 vs 1472758439489 ERROR in insert_data, detected timestamp out of order ov, 1472491771728 vs 1472925109124 waiting for enough clone states (1 of 5).... waiting for enough clone states (2 of 5).... waiting for enough clone states (3 of 5).... waiting for enough clone states (4 of 5).... ERROR in insert_data, detected timestamp out of order ov, 1474458439176 vs 1474458439176 ERROR in insert_data, detected timestamp out of order ov, 1474858440061 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1474891775321 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1474925109957 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1474958443290 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1474991770946 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475025106050 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475058439748 vs 1475625107196 [WARN] Motion detected, going to full processing ERROR in insert_data, detected timestamp out of order ov, 1475091775165 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475125106571 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475158441363 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475191774279 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475225106988 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475258438550 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475291774540 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475325106311 vs 1475625107196 ERROR in insert_data, detected timestamp out of order ov, 1475458439384 vs 1477225106518 ERROR in insert_data, detected timestamp out of order ov, 1475491771415 vs 1477225106518 ERROR in insert_data, detected timestamp out of order ov, 1475691776883 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475725110738 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475758443863 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475791778446 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475825110321 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475858439383 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475891772613 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475925110581 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475958442873 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1475991771154 vs 1477558441674 ERROR in insert_data, detected timestamp out of order ov, 1476291770633 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1476325110946 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1476358440894 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1476392017456 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1476425106258 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1476458439956 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1476491775894 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1476525105946 vs 1478191770789 ERROR in insert_data, detected timestamp out of order ov, 1478325107247 vs 1480091772507 ERROR in insert_data, detected timestamp out of order ov, 1478358437924 vs 1480091772507 ERROR in insert_data, detected timestamp out of order ov, 1478391771674 vs 1480091772507 ERROR in insert_data, detected timestamp out of order ov, 1478425108653 vs 1480091772507 ERROR in insert_data, detected timestamp out of order ov, 1478458442768 vs 1480091772507 ERROR: invalid metadata, magic number=387521565, expected 1448040524 most likely client fell behind and pipe overflowed ERROR in insert_data, detected timestamp out of order ov, 1514291774160 vs 1514291774160 ERROR: features were 0 for a long time! cur: 1, min_req: 15 (are you bench testing?) [VIO_BAD_STATE] No Stable feature. WARNING auto-resetting, Bad VIO, State: true Q: -1 Vel: 1.738034 Uncert: 0.000915 State: 0(1) ERROR DIAGONAL WENT NEGATIVE ERROR DIAGONAL WENT NEGATIVE ERROR DIAGONAL WENT NEGATIVE ERROR DIAGONAL WENT NEGATIVE ERROR DIAGONAL WENT NEGATIVE ERROR DIAGONAL WENT NEGATIVE voxl-open-vins-server: /builds/voxl-public/voxl-sdk/third-party/voxl-open-vins/open_vins/ov_msckf/src/state/StateHelper.cpp:114: Assertion `!found_neg' failed. Aborted
voxl2:~$ voxl-inspect-vins waiting for server at /run/mpa/ov_extended T_imu_wrt_vio (m) |Roll Pitch Yaw (deg)| state| error_code 0.00 0.00 0.00| -0.8 -2.7 0.0| OKAY | DROPPED_IMU voxl-open-vins-server disconnected T_imu_wrt_vio (m) |Roll Pitch Yaw (deg)| state| error_code 0.00 0.00 0.00| -0.9 -2.7 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 4224 bytes, but it should be a multiple of 5268 0.00 0.00 0.00| -0.9 -2.7 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 2112 bytes, but it should be a multiple of 5268 0.00 0.00 0.00| -0.9 -2.7 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 2112 bytes, but it should be a multiple of 5268 -0.00 -0.00 0.00| -0.9 -2.8 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 6336 bytes, but it should be a multiple of 5268 -0.00 -0.00 0.00| -0.9 -2.8 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 2112 bytes, but it should be a multiple of 5268 -0.00 -0.00 0.00| -0.9 -2.8 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 2112 bytes, but it should be a multiple of 5268 -0.00 -0.00 0.00| -0.9 -2.8 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 7380 bytes, but it should be a multiple of 5268 -0.00 -0.00 0.00| -0.9 -2.8 0.0| OKAY | ERROR validating EXT VIO t read 8424 bytes, but it should be a multiple of 5268 ERROR validating EXT VIO data received through pipe: read partial packet read 7380 bytes, but it should be a multiple of 5268 4.38 -1.43 1.78| -1.6 19.3 -4.9| OKAY | voxl-open-vins-server disconnected ERROR in pipe_client_open opening request pipe: No such device or address Most likely the server stopped without cleaning up Client is cleaning up pipes for the server