1.9.0 Release notes - iNavFlight/inav GitHub Wiki

Please read the release notes carefully and upgrade INAV Configurator application.

INAV is and will remain open-source and free, but you are more than welcome to support the development.

This release was supported by our awesome sponsors CarbonBird.com, Airbot, ADPM Drones and a number of supporters on Patreon.

WARNINGS

  • If you are using HMC5883/HMC5983 compass it is advised to recalibrate. Please don't restore the old settings from the dump/diff script.

Known bugs

  • todo

Renamed PASSTHROUGH flight mode (fixed wing)

The PASSTHROUGH flight mode has been renamed to MANUAL. New settings also have been added to allow the use of different servo rates (or control weight) for the servos when flying without stabilization without using a programmable remote control. The exponential settings for roll/pitch and yaw controls are now also also independent from the exponential settings used for stabilized flight modes. See the manual_* settings in the CLI settings table below. The default settings make the MANUAL flight mode behave exactly as the old PASSTHROUGH flight mode.

Increased VBAT resolution

The battery voltage resolution has been increased from 100mV to 10mV. In consequence the vbat_scale, vbat_max_cell_voltage, vbat_warning_cell_voltage and vbat_min_cell_voltage settings resolution has also been increased 10 fold allowing more precise battery voltage calibration and battery voltage thresholds. To restore old configuration settings users need to multiply their old setting values by 10.

New defaults for these settings:

  • vbat_scale: 1100 (was 110)
  • vbat_max_cell_voltage: 424 (was 43) or 4.24V/cell
  • vbat_warning_cell_voltage: 350 (was 35) or 3.5V/cell
  • vbat_min_cell_voltage: 330 (was 33) or 3.3V/cell

Users who were using the old defaults should not use the settings from their dump but use the new defaults instead.

Users now have the option to display 1 or 2 decimals for battery voltages in the OSD display (see osd_main_voltage_decimals in the CLI settings table below).

Battery capacity monitoring

It is now possible to display the remaining battery capacity in the OSD and also use the battery capacity thresholds (battery_capacity_warning and battery_capacity_critical) for battery alarms.

For the capacity monitoring to work you need a current sensor (CURRENT_METER feature). For monitoring energy in milliWatt hour you also need voltage measurement (VBAT feature). For best results the current and voltage readings have to be calibrated.

For the remaining battery capacity to be displayed users need to set the battery_capacity setting (>0) and the battery to be full when plugged in. If the battery_capacity setting is set to 0 the remaining battery capacity item in the OSD will display NA and the battery gauge will use an estimation based on the battery voltage (like it used to be) otherwise it will display the remaining battery capacity down to the battery_capacity_critical setting (battery considered empty). For the capacity thresholds to be used for alarms the battery_capacity_warning and battery_capacity_critical settings also needs to be set (>0) and the battery to be full the moment it is plugged in. The value are absolute meaning that battery_capacity_warning is the battery capacity left when the battery is entering the warning state and battery_capacity_critical is the battery capacity left when the battery is considered empty and entering the critical state.

For the battery to be considered full the mean cell voltage of the battery needs to be above vbat_max_cell_voltage - 140mV (by default 4.1V). So a 3S battery will be considered full above 12.3V and a 4S battery above 16.24V. If the battery plugged in is not considered full the remaining battery capacity OSD item will show NF (Not Full).

For the remaining battery capacity and battery gauge to be the most precise (linear relative to throttle from full to empty) when using battery capacity monitoring users should use the milliWatt hour unit for the battery capacity settings. The battery capacity settings unit can be set using the battery_capacity_unit setting (see the CLI parameters table below).

NAV Launch (airplane launch assistant) available as feature

The mode can now be permanently enabled via the configurator or the CLI using feature FW_LAUNCH in this case NAV LAUNCH doesn't need to be enabled via a transmitter switch prior to arming freeing a switch for other uses. If you inadvertently disarm mid-air, NAV LAUNCH will be active again after arming again so, before raising the throttle again (you should lower the throttle to arm again) move pitch/roll stick and you will have full control back. If you have this feature enabled and for some reason you want to launch the plane manually just move pitch/roll stick right after arming and you have back full control for a manual launch.

CLI parameter renaming / new parameters

New parameters have been introduced. Some CLI parameters were renamed to support new features or to better reflect their meaning:

Name Description
rangefinder_median_filter Default is OFF
failsafe_lights Enable or disable the lights when the FAILSAFE flight mode is enabled. The target needs to be compiled with USE_LIGHTS [ON/OFF]. Default is ON
failsafe_lights_flash_period Time in milliseconds between two flashes when failsafe_lights is ON and FAILSAFE flight mode is enabled [40-65535]. Default is 1000ms.
failsafe_lights_flash_on_time Flash lights ON time in milliseconds when failsafe_lights is ON and FAILSAFE flight mode is enabled. [20-65535]. Default is 100ms.
battery_capacity Set the battery capacity in mAh or mWh (see battery_capacity_unit). Used to calculate the remaining battery capacity. Default is 0
battery_capacity_warning If the remaining battery capacity goes below this threshold the beeper will emit short beeps and the relevant OSD items will blink. Default is 0
battery_capacity_critical If the remaining battery capacity goes below this threshold the battery is considered empty and the beeper will emit long beeps. Default is 0
battery_capacity_unit Unit used for battery_capacity, battery_capacity_warning and battery_capacity_critical [MAH/MWH] (milliAmpere hour / milliWatt hour). Default is MAH
manual_rc_expo Exponential value used for the PITCH/ROLL axes by the MANUAL flight mode [0-100]. Default is 70
manual_rc_yaw_expo Exponential value used for the YAW axis by the MANUAL flight mode. Default is 20
manual_pitch_rate Servo travel multiplier for the PITCH axis in MANUAL flight mode [0-100]%. Default is 100%
manual_roll_rate Servo travel multiplier for the ROLL axis in MANUAL flight mode [0-100]%. Default is 100%
manual_yaw_rate Servo travel multiplier for the YAW axis in MANUAL flight mode [0-100]%. Default is 100%
gps_ublox_use_galileo Enable use of Galileo satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires M8N and Ublox firmware 3.x (or later) [OFF/ON]. Default is OFF
smartport_fuel_unit Unit of the value sent with the FUEL ID through the S.Port telemetry. Replaces the smartport_fuel_percent setting [PERCENT/MAH/MWH]. Default is PERCENT
osd_stats_energy_unit Unit used for the drawn energy in the OSD stats [MAH/WH] (milliAmpere hour/ Watt hour). Default is MAH
osd_main_voltage_decimals Number of decimals for the battery voltages displayed in the OSD [1-2]. Default is 1
osd_wh_drawn_pos
osd_bat_remaining_capacity_pos
osd_bat_remaining_percent_pos
osd_efficiency_mah_pos
osd_efficiency_wh_pos
display_force_sw_blink
mag_to_use Allow to chose between built-in and external compass sensor if they are connected to separate buses. Currently only for REVO target
nav_fw_launch_min_time Allow launch mode to execute at least this time (ms) and ignore stick movements [0-60000]. Default is 0
nav_fw_launch_max_altitude Altitude (centimeters) at which LAUNCH mode will be turned off and regular flight mode will take over [0-60000]. Default is 0

New boards

  • Betaflight F3
  • Betaflight F4
  • FuriousFPV F35 Lightning (former FuriousFPV WingF4)
  • Matek F722
  • Matek F405-CTR
  • Holybro KAKUTE F4
  • Holybro KAKUTE F4 V2
  • Fortini F4

New features

  • [COMPASS] Allow to chose between internal and external compass on REVO target (@digitalentity, #2522)
  • [COMPASS] Support for QMC5883 compass chips that incorrectly mimic the HMC58883 (@digitalentity, #2809)
  • [SYSTEM] Migrate to busDevice abstraction layer for better device access abstraction (@digitalentity, #2290)
  • [SYSTEM] Create dedicated F427 startup file (@digitalentity, #2559)
  • [MOTOLAB] Allow MOTOLAB target to be used for airplanes (@shellixyz, #2502)
  • [GPS] Enables use of Galileo satellites for NEO-M8N GPS units (@stronnag, #2583)
  • [CALIBRATION] Add API for Calibration tab in Configurator
  • [OSD] Allow OSD mode to disable OSD (@shellixyz, #2676)
  • [OSD] Increase odometer accuracy (@digitalentity, #2757)
  • [OSD] Add more battery-related indicators (including efficiency)
  • [LIGHTS] Add LIGHTS flight mode to enable/disable GPIO-driven equipment (@shellixyz, #2675)
  • [LAUNCH] Allow LAUNCH mode to ignore sticks for certain amount of time (@shellixyz, #2677)
  • [LAUNCH] Allow LAUNCH mode to be permanently enabled as FW_LAUNCH feature (@giacomo892, #2731)
  • [MSP] API to support smix/mmix configuration via Configurator (@DzikuVx, #2693)
  • [MSP] Add no-reply flag to allow MSP messages that don't need a response (@digitalentity, #2762)
  • [COMPASS] Enable QMC5883, MAG3110 and IST8310 on most of the targets (@digitalentity, #2699)
  • [AIRPLANE] Replace PASSTHROUGH with MANUAL flight mode (@shellixyz, #2661)
  • [BATTERY] Improve battery monitoring and resolution (@shellixyz, #2705)
  • [SYSTEM] Remove SoftSPI implementation since it's not used (@DzikuVx, #2726)
  • [SYSTEM] Allow in-flight adjustments of board alignment, cruise throttle and pitch2thr (@shellixyz, #2768)
  • [SYSTEM] Trace messages output for easier debugging (@digitalentity, #2691)

Bugfixes