Inav Versions Save

INAV: Navigation-enabled flight control software

7.1.0

1 month ago

INAV 7.1 Ferocious Falcon

Hello and welcome to INAV 7.1 "Ferocious Falcon"

Please carefully read all of this document for the best possible experience and safety.

Contact other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Important Notes

INAV 7 is the last INAV official release available for F411 based flight controllers. The next milestone, INAV 8 will not be available for F411 boards.

The GPS NMEA protocol is no longer supported. All pilots are required to switch to UBLOX protocol. All modern GPS modules (even as old as from 2015 and earlier) support UBLOX protocol and there is not a single good reason to stick to NMEA nowadays

Make sure to remove props and check your motor and servo outputs before powering your upgraded flight controller with a battery for the first time. The changes to enable flexible motor and servo allocation may change what outputs your configuration uses by default.

PosHold, Navigation and RTH without compass PSA

Attention all drone pilots and enthusiasts,

Are you ready to take your flights to new heights with INAV 7.1? We've got some important information to share with you.

INAV 7.1 brings an exciting update to navigation capabilities. Now, you can soar through the skies, navigate waypoints, and even return to home without relying on a compass. Yes, you heard that right! But before you launch into the air, there's something crucial to consider.

While INAV 7.1 may not require a compass for basic navigation functions, we strongly advise you to install one for optimal flight performance. Here's why:

🛰️ Better Flight Precision: A compass provides essential data for accurate navigation, ensuring smoother and more precise flight paths.

🌐 Enhanced Reliability: With a compass onboard, your drone can maintain stability even in challenging environments, low speeds and strong wind.

🚀 Minimize Risks: Although INAV 7.1 can get you where you need to go without a compass, flying without one may result in a bumpier ride and increased risk of drift or inaccurate positioning.

Remember, safety and efficiency are paramount when operating drones. By installing a compass, you're not just enhancing your flight experience, but also prioritizing safety for yourself and those around you.

So, before you take off on your next adventure, make sure to equip your drone with a compass. It's the smart choice for smoother flights and better navigation.

Fly safe, fly smart with INAV 7.1 and a compass by your side!

Currently, if you wish to fly a multirotor without a compass. You will need to enable a compass (fake is ok) to change navigational modes in Configurator. You should disable the compass after making the changes. This has been fixed for a future release.

Note: You must remove the compass (including FAKE) to enable MR compass-free navigation flight. This will remove the visualisation of the modes from the 7.1.0 Configurator. However, as long as the modes were saved, they available in the flight controller and can be verified in the CLI aux section.

Upgrading from a previous release

Upgrading from INAV 7.0

  1. Backup configuration with CLI diff all command
  2. Download and install the new INAV Configurator 7.1
  3. Flash INAV 7.1 WITH Full Chip Erase option enabled
  4. Select Keep current settings from the defaults pop-up
  5. Go to CLI and restore your 7.0 diff
  6. Done

Upgrading from INAV 6 and 6.1

  1. Download and install the new INAV Configurator 7
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 7 using the Full Erase option in the configurator.
  4. In case of Analog FPV, upload your OSD font of choice from the OSD tab.
  5. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  6. There are many new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  7. You should be ready, explore new 7.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Major changes

Fixed wing Autoland with landing pattern

INAV supports advanced automatic landings for fixed wing aircraft from version 7.1. The procedure is based on landings for man-carrying aircraft, so that safe landings at a specific location are possible. Supported are landings at Safehome after "Return to Home" or at a defined LAND waypoint for missions. See: Fixed Wing Landing.md

IMPORTANT: When updating from an older INAV version with a diff, please change the following settings before using Autoland for better performance.

Plane with no tail: set nav_wp_radius = 1000

Plane with tail: set nav_wp_radius = 800

Compass and Barometer changes

INAV now relies more heavily on GNSS data for navigation than before. This can provide more security if the Barometer fails, or if the multirotor is suffering from Compass interference. By still allowing it to navigate back to home.

From the release of INAV 7.1. The use of a compass is no longer mandatory for multirotor navigation as it once was. BUT it is still recommended for the best navigation performance, when it comes to maintaining a fixed position for an extended period of time, without heading drift. e.g. in Poshold. Or taking off and immediately starting a Waypoint mission.

If a user does decide to omit the use of a compass for a multirotor, be mindful that any navigation mode (RTH, Failsafe, Poshold, Cruise or a Waypoint mission) will not be operational UNTIL a GPS heading is first obtained, by flying in a straight line until both -

  • The OSD Heading and Course over Ground indicators display a valid heading. Then keeping both headings closely aligned for a time.
  • And the OSD Home arrow appears, showing a valid home direction.

Example Video

For more details see here

Tailsitter Support for VTOL

Tailsitter builds are now natively supported to allow proper Board Orientation switching during transition. Details

Other changes

Updated ICM426xx filtering

The filtering of the ICM426xx gyros has been updated based on changes made to both Ardupilot and BetaFlight and we expect better performance, when comparing to previous INAV versions.

OSD Changes

Users can now customize their own OSD messages, by way of the Programming Framework. Details

The Artificial Horizon will not properly track the real horizon in the correct way, when the craft is inverted. Details

New Fixedwing flight mode

The mode is called Angle Hold. For more details see here

New targets

  • FLYCOLORF7V2

CLI

Changed settings

Name Description
gps_dyn_model Default: AIR_2G GPS navigation model: Pedestrian, Automotive, Air<1g, Air<2g, Air<4g. Default is AIR_2G. Use pedestrian/Automotive with caution, can cause flyaways with fast flying.

New Items

Name Description
ahrs_gps_yaw_weight Arhs gps yaw weight when mag is avaliable, 0 means no gps yaw, 100 means equal weight as compass Values: 0 - 500 Default: 100
nav_fw_land_approach_length Length of the final approach Values: 100 - 100000 Default: 35000
nav_fw_land_final_approach_pitch2throttle_mod Modifier for pitch to throttle ratio at final approach. In Percent. Values: 100 - 400 Default: 100
nav_fw_land_flare_alt Initial altitude of the flare phase Values: 0 - 10000 Default: 150
nav_fw_land_flare_pitch Pitch value for flare phase. In degrees Values: -15 - 45 Default: 8
nav_fw_land_glide_alt Initial altitude of the glide phase Values: 100 - 5000 Default: 200
nav_fw_land_glide_pitch Pitch value for glide phase. In degrees. Values: -15 - 45 Default: 0
nav_fw_land_max_tailwind Max. tailwind (in cm/s) if no landing direction with downwind is available Values: 0 - 3000 Default: 140
nav_fw_launch_land_abort_deadband Launch and landing abort stick deadband in [r/c points], applied after r/c deadband and expo. The Roll/Pitch stick needs to be deflected beyond this deadband to abort the launch or landing. Values: 2 - 250 Default: 100. Replaces nav_fw_launch_abort_deadband
nav_min_ground_speed Minimum ground speed for navigation flight modes [m/s]. Default 7 m/s. Values: 6 - 50 Default: 7
nav_rth_fs_landing_delay If landing is active on Failsafe and this is above 0. The aircraft will hover or loiter for X seconds before performing the landing. If the battery enters the warning or critical levels, the land will proceed. Default = 0 [seconds] Values: 0 - 1800 Default: 0
tailsitter_orientation_offset Apply a 90 deg pitch offset in sensor aliment for tailsitter flying mode Default: FALSE

Removed Items

Name Description
inav_w_xyz_acc_p
nav_fw_launch_abort_deadband Replaced by nav_fw_launch_land_abort_deadband

TL;DR

The list of most important changes is also available in a video form: https://youtu.be/8Q8t_KwlSAQ

Changelist

The full list of changes is available here The full list of INAV Configurator changes is available here

What's Changed from INAV 7.0

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/7.0.0...7.1.0

7.1.0-RC1

2 months ago

INAV 7.1 Ferocious Falcon

Hello and welcome to INAV 7.1 "Ferocious Falcon"

Please carefully read all of this document for the best possible experience and safety.

Contact other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Important Notes

INAV 7 is the last INAV official release available for F411 based flight controllers. The next milestone, INAV 8 will not be available for F411 boards.

The GPS NMEA protocol is no longer supported. All pilots are required to switch to UBLOX protocol. All modern GPS modules (even as old as from 2015 and earlier) support UBLOX protocol and there is not a single good reason to stick to NMEA nowadays

Make sure to remove props and check your motor and servo outputs before powering your upgraded flight controller with a battery for the first time. The changes to enable flexible motor and servo allocation may change what outputs your configuration uses by default.

Upgrading from a previous release

Upgrading from INAV 7.0

  1. Backup configuration with CLI diff all command
  2. Download and install the new INAV Configurator 7.1
  3. Flash INAV 7.1 WITH Full Chip Erase option enabled
  4. Select Keep current settings from the defaults pop-up
  5. Go to CLI and restore your 7.0 diff
  6. Done

Upgrading from INAV 6 and 6.1

  1. Download and install the new INAV Configurator 7
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 7 using the Full Erase option in the configurator.
  4. In case of Analog FPV, upload your OSD font of choice from the OSD tab.
  5. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  6. There are many new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  7. You should be ready, explore new 7.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Major changes

Fixed wing Autoland with landing pattern

INAV supports advanced automatic landings for fixed wing aircraft from version 7.1. The procedure is based on landings for man-carrying aircraft, so that safe landings at a specific location are possible. Supported are landings at Safehome after "Return to Home" or at a defined LAND waypoint for missions. See: Fixed Wing Landing.md

Altitude and Heading estimation changes

INAV now relies more heavily on GNSS data for navigation than before. This can provide more security if the Barometer fails, or if the multirotor is suffering from Compass interference. By still allowing it to navigate back to home. For more details see here

Other changes

Updated ICM426xx filtering

The filtering of the ICM426xx gyros has been updated based on changes made to both Ardupilot and BetaFlight and we expect better performance, when comparing to previous INAV versions.

Custom OSD

Users can now customize their own OSD messages, by way of the Programming Framework. Details

New Fixedwing flight mode

The mode is called Angle Hold. For more details see here

New targets

  • FLYCOLORF7V2

CLI

Changed settings

Name Description
gps_dyn_model Default: AIR_2G GPS navigation model: Pedestrian, Automotive, Air<1g, Air<2g, Air<4g. Default is AIR_2G. Use pedestrian/Automotive with caution, can cause flyaways with fast flying.

New Items

Name Description
ahrs_gps_yaw_weight Arhs gps yaw weight when mag is avaliable, 0 means no gps yaw, 100 means equal weight as compass Values: 0 - 500 Default: 100
nav_fw_land_approach_length Length of the final approach Values: 100 - 100000 Default: 35000
nav_fw_land_final_approach_pitch2throttle_mod Modifier for pitch to throttle ratio at final approach. In Percent. Values: 100 - 400 Default: 100
nav_fw_land_flare_alt Initial altitude of the flare phase Values: 0 - 10000 Default: 150
nav_fw_land_flare_pitch Pitch value for flare phase. In degrees Values: -15 - 45 Default: 8
nav_fw_land_glide_alt Initial altitude of the glide phase Values: 100 - 5000 Default: 200
nav_fw_land_glide_pitch Pitch value for glide phase. In degrees. Values: -15 - 45 Default: 0
nav_fw_land_max_tailwind Max. tailwind (in cm/s) if no landing direction with downwind is available Values: 0 - 3000 Default: 140
nav_fw_launch_land_abort_deadband Launch and landing abort stick deadband in [r/c points], applied after r/c deadband and expo. The Roll/Pitch stick needs to be deflected beyond this deadband to abort the launch or landing. Values: 2 - 250 Default: 100
nav_min_ground_speed Minimum ground speed for navigation flight modes [m/s]. Default 7 m/s. Values: 6 - 50 Default: 7
nav_rth_fs_landing_delay If landing is active on Failsafe and this is above 0. The aircraft will hover or loiter for X seconds before performing the landing. If the battery enters the warning or critical levels, the land will proceed. Default = 0 [seconds] Values: 0 - 1800 Default: 0
tailsitter_orientation_offset Apply a 90 deg pitch offset in sensor aliment for tailsitter flying mode Default: FALSE

Removed Items

Name Description
inav_w_xyz_acc_p
nav_fw_launch_abort_deadband

TL;DR

The list of most important changes is also available in a video form: https://youtu.be/8Q8t_KwlSAQ

Changelist

The full list of changes is available here The full list of INAV Configurator changes is available here

What's Changed from INAV 7.0

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/7.0.0...7.1.0-RC1

7.0.0

5 months ago

INAV 7 Ferocious Falcon

Hello and welcome to INAV 7 "Ferocious Falcon"

Please carefully read all of this document for the best possible experience and safety.

Contact other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Important Notes

INAV 7 is the last INAV official release available for F411 based flight controllers. The next milestone, INAV 8 will not be available for F411 boards.

The GPS NMEA protocol is no longer supported. All pilots are required to switch to UBLOX protocol. All modern GPS modules (even as old as from 2015 and earlier) support UBLOX protocol and there is not a single good reason to stick to NMEA nowadays

The FrSky D-series telemetry support has been removed. This applies to legacy D4R receivers and some 3rd party whoop boards

Make sure to remove props and check your motor and servo outputs before powering your upgraded flight controller with a battery for the first time. The changes to enable flexible motor and servo allocation may change what outputs your configuration uses by default.

Upgrading from a previous release

Upgrading from INAV 6 and 6.1

  1. Download and install the new INAV Configurator 7
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 7 using the Full Erase option in the configurator.
  4. In case of Analog FPV, upload your OSD font of choice from the OSD tab.
  5. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  6. There are many new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  7. You should be ready, explore new 7.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Major changes

Flexible motor and servo output allocation

INAV now was a function that allows to flexibly assign functions to PWM outputs directly from INAV Configurator. Specific function AUTO, MOTORS or SERVOS can be assigned to each Timer Group. Then, all outputs from this group will perform this function. Thanks to this, it's possible to use servos and motors in ways that previously required building a custom targets.

INAV output assignment

Bear in mind:

  • In some rare cases, output assignment might be different than in INAV 6. This makes it even more important to remove your props and double check your outputs before you power your flight controller with batteries for the first time after applying your old settings or enabling outputs.
  • It is not possible to assign function to individual outputs. It's a hardware, not software limitation.

Mixer profiles and VTOL support

This has been a frequent request since PNP VTOL models started becoming more common.

Read more in Mixer Profile INAV docs and VTOL INAV docs

Ez Tune

The Ez Tune is a simplified tuning framework similar to Betalight's Simplified Slider Tuning. Instead of setting each PID controller gain, rate, and filter setting separately, Pilot is presented with 8 sliders for:

  • Axis ratio
  • Main filter frequency
  • Response
  • Damping
  • Stability
  • Aggressiveness
  • Rate
  • Expo

INAV Ez Tune

Ez Tune settings are not compatible with Betaflight Slider Tuning setting and cannot be migrated directly.

Read the description in Configurator's Ez Tune tab on what each setting does and how it should be used.

More on the topic of Ez Tune can be found here

In-flight Emergency Rearm

With INAV 7.0 came the ability to Emergency Rearm. This allows you to rearm in flight when you accidentally disarm. You need to do this within 5 seconds of disarming. Which sounds short, but is actually a pretty long time. Emergency Rearm can be used after a launch and while the aircraft still believes it's flying. It bypasses safety checks (including the throttle position) and doesn't trigger auto launch. Multirotors will also briefly switch to Angle to stabilise and level the flight. You can read all about it at https://github.com/iNavFlight/inav/pull/9254

Timer DMA Burst

INAV 7 adds the DMA Burst mode to selected target as ultimately fixes the problem of DSHOT protocol not working on some boards. Pilots do not have to take any actions, DSHOT is just available on previously affected flight controllers. This applies to:

  • Matek F405 TE
  • SpeedyBee F405 V3

JETI EXBUS fixed

The JETI EXBUS protocol should now not hang the flight controller during operation. The issue was originally fixed in https://github.com/betaflight/betaflight/pull/13130 . Thank you @SteveCEvans and @klutvott123

Multirotor Cruise Mode

The Cruise Mode for Multirotors allows pilots to let go the radio sticks while UAV flies on a predefined course with predefined speed. Just like with regular PosHold, Throttle stick sets the altitude and course, while the pitch stick is used to set the horizontal speed. When released INAV will hold set speed, altitude, and course. More information available in here https://youtu.be/4pgDxexuSnU

NMEA Protocol no longer available

As mentioned in the Important Notes section, INAV 7 no longer supports the GPS NMEA protocol. All modern GPS module support one of the UBLOX protocols and as a result pilots must switch to either UBLOX or UBLOX7 protocol.

GPS Improvements

A number of improvements have been made to GPS support in INAV 7.

It is now possible to select multiple GPS constellations, and not only Galileo. If your GPS modules does not support a particular combination, it will fallback to no extra constellations.

M10 GPS units will now default to 10Hz, like M8 units and a new cli setting has been added to allow overriding the update rate of your UBLOX7 GPS (gps_ublox_nav_hz). This should allow you to fall back to 5Hz or bump it up to the limits of what is supported by your GPS module.

INAV GPS Improvements

MSP VTX support

INAV now support MSP VTX when using MSP DisplayPort OSD.

Now it is possible to change VTX power levels and channels via INAV's OSD menu or ELRS backpack without connecting the SmartAudio wire on HD-Zero VTXs.

If you MSP DisplayPort OSD is working, no extra configuration is needed.

Linear Descent RTH mode changed

AT_LEAST_LINEAR_DESCENT is no longer a method for RTH. It has been replaced with a more flexible linear descent option that will work with any RTH method. If previously using AT_LEAST_LINEAR_DESCENT, you should now just use AT_LEAST as the RTH type. Linear Descent is now a separate option that can be used with any other RTH method. To make this possible, the target altitude of the descent is now the nav_rth_home_altitude. In some cases, if flying below the home position, this will work as a linear ascent.

You can also decide when the linear descent will start. Set the nav_rth_linear_descent_start_distance parameter to the distance (metres) from the home point, where you want to start descending. Set to 0, the default setting; the descent will start immediately, as with the pre-7.0 implementation.

These options are available in Configurator.

See the Navigation Mode: Return to Home wiki for more details.

Pilot Logos

You can now have custom pilot logos on your OSD and arming screen (HD Only). You will need to create a custom font with your logos to show them on screen. The OSD logo is a 3x1 character symbol. This can be used with both analogue and HD. The arming screen logo is a 10x4 character image, and only works with HD systems.

More details are available in the OSD Document.

Other changes

  • The AUTOLEVEL mode is renamed to AUTO LEVEL TRIM. The functionality remains the same.
  • The osd_mah_used_precision parameter has been renamed osd_mah_precision.
  • 24 channels available for Jeti systems (not available with F411 or F722 flight controllers).
  • Virtual pitot is enabled by default.

Other removed functions

  • FrSky D-series telemetry
  • output_mode setting that allows to reassign all PWM outputs to either MOTORS or SERVOS

New targets

  • SDmodel H7V1
  • Matek H743HD
  • SpeedyBee F405 V4
  • SpeedeBee F405 Mini
  • SpeedyBee F7 Mini V2
  • GEPRCF405
  • GEPRCF722
  • NEUTRONRC F435 Mini AIO
  • DAKEFPV F405
  • DAKEFPV F722
  • AtomRC F405 NAVI Delux
  • JHEMCUF722
  • JHEMCUF405

CLI

Changed settings

Name Description
gps_provider Removed: NMEA
gps_sbas_mode New: SPAN
nav_rth_alt_mode Removed: AT_LEAST_LINEAR_DESCENT
pitot_hardware New: DLVR-L10D

New Items

Name Description
ez_aggressiveness EzTune aggressiveness Values: 0 - 200 Default: 100
ez_axis_ratio EzTune axis ratio Values: 25 - 175 Default: 110
ez_damping EzTune damping Values: 0 - 200 Default: 100
ez_enabled Enables EzTune feature Default: FALSE
ez_expo EzTune expo Values: 0 - 200 Default: 100
ez_filter_hz EzTune filter cutoff frequency Values: 10 - 300 Default: 110
ez_rate EzTune rate Values: 0 - 200 Default: 100
ez_response EzTune response Values: 0 - 200 Default: 100
ez_stability EzTune stability Values: 0 - 200 Default: 100
gps_auto_baud_max_supported Max baudrate supported by GPS unit. This is used during autobaud. M8 supports up to 460400, M10 supports up to 921600 and 230400 is the value used before INAV 7.0 Default: 230400
gps_ublox_nav_hz Navigation update rate for UBLOX7 receivers. Some receivers may limit the maximum number of satellites tracked when set to a higher rate or even stop sending navigation updates if the value is too high. Some M10 devices can do up to 25Hz. 10 is a safe value for M8 and newer. Values: 5 - 200 Default: 10
gps_ublox_use_beidou Enable use of Beidou satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps hardware support [OFF/ON]. Default: FALSE
gps_ublox_use_glonass Enable use of Glonass satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps haardware support [OFF/ON]. Default: FALSE
led_pin_pwm_mode PWM mode of LED pin. Values: SHARED_LOW, SHARED_HIGH, LOW, HIGH. Default: SHARED_LOW
mixer_automated_switch If set to on, This mixer_profile will try to switch to another mixer_profile when 1.RTH heading home is requested and distance to home is lager than 3*nav_fw_loiter_radius on mixer_profile is a MULTIROTOR or TRICOPTER platform_type. 2. RTH landing is requested on this mixer_profile is a AIRPLANE platform_type Default: FALSE
mixer_pid_profile_linking If enabled, pid profile_index will follow mixer_profile index. Set to OFF(default) if you want to handle PID profile by your self. Recommend to set to ON on all mixer_profiles to let the mixer_profile handle the PID profile switching on a VTOL or mixed platform type setup. Default: FALSE
mixer_switch_trans_timer If switch another mixer_profile is scheduled by mixer_automated_switch or mixer_automated_switch. Activate Mixertransion motor/servo mixing for this many decisecond(0.1s) before the actual mixer_profile switch. Values: 0 - 200 Default: 0
motorstop_on_low If enabled, motor will stop when throttle is low on this mixer_profile Default: FALSE
nav_cruise_yaw_rate Max YAW rate when NAV COURSE HOLD/CRUISE mode is enabled. Set to 0 to disable on fixed wing (Note: On multirotor setting to 0 will disable Course Hold/Cruise mode completely) [dps] Values: 0 - 120 Default: 20
nav_landing_bump_detection Allows immediate landing detection based on G bump at touchdown when set to ON. Requires a barometer and currently only works for multirotors. Default: FALSE
nav_mc_althold_throttle If set to STICK the FC remembers the throttle stick position when enabling ALTHOLD and treats it as the neutral midpoint for holding altitude. If set to MID_STICK or HOVER the neutral midpoint is set to the mid stick position or the hover throttle position respectively. Default: STICK
nav_rth_linear_descent_start_distance The distance [m] away from home to start the linear descent. 0 = immediately (original linear descent behaviour) Values: 0 - 10000 Default: 0
nav_rth_use_linear_descent If enabled, the aircraft will gradually descent to the nav_rth_home_altitude en route. The distance from home to start the descent can be set with nav_rth_linear_descent_start_distance. Default: FALSE
osd_arm_screen_display_time Amount of time to display the arm screen [ms] Values: 1000 - 5000 Default: 1500
osd_inav_to_pilot_logo_spacing The space between the INAV and pilot logos, if osd_use_pilot_logo is ON. This number may be adjusted so that it fits the odd/even col width displays. For example, if using an odd column width display, such as Walksnail, and this is set to 4. 1 will be added so that the logos are equally spaced from the centre of the screen. Values: 0 - 20 Default: 8
osd_joystick_down PWM value for DOWN key Values: 0 - 100 Default: 0
osd_joystick_enabled Enable OSD Joystick emulation Default: FALSE
osd_joystick_enter PWM value for ENTER key Values: 0 - 100 Default: 75
osd_joystick_left PWM value for LEFT key Values: 0 - 100 Default: 63
osd_joystick_right PWM value for RIGHT key Values: 0 - 100 Default: 28
osd_joystick_up PWM value for UP key Values: 0 - 100 Default: 48
osd_mah_precision Number of digits used for mAh precision. Currently used by mAh Used and Battery Remaining Capacity Values: 4 - 6 Default: 4
osd_use_pilot_logo Use custom pilot logo with/instead of the INAV logo. The pilot logo must be characters 473 to 511 Default: FALSE
pid_iterm_limit_percent Limits max/min I-term value in stabilization PID controller. It solves the problem of servo saturation before take-off/throwing the airplane into the air. Or multirotors with low authority. By default, error accumulated in I-term can not exceed 33% of total pid throw (around 165us on deafult pidsum_limit of pitch/roll). Set 0 to disable completely. Values: 0 - 200 Default: 33
tpa_on_yaw Throttle PID attenuation also reduces influence on YAW for multi-rotor, Should be set to ON for tilting rotors. Default: FALSE

Removed Items

Name Description
dterm_lpf2_hz
dterm_lpf2_type
frsky_coordinates_format
frsky_default_latitude
frsky_default_longitude
frsky_unit
frsky_vfas_precision
fw_iterm_throw_limit
moron_threshold
nav_fw_cruise_yaw_rate
nav_use_midthr_for_althold
osd_mah_used_precision
output_mode

TL;DR

The list of most important changes is also available in a video form: https://youtu.be/8Q8t_KwlSAQ

Changelist

The full list of changes is available here The full list of INAV Configurator changes is available here

What's Changed from INAV 6.1.1

What's Changed

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/6.1.1...7.0.0

7.0.0-RC3

5 months ago

INAV 7 Ferocious Falcon

Hello and welcome to INAV 7 "Ferocious Falcon"

Please carefully read all of this document for the best possible experience and safety.

Contact other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Important Notes

INAV 7 is the last INAV official release available for F411 based flight controllers. The next milestone, INAV 8 will not be available for F411 boards.

The GPS NMEA protocol is no longer supported. All pilots are required to switch to UBLOX protocol. All modern GPS modules (even as old as from 2015 and earlier) support UBLOX protocol and there is not a single good reason to stick to NMEA nowadays

The FrSky D-series telemetry support has been removed. This applies to legacy D4R receivers and some 3rd party whoop boards

Make sure to remove props and check your motor and servo outputs before powering your upgraded flight controller with a battery for the first time. The changes to enable flexible motor and servo allocation may change what outputs your configuration uses by default.

Upgrading from a previous release

Upgrading from INAV 6 and 6.1

  1. Download and install the new INAV Configurator 7
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 7 using the Full Erase option in the configurator.
  4. In case of Analog FPV, upload your OSD font of choice from the OSD tab.
  5. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  6. There are many new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  7. You should be ready, explore new 7.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Major changes

Flexible motor and servo output allocation

INAV now was a function that allows to flexibly assign functions to PWM outputs directly from INAV Configurator. Specific function AUTO, MOTORS or SERVOS can be assigned to each Timer Group. Then, all outputs from this group will perform this function. Thanks to this, it's possible to use servos and motors in ways that previously required building a custom targets.

INAV output assignment

Bear in mind:

  • In some rare cases, output assignment might be different than in INAV 6. This makes it even more important to remove your props and double check your outputs before you power your flight controller with batteries for the first time after applying your old settings or enabling outputs.
  • It is not possible to assign function to individual outputs. It's a hardware, not software limitation.

Mixer profiles and VTOL support

This has been a frequent request since PNP VTOL models started becoming more common.

Read more in Mixer Profile INAV docs and VTOL INAV docs

Ez Tune

The Ez Tune is a simplified tuning framework similar to Betalight's Simplified Slider Tuning. Instead of setting each PID controller gain, rate, and filter setting separately, Pilot is presented with 8 sliders for:

  • Axis ratio
  • Main filter frequency
  • Response
  • Damping
  • Stability
  • Aggressiveness
  • Rate
  • Expo

INAV Ez Tune

Ez Tune settings are not compatible with Betaflight Slider Tuning setting and cannot be migrated directly.

Read the description in Configurator's Ez Tune tab on what each setting does and how it should be used.

More on the topic of Ez Tune can be found here

Timer DMA Burst

INAV 7 adds the DMA Burst mode to selected target as ultimately fixes the problem of DSHOT protocol not working on some boards. Pilots do not have to take any actions, DSHOT is just available on previously affected flight controllers. This applies to:

  • Matek F405 TE
  • SpeedyBee F405 V3

JETI EXBUS fixed

The JETI EXBUS protocol should now not hang the flight controller during operation. The issue was originally fixed in https://github.com/betaflight/betaflight/pull/13130 . Thank you @SteveCEvans and @klutvott123

Multirotor Cruise Mode

The Cruise Mode for Multirotors allows pilots to let go the radio sticks while UAV flies on a predefined course with predefined speed. Just like with regular PosHold, Throttle stick sets the altitude and course, while the pitch stick is used to set the horizontal speed. When released INAV will hold set speed, altitude, and course. More information available in here https://youtu.be/4pgDxexuSnU

NMEA Protocol no longer available

As mentioned in the Important Notes section, INAV 7 no longer supports the GPS NMEA protocol. All modern GPS module support one of the UBLOX protocols and as a result pilots must switch to either UBLOX or UBLOX7 protocol.

GPS Improvements

A number of improvements have been made to GPS support in INAV 7.

It is now possible to select multiple GPS constellations, and not only Galileo. If your GPS modules does not support a particular combination, it will fallback to no extra constellations.

M10 GPS units will now default to 10Hz, like M8 units and a new cli setting has been added to allow overriding the update rate of your UBLOX7 GPS (gps_ublox_nav_hz). This should allow you to fall back to 5Hz or bump it up to the limits of what is supported by your GPS module.

INAV GPS Improvements

MSP VTX support

INAV now support MSP VTX when using MSP DisplayPort OSD.

Now it is possible to change VTX power levels and channels via INAV's OSD menu or ELRS backpack without connecting the SmartAudio wire on HD-Zero VTXs.

If you MSP DisplayPort OSD is working, no extra configuration is needed.

Linear Descent RTH mode changed

AT_LEAST_LINEAR_DESCENT is no longer a method for RTH. It has been replaced with a more flexible linear descent option that will work with any RTH method. If previously using AT_LEAST_LINEAR_DESCENT, you should now just use AT_LEAST as the RTH type. Linear Descent is now a separate option that can be used with any other RTH method. To make this possible, the target altitude of the descent is now the nav_rth_home_altitude. In some cases, if flying below the home position, this will work as a linear ascent.

You can also decide when the linear descent will start. Set the nav_rth_linear_descent_start_distance parameter to the distance (metres) from the home point, where you want to start descending. Set to 0, the default setting; the descent will start immediately, as with the pre-7.0 implementation.

These options are available in Configurator.

See the Navigation Mode: Return to Home wiki for more details.

Pilot Logos

You can now have custom pilot logos on your OSD and arming screen (HD Only). You will need to create a custom font with your logos to show them on screen. The OSD logo is a 3x1 character symbol. This can be used with both analogue and HD. The arming screen logo is a 10x4 character image, and only works with HD systems.

More details are available in the OSD Document.

Other changes

  • The AUTOLEVEL mode is renamed to AUTO LEVEL TRIM. The functionality remains the same.
  • The osd_mah_used_precision parameter has been renamed osd_mah_precision.
  • 24 channels available for Jeti systems (not available with F411 or F722 flight controllers).
  • Virtual pitot is enabled by default.

Other removed functions

  • FrSky D-series telemetry
  • output_mode setting that allows to reassign all PWM outputs to either MOTORS or SERVOS

New targets

  • SDmodel H7V1
  • Matek H743HD
  • SpeedyBee F405 V4
  • SpeedeBee F405 Mini
  • SpeedyBee F7 Mini V2
  • GEPRCF405
  • GEPRCF722
  • NEUTRONRC F435 Mini AIO

CLI

Changed settings

Name Description
gps_provider Removed: NMEA
gps_sbas_mode New: SPAN
nav_rth_alt_mode Removed: AT_LEAST_LINEAR_DESCENT
pitot_hardware New: DLVR-L10D

New Items

Name Description
ez_aggressiveness EzTune aggressiveness Values: 0 - 200 Default: 100
ez_axis_ratio EzTune axis ratio Values: 25 - 175 Default: 110
ez_damping EzTune damping Values: 0 - 200 Default: 100
ez_enabled Enables EzTune feature Default: FALSE
ez_expo EzTune expo Values: 0 - 200 Default: 100
ez_filter_hz EzTune filter cutoff frequency Values: 10 - 300 Default: 110
ez_rate EzTune rate Values: 0 - 200 Default: 100
ez_response EzTune response Values: 0 - 200 Default: 100
ez_stability EzTune stability Values: 0 - 200 Default: 100
gps_auto_baud_max_supported Max baudrate supported by GPS unit. This is used during autobaud. M8 supports up to 460400, M10 supports up to 921600 and 230400 is the value used before INAV 7.0 Default: 230400
gps_ublox_nav_hz Navigation update rate for UBLOX7 receivers. Some receivers may limit the maximum number of satellites tracked when set to a higher rate or even stop sending navigation updates if the value is too high. Some M10 devices can do up to 25Hz. 10 is a safe value for M8 and newer. Values: 5 - 200 Default: 10
gps_ublox_use_beidou Enable use of Beidou satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps hardware support [OFF/ON]. Default: FALSE
gps_ublox_use_glonass Enable use of Glonass satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps haardware support [OFF/ON]. Default: FALSE
led_pin_pwm_mode PWM mode of LED pin. Values: SHARED_LOW, SHARED_HIGH, LOW, HIGH. Default: SHARED_LOW
mixer_automated_switch If set to on, This mixer_profile will try to switch to another mixer_profile when 1.RTH heading home is requested and distance to home is lager than 3*nav_fw_loiter_radius on mixer_profile is a MULTIROTOR or TRICOPTER platform_type. 2. RTH landing is requested on this mixer_profile is a AIRPLANE platform_type Default: FALSE
mixer_pid_profile_linking If enabled, pid profile_index will follow mixer_profile index. Set to OFF(default) if you want to handle PID profile by your self. Recommend to set to ON on all mixer_profiles to let the mixer_profile handle the PID profile switching on a VTOL or mixed platform type setup. Default: FALSE
mixer_switch_trans_timer If switch another mixer_profile is scheduled by mixer_automated_switch or mixer_automated_switch. Activate Mixertransion motor/servo mixing for this many decisecond(0.1s) before the actual mixer_profile switch. Values: 0 - 200 Default: 0
motorstop_on_low If enabled, motor will stop when throttle is low on this mixer_profile Default: FALSE
nav_cruise_yaw_rate Max YAW rate when NAV COURSE HOLD/CRUISE mode is enabled. Set to 0 to disable on fixed wing (Note: On multirotor setting to 0 will disable Course Hold/Cruise mode completely) [dps] Values: 0 - 120 Default: 20
nav_landing_bump_detection Allows immediate landing detection based on G bump at touchdown when set to ON. Requires a barometer and currently only works for multirotors. Default: FALSE
nav_mc_althold_throttle If set to STICK the FC remembers the throttle stick position when enabling ALTHOLD and treats it as the neutral midpoint for holding altitude. If set to MID_STICK or HOVER the neutral midpoint is set to the mid stick position or the hover throttle position respectively. Default: STICK
nav_rth_linear_descent_start_distance The distance [m] away from home to start the linear descent. 0 = immediately (original linear descent behaviour) Values: 0 - 10000 Default: 0
nav_rth_use_linear_descent If enabled, the aircraft will gradually descent to the nav_rth_home_altitude en route. The distance from home to start the descent can be set with nav_rth_linear_descent_start_distance. Default: FALSE
osd_arm_screen_display_time Amount of time to display the arm screen [ms] Values: 1000 - 5000 Default: 1500
osd_inav_to_pilot_logo_spacing The space between the INAV and pilot logos, if osd_use_pilot_logo is ON. This number may be adjusted so that it fits the odd/even col width displays. For example, if using an odd column width display, such as Walksnail, and this is set to 4. 1 will be added so that the logos are equally spaced from the centre of the screen. Values: 0 - 20 Default: 8
osd_joystick_down PWM value for DOWN key Values: 0 - 100 Default: 0
osd_joystick_enabled Enable OSD Joystick emulation Default: FALSE
osd_joystick_enter PWM value for ENTER key Values: 0 - 100 Default: 75
osd_joystick_left PWM value for LEFT key Values: 0 - 100 Default: 63
osd_joystick_right PWM value for RIGHT key Values: 0 - 100 Default: 28
osd_joystick_up PWM value for UP key Values: 0 - 100 Default: 48
osd_mah_precision Number of digits used for mAh precision. Currently used by mAh Used and Battery Remaining Capacity Values: 4 - 6 Default: 4
osd_use_pilot_logo Use custom pilot logo with/instead of the INAV logo. The pilot logo must be characters 473 to 511 Default: FALSE
pid_iterm_limit_percent Limits max/min I-term value in stabilization PID controller. It solves the problem of servo saturation before take-off/throwing the airplane into the air. Or multirotors with low authority. By default, error accumulated in I-term can not exceed 33% of total pid throw (around 165us on deafult pidsum_limit of pitch/roll). Set 0 to disable completely. Values: 0 - 200 Default: 33
tpa_on_yaw Throttle PID attenuation also reduces influence on YAW for multi-rotor, Should be set to ON for tilting rotors. Default: FALSE

Removed Items

Name Description
dterm_lpf2_hz
dterm_lpf2_type
frsky_coordinates_format
frsky_default_latitude
frsky_default_longitude
frsky_unit
frsky_vfas_precision
fw_iterm_throw_limit
moron_threshold
nav_fw_cruise_yaw_rate
nav_use_midthr_for_althold
osd_mah_used_precision
output_mode

Changelist

The full list of changes is available here The full list of INAV Configurator changes is available here

What's Changed from INAV 6.1.1

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/6.1.1...7.0.0-RC3 Changelog: https://github.com/iNavFlight/inav/compare/7.0.0-RC2...7.0.0-RC3

7.0.0-RC2

6 months ago

INAV 7 Ferocious Falcon

Hello and welcome to INAV 7 "Ferocious Falcon"

Please carefully read all of this document for the best possible experience and safety.

Contact other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Important Notes

INAV 7 is the last INAV official release available for F411 based flight controllers. The next milestone, INAV 8 will not be available for F411 boards.

The GPS NMEA protocol is no longer supported. All pilots are required to switch to UBLOX protocol. All modern GPS modules (even as old as from 2015 and earlier) support UBLOX protocol and there is not a single good reason to stick to NMEA nowadays

The FrSky D-series telemetry support has been removed. This applies to legacy D4R receivers and some 3rd party whoop boards

Make sure to remove props and check your motor and servo outputs before powering your upgraded flight controller with a battery for the first time. The changes to enable flexible motor and servo allocation may change what outputs your configuration uses by default.

Upgrading from a previous release

Upgrading from INAV 6 and 6.1

  1. Download and install the new INAV Configurator 7
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 7 using the Full Erase option in the configurator.
  4. In case of Analog FPV, upload your OSD font of choice from the OSD tab.
  5. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  6. There are many new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  7. You should be ready, explore new 7.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Major changes

Flexible motor and servo output allocation

INAV now was a function that allows to flexibly assign functions to PWM outputs directly from INAV Configurator. Specific function AUTO, MOTORS or SERVOS can be assigned to each Timer Group. Then, all outputs from this group will perform this function. Thanks to this, it's possible to use servos and motors in ways that previously required building a custom targets.

INAV output assignment

Bear in mind:

  • In some rare cases, output assignment might be different than in INAV 6. This makes it even more important to remove your props and double check your outputs before you power your flight controller with batteries for the first time after applying your old settings or enabling outputs.
  • It is not possible to assign function to individual outputs. It's a hardware, not software limitation.

Mixer profiles and VTOL support

This has been a frequent request since PNP VTOL models started becoming more common.

Read more in Mixer Profile INAV docs and VTOL INAV docs

Ez Tune

The Ez Tune is a simplified tuning framework similar to Betalight's Simplified Slider Tuning. Instead of setting each PID controller gain, rate, and filter setting separately, Pilot is presented with 8 sliders for:

  • Axis ratio
  • Main filter frequency
  • Response
  • Damping
  • Stability
  • Aggressiveness
  • Rate
  • Expo

INAV Ez Tune

Ez Tune settings are not compatible with Betaflight Slider Tuning setting and cannot be migrated directly.

Read the description in Configurator's Ez Tune tab on what each setting does and how it should be used.

More on the topic of Ez Tune can be found here

Timer DMA Burst

INAV 7 adds the DMA Burst mode to selected target as ultimately fixes the problem of DSHOT protocol not working on some boards. Pilots do not have to take any actions, DSHOT is just available on previously affected flight controllers. This applies to:

  • Matek F405 TE
  • SpeedyBee F405 V3

JETI EXBUS fixed

The JETI EXBUS protocol should now not hang the flight controller during operation. The issue was originally fixed in https://github.com/betaflight/betaflight/pull/13130 . Thank you @SteveCEvans and @klutvott123

Multirotor Cruise Mode

The Cruise Mode for Multirotors allows pilots to let go the radio sticks while UAV flies on a predefined course with predefined speed. Just like with regular PosHold, Throttle stick sets the altitude and course, while the pitch stick is used to set the horizontal speed. When released INAV will hold set speed, altitude, and course. More information available in here https://youtu.be/4pgDxexuSnU

NMEA Protocol no longer available

As mentioned in the Important Notes section, INAV 7 no longer supports the GPS NMEA protocol. All modern GPS module support one of the UBLOX protocols and as a result pilots must switch to either UBLOX or UBLOX7 protocol.

GPS Improvements

A number of improvements have been made to GPS support in INAV 7.

It is now possible to select multiple GPS constellations, and not only Galileo. If your GPS modules does not support a particular combination, it will fallback to no extra constellations.

M10 GPS units will now default to 10Hz, like M8 units and a new cli setting has been added to allow overriding the update rate of your UBLOX7 GPS (gps_ublox_nav_hz). This should allow you to fall back to 5Hz or bump it up to the limits of what is supported by your GPS module.

INAV GPS Improvements

MSP VTX support

INAV now support MSP VTX when using MSP DisplayPort OSD.

Now it is possible to change VTX power levels and channels via INAV's OSD menu or ELRS backpack without connecting the SmartAudio wire on HD-Zero VTXs.

If you MSP DisplayPort OSD is working, no extra configuration is needed.

Linear Descent RTH mode changed

AT_LEAST_LINEAR_DESCENT is no longer a method for RTH. It has been replaced with a more flexible linear descent option that will work with any RTH method. If previously using AT_LEAST_LINEAR_DESCENT, you should now just use AT_LEAST as the RTH type. Linear Descent is now a separate option that can be used with any other RTH method. To make this possible, the target altitude of the descent is now the nav_rth_home_altitude. In some cases, if flying below the home position, this will work as a linear ascent.

You can also decide when the linear descent will start. Set the nav_rth_linear_descent_start_distance parameter to the distance (metres) from the home point, where you want to start descending. Set to 0, the default setting; the descent will start immediately, as with the pre-7.0 implementation.

These options are available in Configurator.

See the Navigation Mode: Return to Home wiki for more details.

Pilot Logos

You can now have custom pilot logos on your OSD and arming screen (HD Only). You will need to create a custom font with your logos to show them on screen. The OSD logo is a 3x1 character symbol. This can be used with both analogue and HD. The arming screen logo is a 10x4 character image, and only works with HD systems.

More details are available in the OSD Document.

Other changes

  • The AUTOLEVEL mode is renamed to AUTO LEVEL TRIM. The functionality remains the same.
  • The osd_mah_used_precision parameter has been renamed osd_mah_precision.
  • 24 channels available for Jeti systems (not available with F411 or F722 flight controllers).
  • Virtual pitot is enabled by default.

Other removed functions

  • FrSky D-series telemetry
  • output_mode setting that allows to reassign all PWM outputs to either MOTORS or SERVOS

New targets

  • SDmodel H7V1
  • Matek H743HD
  • SpeedyBee F405 V4
  • SpeedeBee F405 Mini
  • SpeedyBee F7 Mini V2
  • GEPRCF405
  • GEPRCF722
  • NEUTRONRC F435 Mini AIO

CLI

Changed settings

Name Description
gps_provider Removed: NMEA
gps_sbas_mode New: SPAN
nav_rth_alt_mode Removed: AT_LEAST_LINEAR_DESCENT
pitot_hardware New: DLVR-L10D

New Items

Name Description
ez_aggressiveness EzTune aggressiveness Values: 0 - 200 Default: 100
ez_axis_ratio EzTune axis ratio Values: 25 - 175 Default: 110
ez_damping EzTune damping Values: 0 - 200 Default: 100
ez_enabled Enables EzTune feature Default: FALSE
ez_expo EzTune expo Values: 0 - 200 Default: 100
ez_filter_hz EzTune filter cutoff frequency Values: 10 - 300 Default: 110
ez_rate EzTune rate Values: 0 - 200 Default: 100
ez_response EzTune response Values: 0 - 200 Default: 100
ez_stability EzTune stability Values: 0 - 200 Default: 100
gps_auto_baud_max_supported Max baudrate supported by GPS unit. This is used during autobaud. M8 supports up to 460400, M10 supports up to 921600 and 230400 is the value used before INAV 7.0 Default: 230400
gps_ublox_nav_hz Navigation update rate for UBLOX7 receivers. Some receivers may limit the maximum number of satellites tracked when set to a higher rate or even stop sending navigation updates if the value is too high. Some M10 devices can do up to 25Hz. 10 is a safe value for M8 and newer. Values: 5 - 200 Default: 10
gps_ublox_use_beidou Enable use of Beidou satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps hardware support [OFF/ON]. Default: FALSE
gps_ublox_use_glonass Enable use of Glonass satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps haardware support [OFF/ON]. Default: FALSE
led_pin_pwm_mode PWM mode of LED pin. Values: SHARED_LOW, SHARED_HIGH, LOW, HIGH. Default: SHARED_LOW
mixer_automated_switch If set to on, This mixer_profile will try to switch to another mixer_profile when 1.RTH heading home is requested and distance to home is lager than 3*nav_fw_loiter_radius on mixer_profile is a MULTIROTOR or TRICOPTER platform_type. 2. RTH landing is requested on this mixer_profile is a AIRPLANE platform_type Default: FALSE
mixer_pid_profile_linking If enabled, pid profile_index will follow mixer_profile index. Set to OFF(default) if you want to handle PID profile by your self. Recommend to set to ON on all mixer_profiles to let the mixer_profile handle the PID profile switching on a VTOL or mixed platform type setup. Default: FALSE
mixer_switch_trans_timer If switch another mixer_profile is scheduled by mixer_automated_switch or mixer_automated_switch. Activate Mixertransion motor/servo mixing for this many decisecond(0.1s) before the actual mixer_profile switch. Values: 0 - 200 Default: 0
motorstop_on_low If enabled, motor will stop when throttle is low on this mixer_profile Default: FALSE
nav_cruise_yaw_rate Max YAW rate when NAV COURSE HOLD/CRUISE mode is enabled. Set to 0 to disable on fixed wing (Note: On multirotor setting to 0 will disable Course Hold/Cruise mode completely) [dps] Values: 0 - 120 Default: 20
nav_landing_bump_detection Allows immediate landing detection based on G bump at touchdown when set to ON. Requires a barometer and currently only works for multirotors. Default: FALSE
nav_mc_althold_throttle If set to STICK the FC remembers the throttle stick position when enabling ALTHOLD and treats it as the neutral midpoint for holding altitude. If set to MID_STICK or HOVER the neutral midpoint is set to the mid stick position or the hover throttle position respectively. Default: STICK
nav_rth_linear_descent_start_distance The distance [m] away from home to start the linear descent. 0 = immediately (original linear descent behaviour) Values: 0 - 10000 Default: 0
nav_rth_use_linear_descent If enabled, the aircraft will gradually descent to the nav_rth_home_altitude en route. The distance from home to start the descent can be set with nav_rth_linear_descent_start_distance. Default: FALSE
osd_arm_screen_display_time Amount of time to display the arm screen [ms] Values: 1000 - 5000 Default: 1500
osd_inav_to_pilot_logo_spacing The space between the INAV and pilot logos, if osd_use_pilot_logo is ON. This number may be adjusted so that it fits the odd/even col width displays. For example, if using an odd column width display, such as Walksnail, and this is set to 4. 1 will be added so that the logos are equally spaced from the centre of the screen. Values: 0 - 20 Default: 8
osd_joystick_down PWM value for DOWN key Values: 0 - 100 Default: 0
osd_joystick_enabled Enable OSD Joystick emulation Default: FALSE
osd_joystick_enter PWM value for ENTER key Values: 0 - 100 Default: 75
osd_joystick_left PWM value for LEFT key Values: 0 - 100 Default: 63
osd_joystick_right PWM value for RIGHT key Values: 0 - 100 Default: 28
osd_joystick_up PWM value for UP key Values: 0 - 100 Default: 48
osd_mah_precision Number of digits used for mAh precision. Currently used by mAh Used and Battery Remaining Capacity Values: 4 - 6 Default: 4
osd_use_pilot_logo Use custom pilot logo with/instead of the INAV logo. The pilot logo must be characters 473 to 511 Default: FALSE
pid_iterm_limit_percent Limits max/min I-term value in stabilization PID controller. It solves the problem of servo saturation before take-off/throwing the airplane into the air. Or multirotors with low authority. By default, error accumulated in I-term can not exceed 33% of total pid throw (around 165us on deafult pidsum_limit of pitch/roll). Set 0 to disable completely. Values: 0 - 200 Default: 33
tpa_on_yaw Throttle PID attenuation also reduces influence on YAW for multi-rotor, Should be set to ON for tilting rotors. Default: FALSE

Removed Items

Name Description
dterm_lpf2_hz
dterm_lpf2_type
frsky_coordinates_format
frsky_default_latitude
frsky_default_longitude
frsky_unit
frsky_vfas_precision
fw_iterm_throw_limit
moron_threshold
nav_fw_cruise_yaw_rate
nav_use_midthr_for_althold
osd_mah_used_precision
output_mode

Changelist

The full list of changes is available here The full list of INAV Configurator changes is available here

What's Changed from INAV 6.1.1

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/6.1.1...7.0.0-RC2 Changelog: https://github.com/iNavFlight/inav/compare/7.0.0-RC1...7.0.0-RC2

7.0.0-RC1

6 months ago

INAV 7 Ferocious Falcon

Hello and welcome to INAV 7 "Ferocious Falcon"

Please carefully read all of this document for the best possible experience and safety.

Contact other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Important Notes

The GPS NMEA protocol is no longer supported. All pilots are required to switch to UBLOX protocol. All modern GPS modules (even as old as from 2015 and earlier) support UBLOX protocol and there is not a single good reason to stick to NMEA nowadays

The FrSky D-series telemetry support has been removed. This applies to legacy D4R receivers and some 3rd party whoop boards

Make sure to remove props and check your motor and servo outputs before powering your upgraded flight controller with a battery for the first time. The changes to enable flexible motor and servo allocation may change what outputs your configuration uses by default.

Upgrading from a previous release

Upgrading from INAV 6 and 6.1

  1. Download and install the new INAV Configurator 7
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 7 using the Full Erase option in the configurator.
  4. In case of Analog FPV, upload your OSD font of choice from the OSD tab.
  5. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  6. There are many new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  7. You should be ready, explore new 7.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Major changes

Flexible motor and servo output allocation

INAV now was a function that allows to flexibly assign functions to PWM outputs directly from INAV Configurator. Specific function AUTO, MOTORS or SERVOS can be assigned to each Timer Group. Then, all outputs from this group will perform this function. Thanks to this, it's possible to use servos and motors in ways that previously required building a custom targets.

INAV output assignment

Bear in mind:

  • In some rare cases, output assignment might be different than in INAV 6. This makes it even more important to remove your props and double check your outputs before you power your flight controller with batteries for the first time after applying your old settings or enabling outputs.
  • It is not possible to assign function to individual outputs. It's a hardware, not software limitation.

Mixer profiles and VTOL support

This has been a frequent request since PNP VTOL models started becoming more common.

Read more in Mixer Profile INAV docs and VTOL INAV docs

Ez Tune

The Ez Tune is a simplified tuning framework similar to Betalight's Simplified Slider Tuning. Instead of setting each PID controller gain, rate, and filter setting separately, Pilot is presented with 8 sliders for:

  • Axis ratio
  • Main filter frequency
  • Response
  • Damping
  • Stability
  • Aggressiveness
  • Rate
  • Expo

INAV Ez Tune

Ez Tune settings are not compatible with Betaflight Slider Tuning setting and cannot be migrated directly.

Read the description in Configurator's Ez Tune tab on what each setting does and how it should be used.

More on the topic of Ez Tune can be found here

Timer DMA Burst

INAV 7 adds the DMA Burst mode to selected target as ultimately fixes the problem of DSHOT protocol not working on some boards. Pilots do not have to take any actions, DSHOT is just available on previously affected flight controllers. This applies to:

  • Matek F405 TE
  • SpeedyBee F405 V3

JETI EXBUS fixed

The JETI EXBUS protocol should now not hang the flight controller during operation. The issue was originally fixed in https://github.com/betaflight/betaflight/pull/13130 . Thank you @SteveCEvans and @klutvott123

Multirotor Cruise Mode

The Cruise Mode for Multirotors allows pilots to let go the radio sticks while UAV flies on a predefined course with predefined speed. Just like with regular PosHold, Throttle stick sets the altitude and course, while the pitch stick is used to set the horizontal speed. When released INAV will hold set speed, altitude, and course. More information available in here https://youtu.be/4pgDxexuSnU

NMEA Protocol no longer available

As mentioned in the Important Notes section, INAV 7 no longer supports the GPS NMEA protocol. All modern GPS module support one of the UBLOX protocols and as a result pilots must switch to either UBLOX or UBLOX7 protocol.

GPS Improvements

A number of improvements have been made to GPS support in INAV 7.

It is now possible to select multiple GPS constellations, and not only Galileo. If your GPS modules does not support a particular combination, it will fallback to no extra constellations.

M10 GPS units will now default to 10Hz, like M8 units and a new cli setting has been added to allow overriding the update rate of your UBLOX7 GPS (gps_ublox_nav_hz). This should allow you to fall back to 5Hz or bump it up to the limits of what is supported by your GPS module.

INAV GPS Improvements

MSP VTX support

INAV now support MSP VTX when using MSP DisplayPort OSD.

Now it is possible to change VTX power levels and channels via INAV's OSD menu or ELRS backpack without connecting the SmartAudio wire on HD-Zero VTXs.

If you MSP DisplayPort OSD is working, no extra configuration is needed.

Linear Descent RTH mode changed

AT_LEAST_LINEAR_DESCENT is no longer a method for RTH. It has been replaced with a more flexible linear descent option that will work with any RTH method. If previously using AT_LEAST_LINEAR_DESCENT, you should now just use AT_LEAST as the RTH type. Linear Descent is now a separate option that can be used with any other RTH method. To make this possible, the target altitude of the descent is now the nav_rth_home_altitude. In some cases, if flying below the home position, this will work as a linear ascent.

You can also decide when the linear descent will start. Set the nav_rth_linear_descent_start_distance parameter to the distance (metres) from the home point, where you want to start descending. Set to 0, the default setting; the descent will start immediately, as with the pre-7.0 implementation.

These options are available in Configurator.

See the Navigation Mode: Return to Home wiki for more details.

Pilot Logos

You can now have custom pilot logos on your OSD and arming screen (HD Only). You will need to create a custom font with your logos to show them on screen. The OSD logo is a 3x1 character symbol. This can be used with both analogue and HD. The arming screen logo is a 10x4 character image, and only works with HD systems.

More details are available in the OSD Document.

Other changes

  • The AUTOLEVEL mode is renamed to AUTO LEVEL TRIM. The functionality remains the same.
  • The osd_mah_used_precision parameter has been renamed osd_mah_precision.
  • 24 channels available for Jeti systems (not available with F411 or F722 flight controllers).
  • Virtual pitot is enabled by default.

Other removed functions

  • FrSky D-series telemetry
  • output_mode setting that allows to reassign all PWM outputs to either MOTORS or SERVOS

New targets

  • SDmodel H7V1
  • Matek H743HD
  • SpeedyBee F405 V4
  • SpeedeBee F405 Mini
  • SpeedyBee F7 Mini V2
  • GEPRCF405
  • GEPRCF722
  • NEUTRONRC F435 Mini AIO

CLI

Changed settings

Name Description
gps_provider Removed: NMEA
gps_sbas_mode New: SPAN
nav_rth_alt_mode Removed: AT_LEAST_LINEAR_DESCENT
pitot_hardware New: DLVR-L10D

New Items

Name Description
ez_aggressiveness EzTune aggressiveness Values: 0 - 200 Default: 100
ez_axis_ratio EzTune axis ratio Values: 25 - 175 Default: 110
ez_damping EzTune damping Values: 0 - 200 Default: 100
ez_enabled Enables EzTune feature Default: FALSE
ez_expo EzTune expo Values: 0 - 200 Default: 100
ez_filter_hz EzTune filter cutoff frequency Values: 10 - 300 Default: 110
ez_rate EzTune rate Values: 0 - 200 Default: 100
ez_response EzTune response Values: 0 - 200 Default: 100
ez_stability EzTune stability Values: 0 - 200 Default: 100
gps_auto_baud_max_supported Max baudrate supported by GPS unit. This is used during autobaud. M8 supports up to 460400, M10 supports up to 921600 and 230400 is the value used before INAV 7.0 Default: 230400
gps_ublox_nav_hz Navigation update rate for UBLOX7 receivers. Some receivers may limit the maximum number of satellites tracked when set to a higher rate or even stop sending navigation updates if the value is too high. Some M10 devices can do up to 25Hz. 10 is a safe value for M8 and newer. Values: 5 - 200 Default: 10
gps_ublox_use_beidou Enable use of Beidou satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps hardware support [OFF/ON]. Default: FALSE
gps_ublox_use_glonass Enable use of Glonass satellites. This is at the expense of other regional constellations, so benefit may also be regional. Requires gps haardware support [OFF/ON]. Default: FALSE
led_pin_pwm_mode PWM mode of LED pin. Values: SHARED_LOW, SHARED_HIGH, LOW, HIGH. Default: SHARED_LOW
mixer_automated_switch If set to on, This mixer_profile will try to switch to another mixer_profile when 1.RTH heading home is requested and distance to home is lager than 3*nav_fw_loiter_radius on mixer_profile is a MULTIROTOR or TRICOPTER platform_type. 2. RTH landing is requested on this mixer_profile is a AIRPLANE platform_type Default: FALSE
mixer_pid_profile_linking If enabled, pid profile_index will follow mixer_profile index. Set to OFF(default) if you want to handle PID profile by your self. Recommend to set to ON on all mixer_profiles to let the mixer_profile handle the PID profile switching on a VTOL or mixed platform type setup. Default: FALSE
mixer_switch_trans_timer If switch another mixer_profile is scheduled by mixer_automated_switch or mixer_automated_switch. Activate Mixertransion motor/servo mixing for this many decisecond(0.1s) before the actual mixer_profile switch. Values: 0 - 200 Default: 0
motorstop_on_low If enabled, motor will stop when throttle is low on this mixer_profile Default: FALSE
nav_cruise_yaw_rate Max YAW rate when NAV COURSE HOLD/CRUISE mode is enabled. Set to 0 to disable on fixed wing (Note: On multirotor setting to 0 will disable Course Hold/Cruise mode completely) [dps] Values: 0 - 120 Default: 20
nav_landing_bump_detection Allows immediate landing detection based on G bump at touchdown when set to ON. Requires a barometer and currently only works for multirotors. Default: FALSE
nav_mc_althold_throttle If set to STICK the FC remembers the throttle stick position when enabling ALTHOLD and treats it as the neutral midpoint for holding altitude. If set to MID_STICK or HOVER the neutral midpoint is set to the mid stick position or the hover throttle position respectively. Default: STICK
nav_rth_linear_descent_start_distance The distance [m] away from home to start the linear descent. 0 = immediately (original linear descent behaviour) Values: 0 - 10000 Default: 0
nav_rth_use_linear_descent If enabled, the aircraft will gradually descent to the nav_rth_home_altitude en route. The distance from home to start the descent can be set with nav_rth_linear_descent_start_distance. Default: FALSE
osd_arm_screen_display_time Amount of time to display the arm screen [ms] Values: 1000 - 5000 Default: 1500
osd_inav_to_pilot_logo_spacing The space between the INAV and pilot logos, if osd_use_pilot_logo is ON. This number may be adjusted so that it fits the odd/even col width displays. For example, if using an odd column width display, such as Walksnail, and this is set to 4. 1 will be added so that the logos are equally spaced from the centre of the screen. Values: 0 - 20 Default: 8
osd_joystick_down PWM value for DOWN key Values: 0 - 100 Default: 0
osd_joystick_enabled Enable OSD Joystick emulation Default: FALSE
osd_joystick_enter PWM value for ENTER key Values: 0 - 100 Default: 75
osd_joystick_left PWM value for LEFT key Values: 0 - 100 Default: 63
osd_joystick_right PWM value for RIGHT key Values: 0 - 100 Default: 28
osd_joystick_up PWM value for UP key Values: 0 - 100 Default: 48
osd_mah_precision Number of digits used for mAh precision. Currently used by mAh Used and Battery Remaining Capacity Values: 4 - 6 Default: 4
osd_use_pilot_logo Use custom pilot logo with/instead of the INAV logo. The pilot logo must be characters 473 to 511 Default: FALSE
pid_iterm_limit_percent Limits max/min I-term value in stabilization PID controller. It solves the problem of servo saturation before take-off/throwing the airplane into the air. Or multirotors with low authority. By default, error accumulated in I-term can not exceed 33% of total pid throw (around 165us on deafult pidsum_limit of pitch/roll). Set 0 to disable completely. Values: 0 - 200 Default: 33
tpa_on_yaw Throttle PID attenuation also reduces influence on YAW for multi-rotor, Should be set to ON for tilting rotors. Default: FALSE

Removed Items

Name Description
dterm_lpf2_hz
dterm_lpf2_type
frsky_coordinates_format
frsky_default_latitude
frsky_default_longitude
frsky_unit
frsky_vfas_precision
fw_iterm_throw_limit
moron_threshold
nav_fw_cruise_yaw_rate
nav_use_midthr_for_althold
osd_mah_used_precision
output_mode

Changelist

The full list of changes is available here The full list of INAV Configurator changes is available here

What's Changed from INAV 6.1.1

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/6.1.1...7.0.0-RC1

6.1.1

11 months ago

INAV 6 Horizon Hawk

Hello and welcome to INAV 6.1.1 "Horizon Hawk"

Please carefully read all of this document for the best possible experience and safety.

Get in touch with other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Tested and suggested hardware can be found here

Upgrading from a previous release

Upgrading from INAV 6

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 6 using the Full Erase option in the configurator.
  4. Restore the configuration from the diff file

Upgrading from INAV 5 and 5.1

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 6 using the Full Erase option in the configurator.
  4. Upload your OSD font of choice from the OSD tab.
  5. Run your INAV 5.x diff through this tool. It will update some of the changed CLI parameters (See these release notes). Please pay special attention to the ahrs_inertia_comp_method parameter, as this must be correct for your platform. See the release notes below.
  6. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  7. There are a large number of new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  8. You should be ready, explore new 6.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Important changes

"Dolphining" bug fix

This release fixes a "dolphining" bug that was affecting fixed wing airplanes in autonomous modes and causing airplanes not being able to precisely control altitude. INAV 6.1.1 addresses this issue and solved the problem.

New targets

  • FLYWOOF405PRO

Changelist

What's Changed

Full Changelog: https://github.com/iNavFlight/inav/compare/6.1.0...6.1.1

6.1.0

1 year ago

INAV 6 Horizon Hawk

Hello and welcome to INAV 6.1 "Horizon Hawk"

Please carefully read all of this document for the best possible experience and safety.

Get in touch with other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Tested and suggested hardware can be found here

Important Notes

  • The STM32 F3 code was removed from repository, it's no longer possible to compile F3 locally

Upgrading from a previous release

Upgrading from INAV 6

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 6 using the Full Erase option in the configurator.
  4. Restore the configuration from the diff file

Upgrading from INAV 5 and 5.1

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 6 using the Full Erase option in the configurator.
  4. Upload your OSD font of choice from the OSD tab.
  5. Run your INAV 5.x diff through this tool. It will update some of the changed CLI parameters (See these release notes). Please pay special attention to the ahrs_inertia_comp_method parameter, as this must be correct for your platform. See the release notes below.
  6. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  7. There are a large number of new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  8. You should be ready, explore new 6.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Important changes

H7 stability

INAV 6.1 fixes a bug that was causing the H7 MCU to stop receiving RX signal after EEPROM save operation was performed. This happened from CMS and from Configurator. INAV 6.1 fixes the issue and RX operation is no longer stopped after the save operation

Betaflight HD OSD compatibility mode

INAV 6.1 adds the BFHDCOMPAT OSD mode that is compatible with the Betaflight HD OSD layout.

New targets

  • HAKRCF722V2
  • HAKRCF405V2
  • SKYSTARSF722MINIHD
  • SkyStars AT32
  • SkyStars H743

CLI

Changed Items

Name Item
acc_hardware New: LSM6DXX
current_sensor New: FAKE
gps_provider New: FAKE
nav_extra_arming_safety Default: ALLOW_BYPASS
osd_video_system New: BFHDCOMPAT
rangefinder_hardware New: FAKE
receiver_type New: SIM (SITL)
serial_rx New: FBUS
voltage_sensor New: FAKE

Changelist

What's Changed

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/6.0.0...6.1.0

6.1.0-RC1

1 year ago

INAV 6 Horizon Hawk

Hello and welcome to INAV 6.1 "Horizon Hawk"

Please carefully read all of this document for the best possible experience and safety.

Get in touch with other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Tested and suggested hardware can be found here

Important Notes

  • The STM32 F3 code was removed from repository, it's no longer possible to compile F3 locally

Upgrading from a previous release

Upgrading from INAV 6

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 6 using the Full Erase option in the configurator.
  4. Restore the configuration from the diff file

Upgrading from INAV 5 and 5.1

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 6 using the Full Erase option in the configurator.
  4. Upload your OSD font of choice from the OSD tab.
  5. Run your INAV 5.x diff through this tool. It will update some of the changed CLI parameters (See these release notes). Please pay special attention to the ahrs_inertia_comp_method parameter, as this must be correct for your platform. See the release notes below.
  6. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  7. There are a large number of new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  8. You should be ready, explore new 6.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Important changes

H7 stability

INAV 6.1 fixes a bug that was causing the H7 MCU to stop receiving RX signal after EEPROM save operation was performed. This happened from CMS and from Configurator. INAV 6.1 fixes the issue and RX operation is no longer stopped after the save operation

Betaflight HD OSD compatibility mode

INAV 6.1 adds the BFHDCOMPAT OSD mode that is compatible with the Betaflight HD OSD layout.

New targets

  • HAKRCF722V2
  • HAKRCF405V2
  • SKYSTARSF722MINIHD
  • SkyStars AT32
  • SkyStars H743

CLI

Changed Items

Name Item
acc_hardware New: LSM6DXX
current_sensor New: FAKE
gps_provider New: FAKE
nav_extra_arming_safety Default: ALLOW_BYPASS
osd_video_system New: BFHDCOMPAT
rangefinder_hardware New: FAKE
receiver_type New: SIM (SITL)
serial_rx New: FBUS
voltage_sensor New: FAKE

Changelist

What's Changed

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/6.0.0...6.1.0-RC1

6.0.0

1 year ago

INAV 6 Horizon Hawk

Hello and welcome to INAV 6 "Horizon Hawk"

Please carefully read all of this document for the best possible experience and safety.

Get in touch with other pilots, share experiences, suggestions and ask for help on:

INAV Discord Server
INAV Official on Facebook

Tested and suggested hardware can be found here

Important Notes

  • The STM32 F3 code was removed from repository, it's no longer possible to compile F3 locally

Upgrading from a previous release

Upgrading from INAV 5 and 5.1

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Upgrade to INAV 6 using the Full Erase option in the configurator.
  4. Upload your OSD font of choice from the OSD tab.
  5. Run your INAV 5.x diff through this tool. It will update some of the changed CLI parameters (See these release notes). Please pay special attention to the ahrs_inertia_comp_method parameter, as this must be correct for your platform. See the release notes below.
  6. Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
  7. There are a large number of new, changed, and removed settings. Check carefully that the settings are correct and fix any unrecognized or out-of-range items from the saved configuration.
  8. You should be ready, explore new 6.0 features, and enjoy!

Upgrading from older versions

Please follow the instructions on this page.

Important changes

New AHRS (Attitude & Heading Reference System)


INAV 6.0 includes a complete rework of the AHRS for Attitude Estimation, to make sure INAV always knows its correct attitude relative to the ground. This should once and for all fix the issue, known as "Horizon Drift" and makes any navigation mode as well as self-levelling modes like ANGLE fully reliable and allows much more precise GPS-Navigation. This affects Fixed Wing as well as Multirotor.

The best results are given if the craft is equipped with GPS and in the case of Multirotor also with a compass. But also for pure LOS Craft that have no GPS on board, the AHI stability is noticeably improved in most situations. To work best with non-GPS Fixed Wings, the Reference Airspeed has to be set according the average cruise speed of the craft.


When Updating from INAV 5.1 or older

If you load a diff file from INAV 5.1 or older, it is safe to ignore errors related to imu_acc_ignore_rate, imu_acc_ignore_slope, imu_dcm_kp, imu_dcm_kp_map, or imu_dcm_ki_mag. These variables behave differently in 6.0 and have been renamed. You should use the default values of the new parameter first. Below are the new parameter defaults.

set ahrs_acc_ignore_rate = 15
set ahrs_acc_ignore_slope = 5
set ahrs_dcm_kp = 2000
set ahrs_dcm_ki = 50
set ahrs_dcm_kp_mag = 2000
set ahrs_dcm_ki_mag = 50

ahrs_inertia_comp_method

If you have used the Feature Preview release, your diff, you may have the parameter imu_inertia_comp_method. If not and you are coming from INAV 5.0 or 5.1, you may need to add the new parameter shown below. Firstly, if you have imu_inertia_comp_method in your diff, you can remove that line.

If you are using fixed wing, you should add this new parameter to the # master section of your diff:

set ahrs_inertia_comp_method = ADAPTIVE

For all other platforms, you do not need to add anything. The default value of VELNED is correct for non-fixed wing platforms.

For Fixed Wing Craft with no GPS: set fw_reference_airspeed = (set this in cm/s. Set this to airspeed at which PIDs were tuned. Usually should be set to cruise airspeed. Also used for coordinated turn calculation if airspeed sensor is not present.)

HUD Offset change

The operation of osd_horizon_offset has been reversed, to make it more intuitive. If you have a non-zero value for osd_horizon_offset it will need to be inverted. For example, osd_horizon_offset = 1 would become osd_horizon_offset = -1. Positive values move the HUD up, and negative values move it down. This is corrected with the CLI Update tool.

RTH Trackback

When triggered the craft returns along the trackback route until the end is reached at which point it reverts to normal RTH heading directly home. It doesn't perform the RTH climb phase but instead uses the track point altitude but with altitude never allowed below the altitude of the start point so it can climb but never descend below the start point.

OFF by default, adjust nav_rth_trackback_mode to enable. For details see #7988

Accelerometer calibration is optional

Accelerometer calibration is required only if any of the Accelerometer Based Flight Modes or Failsafe procedures is configured. For example, ACC calibration will be needed when Failsafe RTH is enabled, or any GPS assisted flight modes is configured. Acro only multirotor and fixed wings do not require calibration.

The off option has been removed from nav_extra_arming_safety. Instead, the allow_bypass can be used for with the same effect. To allow the bypass, yaw right and arm. The extra arming safety features will be disabled until the next power cycle of the battery. Please update your diff if you use this parameter; either manually, or using this tool.

Improved fixed wing waypoint course tracking

Attempts to improve fixed wing WP course tracking accuracy by adding a couple of options:

  1. Tracking accuracy option that forces craft toward the waypoint course line as quickly as possible and actively tracks the line thereafter. A single setting adjusts the strength of the tracking behaviour. Works for WP mode and RTH trackback. Option is disabled by default.

  2. Turn smoothing option for waypoint turns. Sets a loiter point within the turn such that the craft follows a loiter turn path that either passes through the waypoint or cuts the turn missing the waypoint (2 settings possible). Only works for WP mode. Option is disabled by default.

See #8234 for details

Support for Hardware In The Loop simulator in X-Plane 11

INAV flight controller can be used with X-Plane 11 flight simulator. Very useful for training, testing and debugging. Requires X-Plane 11 and HITL Plugin https://github.com/RomanLut/INAV-X-Plane-HITL

Waypoint multi-mission in flight mission change

Allows WP multi-missions to be changed in flight using new mission change mode. With mode active the required mission index can be selected by cycling through missions using the WP mode switch. Selected mission is loaded when mission change mode is switched off. Mission index can also be changed through addition of a new Mission Index adjustment function which should be useful for DJI users unable to use the normal OSD mission related fields. See #8354 for details

MSP DisplayPort fixes and updates

INAV has now support for various flavours of the MSP DisplayPort protocol used by HDZero, DJI Goggles 2, Walksnail Avatar or WTFOS. Based on the osd_video_system setting different canvas sizes and glyphs are used. Available options are:

  • AUTO - for analogue systems only
  • PAL
  • NTSC
  • HDZERO
  • DJIWTF
  • AVATAR
  • BF43COMPAT - keep the compatibility with Betaflight 4.3 implementation by lowering canvas size, lowering the number of OSD glyphs and matching to Betaflight character mapping. Required for DJI MSP DisplayPort with DJI O3 Air Unit

Enhance programming options for waypoint missions

NOTE: Please read this section if you are using the Programming Framework (Programming tab).

The programming framework surrounding waypoints has changed. This has caused a conflict in compatibility with previous versions of INAV. If you use anything in the programming tab. Please run your diff through this conversion tool, to keep your logic conditions working. Please feel free to check out the new waypoint related logical switch operands in the Programming Framework document.

Increase nav_wp_safe_distance maximum

nav_wp_safe_distance has been replaced with nav_wp_max_safe_distance. This setting uses metres, and used to define the maximum distance away that the first waypoint can be. Please update your diff if you use this parameter; either manually, or using this tool.

Stop allowing navigation modes to be active while arming

The ability to arm the craft while in a navigation mode has been removed. The only people who this will effect are those who use permanently enabled autolaunch. Pre-6.0 you could arm while in a navigation mode. However this is dangerous, as it is easy to not realise, arm, disable the launch, then have the motor go to the cruise throttle. You will still be able to use a navigation mode as the exit mode from a launch. You just need to use the correct procedure for initiating the launch:

  1. Be in a non-navigation mode
  2. Arm
  3. Select the flight mode that you want to use on launch exit
  4. Raise the throttle to the level you want on launch exit
  5. The motor will enter idle if idle throttle is used, or await being thrown
  6. Throw the plane in to the air, and autolaunch will trigger

Disarm on land by default

The disarm on landing flag is now set to ON by default. This means, after successful automated landing your aircraft should disarm and stop the motors automatically!

Automated landing manual activation

Allows an emergency landing to be triggered manually as required. Landing started or ended by rapid toggling of PosHold mode, at least 5 times at a minimum rate of 1Hz. Emergency landing position hold added which will work for all emergency landings regardless of cause so long as a valid position is available. Failsafe inhibited during manual emergency landing to allow landing to continue if Failsafe triggered whilst active.

Other changes

  • Gyro noise peaks are now logged into blackbox as separate fields, not debug options. Setting documentation
  • Raw gyro signal is now logged into blackbox as separate field, not debug options. Setting documentation
  • Adds auto smoothing of RC input based on RX refresh rate. Disabled by default, can be enabled with SET rc_filter_auto=ON
  • Wind Estimator is now giving proper results
  • 3D Matrix filter improves PID tuning on noisy Multirotors. See #8253
  • Strobe lights support. See #8536
  • Kakute H7 V2 Invert PINIO2 so VTX is ON by default See #8628

Other removed functions

  • MTK GPS protocol support
  • NAZA GPS protocol support
  • BNO055 Secondary IMU function
  • MPU6050 gyro support
  • SPI RX protocol support
  • JR XBUS RX protocol support
  • SUMH RX protocol support

New targets

  • Foxeer F722 V4
  • Foxeer F745 AIO V3
  • Kakute H7 V2
  • SpeedyBee F745 AIO
  • Zeez F7 V3
  • Diatone Mamba F722 WING
  • AocodaRC F4 V2
  • HakRC F722D
  • HakRC F411 AIO
  • HakRC F405 DJI
  • GEPRC F722 AIO
  • SpeedyBee F405 WING

CLI

Changed settings

Note: nav_extra_arming_safety The OFF option has been removed. ON and ALLOW_BYPASS are now the only valid options. ALLOW_BYPASS permits arming in "navigation unsafe" condition by temporally applying full right yaw when operating the arm switch.

Name Values
acc_hardware Removed: MPU6050
debug_modes New: POS_EST, Removed: GYRO, SBUS, FPORT, ERPM, RPM_FILTER, RPM_FREQ, DYNAMIC_FILTER, DYNAMIC_FILTER_FREQUENCY, IRLOCK, KALMAN_GAIN, PID_MEASUREMENT, SPM_CELLS, SPM_VS600, SPM_VARIO, IMU2, SMITH_PREDICTOR
gps_provider Removed: UNUSED, NAZA, MTK
mag_hardware Removed: GPSMAG
nav_extra_arming_safety Removed: OFF
osd_video_system New: HDZERO, DJIWTF, AVATAR, BF43COMPAT
receiver_type Removed: SPI
serial_rx Removed: SUMH, XB-B, XB-B-RJ01

New Items

Name Description
dynamic_gyro_notch_3d_q Q factor for 3D dynamic notches Values: 1 - 1000 Default: 200
dynamic_gyro_notch_mode Gyro dynamic notch type Default: 2D
failsafe_mission_delay Applies if failsafe occurs when a WP mission is in progress. Sets the time delay in seconds between failsafe occurring and the selected failsafe procedure activating. If set to -1 the failsafe procedure won't activate at all and the mission will continue until the end. Values: -1 - 600 Default: 0
imu_gps_yaw_windcomp Wind compensation in heading estimation from gps groundcourse(fixed wing only) Default: TRUE
imu_inertia_comp_method Inertia force compensation method when gps is avaliable, VELNED use the accleration from gps, TURNRATE calculates accleration by turnrate multiplied by speed, ADAPTIVE choose best result from two in each ahrs loop Default: VELNED
nav_auto_disarm_delay Delay before craft disarms when nav_disarm_on_landing is set (ms) Values: 100 - 10000 Default: 1000
nav_fw_launch_abort_deadband Launch abort stick deadband in [r/c points], applied after r/c deadband and expo. The Roll/Pitch stick needs to be deflected beyond this deadband to abort the launch. Values: 2 - 250 Default: 100
nav_fw_launch_manual_throttle Allows launch with manually controlled throttle. INAV only levels wings and controls climb pitch during launch. Throttle is controlled directly by throttle stick movement. IF USED WITHOUT A GPS LOCK plane must be launched immediately after throttle is increased to avoid issues with climb out stabilisation and the launch ending sooner than expected (launch end timer starts as soon as the throttle stick is raised). Default: FALSE
nav_fw_wp_tracking_accuracy Waypoint tracking accuracy forces the craft to quickly head toward and track along the waypoint course line as closely as possible. Settings 1 to 10 adjust the course tracking response. Higher values dampen the response reducing possible overshoot. A value of 5 is a good starting point. Set to 0 to disable. Values: 0 - 10 Default: 0
nav_fw_wp_tracking_max_angle Sets the maximum allowed alignment convergence angle to the waypoint course line when nav_fw_wp_tracking_accuracy is active [degrees]. Lower values result in smoother alignment with the course line but will take more distance until this is achieved. Values: 30 - 80 Default: 60
nav_fw_wp_turn_smoothing Smooths turns during WP missions by switching to a loiter turn at waypoints. When set to ON the craft will reach the waypoint during the turn. When set to ON-CUT the craft will turn inside the waypoint without actually reaching it (cuts the corner). Default: OFF
nav_land_detect_sensitivity Changes sensitivity of landing detection. Higher values increase speed of detection but also increase risk of false detection. Default value should work in most cases. Values: 1 - 15 Default: 5
nav_rth_trackback_distance Maximum distance allowed for RTH trackback. Normal RTH is executed once this distance is exceeded [m]. Values: 50 - 2000 Default: 500
nav_rth_trackback_mode Useage modes for RTH Trackback. OFF = disabled, ON = Normal and Failsafe RTH, FS = Failsafe RTH only. Default: OFF
nav_wp_max_safe_distance First waypoint in the mission should be closer than this value [m]. A value of 0 disables this check. Values: 0 - 1500 Default: 100
osd_ahi_pitch_interval Draws AHI at increments of the set pitch interval over the full pitch range. AHI line is drawn with ends offset when pitch first exceeds interval with offset increasing with increasing pitch. Offset direction changes between climb and dive. Set to 0 to disable (Not for pixel OSD) Values: 0 - 30 Default: 0
osd_msp_displayport_fullframe_interval Full Frame redraw interval for MSP DisplayPort [deciseconds]. This is how often a full frame update is sent to the DisplayPort, to cut down on OSD artifacting. The default value should be fine for most pilots. Though long range pilots may benefit from increasing the refresh time, especially near the edge of range. -1 = disabled (legacy mode) , 0 = every frame (not recommended) , default = 10 (1 second) Values: -1 - 600 Default: 10
pilot_name Pilot name Default:
rc_filter_auto When enabled, INAV will set RC filtering based on refresh rate and smoothing factor. Default: FALSE
rc_filter_lpf_hz RC data biquad filter cutoff frequency. Lower cutoff frequencies result in smoother response at expense of command control delay. Practical values are 20-50. Set to zero to disable entirely and use unsmoothed RC stick values Values: 15 - 250 Default: 50
rc_filter_smoothing_factor The RC filter smoothing factor. The higher the value, the more smoothing but also the more delay in response. Value 1 sets the filter at half the refresh rate. Value 100 sets the filter to aprox. 10% of the RC refresh rate Values: 1 - 100 Default: 30

Removed Items

Name Description
baro_median_filter
eleres_freq
eleres_loc_delay
eleres_loc_en
eleres_loc_power
eleres_signature
eleres_telemetry_en
eleres_telemetry_power
failsafe_mission see new failsafe_mission_delay
imu2_align_pitch
imu2_align_roll
imu2_align_yaw
imu2_gain_acc_x
imu2_gain_acc_y
imu2_gain_acc_z
imu2_gain_mag_x
imu2_gain_mag_y
imu2_gain_mag_z
imu2_hardware
imu2_radius_acc
imu2_radius_mag
imu2_use_for_osd_ahi
imu2_use_for_osd_heading
imu2_use_for_stabilized
nav_fw_auto_disarm_delay See generic nav_auto_disarm_delay
nav_mc_auto_disarm_delay See generic nav_auto_disarm_delay
nav_wp_safe_distance see nav_wp_max_safe_distance
rc_filter_frequency
rx_spi_id
rx_spi_protocol
rx_spi_rf_channel_count

Changelist

The full list of changes is available here The full list of INAV Configurator changes is available here

What's Changed from INAV 5.1

New Contributors

Full Changelog: https://github.com/iNavFlight/inav/compare/5.1.0...6.0.0