Skip to main content

IMU Calibration on Boot

You are here:
< All Topics

For Cases of Terrestrial or Aquatic operation you can set whether or not the IMU is to calibrate on boot , this imply that Calibration is done ahead of operating the drone in said enviroment

Ardupilot

To disable automatic calibration on boot in ArduPilot, you primarily need to manage sensor-specific parameters in your ground station (e.g., Mission Planner).

Key actions include setting

ESC_CALIBRATION to 0 to disable ESC calibration, ensuring

ARSPD_AUTOCAL is 0 for airspeed,

INS_TCALn_ENABLE to 1 to stop IMU temperature calibration.

Here are the specific settings to disable calibration routines on boot:

  • ESC Calibration: Set ESC_CALIBRATION to 0. If set to 1 or 2, it will attempt to calibrate ESCs upon the next reboot.
  • Airspeed Sensor Calibration: Set ARSPD_AUTOCAL to 0 (Disabled) or 1 (Enabled) automatic airspeed calibration in flight.
  • IMU Temperature Calibration: Set INS_TCALn_ENABLE to 1 (or 0 if you do not want to use existing calibration data) to prevent the calibration routine from running on every boot.
  • Gyro Calibration: While not fully recommended, you can manage how the vehicle initializes by using the INS_GYRO_CAL parameter.
  • Pre-Arm Checks: If the autopilot is refusing to arm because it wants to re-calibrate, you can check your pre-arm settings (ARMING_CHECK), but it is highly recommended to complete the calibration rather than disabling the check.

To disable automatic IMU gyro calibration upon booting ArduPilot (which causes “Bad Gyro Health” if the vehicle moves),

set the parameter INS_GYR_CAL to 0 This disables the automatic 30-second gyro calibration on startup. It is still possible to manually trigger calibration from the Mission Planner Actions tab if needed. 

  • Parameter: INS_GYR_CAL
  • Value: 0 (Disabled), 1 (Enabled – default)
  • Note: While this prevents bootup errors, ensure the vehicle remains relatively still during startup for best performance. 

For specialized thermal calibration, INS_TCALn_ENABLE parameters are used to manage temperature calibration data.

INAV

the automatic runtime calibration (gyro/accelerometer) on boot in iNav, you can use a CLI command to set the initial gyroscope calibration to OFF

  •  set init_gyro_cal = OFF
  •  set init_gyro_cal = ON

Steps to Disable Auto Calibration on Boot:

  1. Connect your flight controller to the iNav Configurator.
  2. Go to the CLI tab.
  3. Type the following command and press Enter:
    set init_gyro_cal = OFF
  4. Type save and press Enter to save the setting and reboot.
Table of Contents