2.5.0 Release Notes - iNavFlight/inav GitHub Wiki

Hello and welcome to INAV 2.5.0 Release!

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 Official on Telegram
INAV Official on Facebook

Please continue to support developers, for free, by checking out from the following stores after having clicked on the following links:

Support us on Banggood

Your contribution from the past month has been very welcome! Thanks!

Tested and suggested hardware can be found here

Important Notes

CLI aux mode migration

inav 2.5 moves the CLI aux mode value from a boxid that was not guaranteed to be stable between releases to a permmanentId that is guaranteed to be stable between releases. This is a "breaking" change for inav 2.5 that brings stability in the future.

In order to use a diff or dump from 2.4 or earlier in inav 2.5, the user must do one of the following:

  • Remove aux settings from the diff / dump and recreate them in inav 2.5; or
  • Use the box2perm tool to migrate the diff / dump automatically; or
  • Manually edit the aux settings; a conversion table is provided as part of the box2perm documentation.

Removal of PWM RX

All traces of PWM RX have finally been removed. Please check that your receiver type is correctly assigned before raising bogus issues that your RX no longer works.

F3 Deprecation

STM32 F3 flight controllers like Omnibus F3 or SP Racing F3 are deprecated and soon they will reach the end of support in INAV. If you are still using F3 boards, please migrate to F4 or F7.

Upgrading from 2.4

  1. Download and install the new configurator
  2. Save to a file the current diff all from the CLI.
  3. Modify the diff to update or remove the aux statements
  4. Upgrade to INAV 2.5 using the Full Erase option in the configurator.
  5. Upload your OSD font of choice from the OSD tab.
  6. Go the CLI again and paste the contents on the file you previously create and write save , press ENTER and done!
  7. You should be ready, explore new 2.5 features and enjoy!

Upgrading from 2.3 or older version

Please follow the instructions on this page.

New targets:

  • AIRBOTF7
  • OMMINBUSF7NANOV2

CLI:

New commands

Command Description
gf Global Functions. For details refer to Global Functions.md in the docs folder.
logic Defined Logic conditions activating Global Functions. For details refer to Logic Conditions.md in the docs folder.

New Settings

Setting Description
dynamic_gyro_notch_enabled Enable/disable dynamic gyro notch also known as Matrix Filter [ON / OFF]
dynamic_gyro_notch_range Range for dynamic gyro notches. MEDIUM for 5", HIGH for 3" and MEDIUM or LOW for 7" and bigger propellers
dynamic_gyro_notch_q Q factor for dynamic notches
dynamic_gyro_notch_min_hz Minimum frequency for dynamic notches. Default value of 150 works best with 5" multirors. Should be lowered with increased size of propellers. Values around 100 work fine on 7" drones. 10" can go down to 60 - 70
motor_direction_inverted Replaces yaw_motor_direction
nav_fw_control_smoothness Controls smoothness of navigation control (0-9). 0 gives legacy behaviour, non-zero values give increasing smoothness.
nav_fw_pos_hdg_p P gain of heading PID controller.
nav_fw_pos_hdg_i I gain of heading PID controller.
nav_fw_pos_hdg_d D gain of heading PID controller.
nav_fw_pos_hdg_pidsum_limit Output limit for heading trajectory PID controller. (Fixedwing, rovers, boats)
nav_use_fw_yaw_control Enables or Disables the use of the heading PID controller on fixed wing
nav_fw_yaw_deadband Deadband for heading trajectory PID controller. When heading error is below the deadband, controller assumes that vehicle is on course
osd_esc_temp_alarm_max Temperature under which the IMU temperature OSD element will start blinking (decidegrees centigrade)
osd_esc_temp_alarm_min Temperature above which the IMU temperature OSD element will start blinking (decidegrees centigrade)
osd_hud_wp_disp Controls display of the next waypoints in the HUD. See description below
osd_ahi_style Sets OSD Artificial Horizon style "DEFAULT" or "LINE" for the FrSky Graphical OSD
telemetry_halfduplex Replaces telemetry_uart_unidir
servo_protocol Select which protocol is used to communicate with servos (PWM, servo driver or SBUS)

Removed settings

Setting Description
dyn_notch_width_percent
dyn_notch_range
dyn_notch_q
dyn_notch_min_hz
rpm_dterm_filter_enabled
dterm_gyro_harmonic
rpm_dterm_min_hz
rpm_dterm_q
telemetry_uart_unidir Replaced by telemetry_halfduplex
yaw_motor_direction Replaced by motor_direction_inverted

New drivers and protocols

Initial Rover and Boat support (@DzikuVx)

Starting from version 2.5, INAV supports Rovers and Boats (more general: ground and water vehicles without altitude control with yaw steering only. Remark: tanks and vehicles with differential steering are also supported).

The Rover and Boat related features:

  • Flight modes: PosHold, AltHold, Cruise, Launch, Loiter Direction Change, Angle, Horizon, FPV Angle Mix, Turn Assist, Airmode are not available on Rover and Boat platforms
  • Feature 3D is renamed to Reversible Motors
  • Reversible ESCs are now working correctly
  • New Heading PID controller used for YAW control on rovers and boats
  • Return To Home is working. Rover will disarm at the end of RTH procedure. Bear in mind, it will return in a straight line, no Smart RTH support yet.
  • Waypoint Missions are operational. Rover will drive directly int the direction of the Waypoint. At the last Waypoint, it will stop motors instead of loitering.

Reversible ESCs support (@DzikuVx)

Description

New Matrix Filters for Multirotors (@DzikuVx)

The new Matrix Notch filter comes enabled by default on INAV. It's a dynamic notch filter that detects noise frequencies on each individual axis (X, Y and Z) and apply the filters to each axis, resulting in a much better noise handling.

Check out this video to see a detailed explanation of how the Matrix Filter works.

JUMP, HOLD and LAND Waypoint types (@giacomo892, @Jacky2k, @stronnag)

INAV 2.5 supports additional waypoint types, allowing more complex missions to be performed.

  • JUMP: Defines a 'jump' to another waypoint, allowing mission loops (backward jump) and forward jumps. The number of jump iterations is also user defined.
  • POSHOLD_TIME: Defines the amount of time for which the aircraft will loiter at the waypoint position before proceeding to the next waypoint.
  • LAND: Defines a location for landing. This allows INAV to perform one-way missions.

The navigation messages wiki page provides more information and annotated examples.

HUD POI Waypoints markers (@OlivierC-FR)

Shows the next waypoints in the hud. To enable this feature, enter the count of next waypoints in the CLI command:

set osd_hud_wp_disp = 0 to 3

Or on the CMS menu: OSD > HUD > Displayed items > Next waypoints: (from 0 to 3, 0 means disabled)

Then start a WP mission, the next WPs will appear as soon as the mission is loaded in FC memory AND that the aircraft has a valid GPS heading, so it must move if it's not fitted with a magnetometer.

Servo S.BUS output (@digitalentity)

It's now possible to connect S.BUS servos to INAV. You can configure INAV to output servo commands as S.BUS stream on one of the serial ports. Important note - F4 boards generally don't support inversion on serial ports, for those boards a hardware inverter might be required.

VTX/CMS Unification (@digitalentity)

Now CMS has one unified page for configuring VTX settings. No need to remember which protocol your VTX is talking (Tramp, S.Audio or other).

ESC Sensor listen-only mode (@digitalentity)

ESC sensor can now be put to listen-only mode, allowing ESC sensor functionality to be used when an ESC is connected with a PWM-based protocol and configured to sent telemetry automatically. This will be useful on airplanes to provide RPM feedback without the need to use DSHOT.

Legacy Targets

Due to flash / memory restrictions the following functions have been disabled on F3 targets:

  • Pitot
  • Multirotor braking
⚠️ **GitHub.com Fallback** ⚠️