Skip to content

2.0.0 Release Notes

Pawel Spychalski (DzikuVx) edited this page Sep 21, 2022 · 76 revisions

Hello and welcome to INAV 2.0.0 Release!

Please carefully read all of this document for the best possibile 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
INAV Official on Slack

Sponsors and supporters

Ongoing development would be impossible without ongoing cooperation with manufacturers and support from the following businesses:

Important Notes

  • DO NOT RESTORE ACCELEROMETER CALIBRATION VALUES FROM AN OLDER RELEASE (<2.0) Doing that will led to poor attitude estimation performance and may cause troubles.

  • When upgrading a full chip erase (when flashing) / defaults from CLI is advised. Be sure to backup your configuration and restore it wisely.

  • OSD layout configuration from releases < 2.0 is not compatible with the current one. Take a screenshot of your current OSD layout before upgrading and restore it manually from the configurator.

  • current_meter_offset setting changed scale. Need to be multiplied by 10 if it's value is coming from < INAV 2.0.0

  • Position Hold 2D (only keeping horizontal position with GPS aid) has been dropped. Now Position Hold is only 3D and it will hold position and altitude.

  • STM32F1 boards support has been dropped. NAZE/CC3D targets are no longer supported. Please upgrade to F4/F7 board. F3 boards are not recommended since their flash space is almost full and they are likely to not receive all features on the next release.

  • AIRMODE now excludes feature MOTOR_STOP in multicopters This means that if you have AIRMODE enabled on a multi-rotor, the motors will most likely spin on arming, even with feature MOTOR_STOP (or the configurator "Don't spin the motors when armed") set.

Upgrading from 1.9.X

  1. Be sure to run the latest INAV 2.0 Configuration release. Download from here
  2. Go to the CLI tab and copy and paste the diff output to a text file for later usage.
  3. Go to the OSD tab and take a screenshot of the current layout
  4. Flash INAV 2.0 enabling full chip erase . Now you FC should run INAV 2.0. Connect again and check firmware version.
  5. Go to the Mixer tab and load and apply your desidered mixer.
  6. Go back to your configuration text file and delete all lines starting with: mixer acczero accgain magzero osd. Adjust values to be adjusted noted in the release notes.
  7. Open the CLI tab in the configurator and paste your cleaned up configuration in the text box and type save and press enter. The flight controller will now reboot.
  8. Calibrate the accelerometer following the steps in the dedicated tab. Only first two steps needs to be made in the right order.
  9. Calibration of the magnetometer should be done at the field. The magnetic field indoors can be distorted and led to a bad calibration.
  10. Restore manually your OSD layout using the screenshot and upload the font you like using the dedicated button.
  11. Carefully check all the configuration and check on the bench without installed propellers if everything looks good. In particular check if the model preview behave correctly when you are moving your model and check surfaces movements for an airplane.
  12. Enjoy INAV 2.0.0 and explore its new features!

Walk through if TL;DR

https://www.youtube.com/watch?v=sHvItS2qKfk

Known bugs

  • RadioLink R9DS (an possibly all RadioLink receivers) SBUS output cannot be used . They are not complying with standards and this results in them sending invalid SBUS packets to the FC (#3563)
  • If INAV Configurator starts minimized, you have to manually remove content of C:\Users%Your_UserNname%\AppData\Local\inav-configurator https://www.youtube.com/watch?v=XMoULyiFDp4
  • When running async (GYRO or ALL), gyro update will stick to PID loop frequency even if the configurator reports an higher frequency. You can check this via tasks command in CLI. It's strongly recommended not to run async and synchronize looptime to gyroscope. (#3628)

New mixer and mixer GUI

Starting from INAV 2.0.0, there are no predefined mixers on the firmware side: CLI command mixer QUADX will just not work. Mixer has to be configured using INAV Configurator 2.0 with Mixer tab.

Restoring from previous releases via CLI will not work correctly. Please use Configurator 2.0 mixer tab to configure it from scratch.

See https://www.youtube.com/watch?v=0cLFu-5syi0

It is no longer necessary to use smix reverse to reverse a tricopter tail servo; this can be done in the 2.0 Configurator or with the CLI smix 0 5 2 -100 0.

Added NAV CRUISE flight mode (fixed wing)

This release introduces the new NAV CRUISE flight mode. When enabled the machine will try to maintain the current heading and compensate for any external disturbances (2D CRUISE). User can adjust the flight direction directly with ROLL stick or with the YAW stick ( nav_fw_cruise_yaw_rate set the yawing rate at full stick deflection ). The latter will offer a smoother way to adjust the flight direction. If the mode is enabled in conjunction with NAV ALTHOLD also the current altitude will be maintained (3D CRUISE). Altitude can be adjusted, as usual, via the pitch stick. In both modes ANGLE mode is active and the plane will stay leveled.

OSD improvements

OSD functionally got overhauled and improved. Now it is possible to have three OSD layouts and switch between them via an RC channel. Furthermore new two modes have been added: map and radar.

  • map mode draws the home centered, while the craft moves around. There are two available maps: one with the North pointing up and another one with the takeoff direction pointing up.
  • radar mode draws the craft in the center and the home moving around.

Those modes will enable the display of other aircraft flying in the vicinity in a future releases.

It is now possible to display a lot of new data on the OSD:

  • All the values adjustable in flight via RC. When a value is selected for adjustment it starts blinking. This means it is possible to select a lot of adjustments with a pot for example and know easily which one is being adjusted.
  • Wind estimation
  • Numeric attitude angles
  • Cruise mode heading info
  • Numeric heading to home
  • New battery related data: estimated remaining time and distance before having to head home, sag compensated battery voltage, estimated battery impedance
  • Outputs of the PID controllers

Added full VTX control via Smart Audio / TRAMP

User can now select VTX settings from the configurator or via the OSD CMS. Furthermore vtx_low_power_disarm setting has been added. Setting it to ON will set the power to its minimum value on startup (usually 25mW) and increase it to vtx_power when arming and change it back to its lowest setting after disarming. Note that this setting can jeopardize the ability to find a lost quad using a strong signal coming from the VTX but on the other way it can prevent the VTX to overheat if you do quick flight cycles on the same battery. UNTIL_FIRST_ARM will set the VTX to its minimum power, but once the craft is armed it will increase the output power to vtx_power and it will never decrease until the craft is power cycled. OFF will make the power output always to be set to the vtx_power setting.

Wind Estimation for Fixed Wing

It is possible to show estimated wind speed and direction on the OSD. In particular both lateral and vertical indicators are present. This is an experimental feature, you are encouraged to use it and report any anomalies in the estimated wind speed.

Battery management related features

These features have been added for helping with the battery management:

  • Battery profile with optional automatic switching
  • Sag compensated battery voltage and battery impedance calculation
  • Estimation of the remaining flight time and distance before having to head home
  • Automatic compensation of throttle command based on battery voltage to help maintain constant thrust regardless of the battery voltage
  • The current sensor can be calibrated more accurately (increased offset voltage resolution: 0.1mV instead of 1mV). If you'd like to keep your current_meter_offset value from an old config you need to multiply it by 10).

You can read more about these feature in the battery documentation

CLI parameter renaming / new parameters

Name Description
nav_fw_cruise_yaw_rate Max YAW rate when NAV CRUISE mode is enabled (0=disable control via yaw stick) [dps]
gyro_stage2_lowpass_hz Software based second stage lowpass filter for gyro. Value is cutoff frequency (Hz). Currently experimental
name The craft name is now a set value. name MYCRAFT is replaced by set name = MYCRAFT.
switch_disarm_delay Defines a delay for switch disarming setting (default 150ms, PR #3118) For better safety, a value of at least 250ms is recommended
inav_reset_home Defines when the home position is automatically reset, default is EACH_ARM. Allowed values: NEVER, FIRST_ARM, EACH_ARM
model_preview_type Defines the aircraft type. This is advisory for display purposes only (Configurator, Ground Control Stations) and has no affect on aircraft behaviour. This setting takes the numeric values equivalent to the old 'mixer'.
platform_type Defines the aircraft (vehicle) type. This value affects the vehicle performance. Default is MULTIROTOR, allowed values: MULTIROTOR, AIRPLANE, HELICOPTER, TRICOPTER, ROVER, BOAT. Only MULTIROTOR, AIRPLANE and TRICOPTER are implemented in INAV 2.0.
has_flaps Defines is UAV is capable of having flaps. If ON and AIRPLANE platform_type is used, FLAPERON flight mode will be available for the pilot
vtx_band Configure the VTX band. Set to zero to use vtx_freq. Bands: 1: A, 2: B, 3: E, 4: F, 5: Race.
vtx_channel Channel to use within the configured vtx_band. Valid values are [1, 8].
vtx_freq Set the VTX frequency using raw MHz. This parameter is ignored unless vtx_band is 0.
vtx_halfduplex Use half duplex UART to communicate with the VTX, using only a TX pin in the FC.
vtx_low_power_disarm When the craft is disarmed, set the VTX to its lowest power. ON will set the power to its minimum value on startup, increase it to vtx_power when arming and change it back to its lowest setting after disarming. UNTIL_FIRST_ARM will start with minimum power, but once the craft is armed it will increase to vtx_power and it will never decrease until the craft is power cycled.
vtx_pit_mode_freq Frequency to use (in MHz) when the VTX is in pit mode.
vtx_power VTX RF power level to use. The exact number of mw depends on the VTX hardware.
nav_rth_home_altitude Aircraft will climb/descend to this altitude after reaching home if landing is not enabled. Set to 0 to stay at nav_rth_altitude (default) [cm]
nav_fw_cruise_speed Speed for the plane/wing at cruise throttle used for remaining flight time/distance estimation in cm/s
cruise_power Power draw at cruise throttle used for remaining flight time/distance estimation in 0.01W unit
idle_power Power draw at zero throttle used for remaining flight time/distance estimation in 0.01W unit
rth_energy_margin Energy margin wanted after getting home (percent of battery energy capacity). Use for the remaining flight time/distance calculation
osd_estimations_wind_compensation Use wind estimation for remaining flight time/distance estimation
nav_fw_allow_manual_thr_increase Enable the possibility to manually increase the throttle in auto throttle controlled modes for fixed wing
bat_voltage_src Chose between raw and sag compensated battery voltage to use for battery alarms and telemetry. Possible values are RAW and SAG_COMP
bat_cells Number of cells of the battery (0 = autodetect), see battery documentation
vbat_cell_detect_voltage Maximum voltage per cell, used for auto-detecting the number of cells of the battery in 0.01V units, default is 4.30V
align_opflow Optical flow module alignment (default CW0_DEG_FLIP)
fw_min_throttle_down_pitch Automatic pitch down angle when throttle is at 0 in angle mode. Progressively applied between cruise throttle and zero throttle
tz_automatic_dst Automatically add Daylight Saving Time to the GPS time when needed or simply ignore it. Includes presets for EU and the USA - if you live outside these areas it is suggested to manage DST manually via tz_offset.
motor_accel_time Minimum time for the motor(s) to accelerate from 0 to 100% throttle (ms) [0-1000]
motor_decel_time Minimum time for the motor(s) to deccelerate from 100 to 0% throttle (ms) [0-1000]
thr_comp_weight Weight used for the throttle compensation based on battery voltage.
nav_overrides_motor_stop Setting to OFF combined with MOTOR_STOP feature will allow user to stop motor when in autonomous modes. On most planes this setting is likely to cause a stall. Use caution

New boards

  • Added support for MATEKF411 mini and MATEKF411-WING (@fiam, #3146)
  • Added support for DALRCF405 (@nyway, #3184)
  • Add CLRACINGF4AIRV3 to CLRACINGF4AIR target (@bnn1044, #3239)

New features

Improvements

Removed features:

  • Feature CHANNEL_FORWARDING has been removed, it can be implemented using new mixer GUI in Configurator
  • Feature SERVO_GIMBAL has been removed, it can be implemented using new mixer GUI in Configurator
  • The mid_rc CLI variable has been removed, and the setting removed from the configurator. If necessary (e.g.Futaba TX), the same effect can be achieved using rxrange settings.

Bugfixes

  • Avoid to delete navigation modes if MAG is not available (@shellixyz, #2984)
  • Prevent out of time ARMED message in the OSD when arming with the OSD disabled (@shellixyz, #3098)
  • Allow using CMS while OSD is disabled (@shellixyz, #3099)
  • Fix current sensor overflow (@shellixyz, #3131)
  • Remove YAW inversion in 3D mode for vehicles that don't need it (@eephyne, #3128)
  • Fix vertical alignment of ARMED screen in OSD when using NTSC (@fiam, #3149)
  • Make the total trip distance OSD item work when no current sensor is present (@shellixyz, #3163)
  • Add missing OSD alarm settings from CLI (@shellixyz, #3182)
  • Fix "sensor lost" problems when using FPort telemetry (@fiam, #3206)
  • MATEKF405: As requested in #3223 S5 is no longer used for FW servos (@DzikuVx, #3224)
  • Fix outputs 5 and 6 in SPRACINGF3 (@shellixyz, #3236)
  • Correct home yaw when a valid heading is acquired (@fiam, #3247)
  • Fix logging of negative altitudes in BlackBox logs (@stronnag, #3250)
  • Properly round servo values after applying servo filtering (@fiam, #3276)
  • Fix and simplify applyFixedWingPitchRollThrottleController() (@shellixyz, #3297)
  • change year base for RTC time_t to correct leap processing (@stronnag, #3307)
  • Make FPort stop one sensor cycle every 3 (@fiam, #3308)
  • Fix RTH hover above home (can't keep altitude) (@shellixyz, #3332)
  • Fix FF_PIKOF4 and FF_PIKOF4OSD targets (@shellixyz, #3333)
  • remove unneeded rxConfig from sbusChannelsInit and fix up callers (@stronnag, #3338)
  • Fix potential overflow in energy metering (@shellixyz, #3342)
  • Reset disarm reason at moment of arming (@digitalentity, #3360)
  • Fix support for AK8975 MAG (@fiam, #3413)
  • Gyro SPI bus fix according to OmnibusF4-nano v8 schematics (@digitalentity, #3426)
  • Fix VTX device type reported via MSP (@fiam, #3429)
  • Add missing break when adjusting ADJUSTMENT_RC_YAW_EXPO (@fiam, #3430)
  • Work around compiler bug, fix MSP2_INAV_ANALOG and convert amperage from int32_t to int16_t (@shellixyz, #3469)
  • Prevent time comparison overflow in S.Port driver (@fiam, #3536)
  • Fix automatic DST support (@fiam, #3542)
  • PWM driver - startup value fix (fixes servo twitching at startup) (@marbalon, [#3540])
  • Fix FrSky HDOP range (@teckel12, #3519)
  • Fix division by 0 in generateThrottleCurve() (@shellixyz, #3502)
  • Fix current BB logging and improve battery code (@shellixyz, #3490)
  • Add definition for MAX_SPI_SPEED to limit spi seed if defined for target (@marbalon, #3532)
  • Fix incorrect axis convention (incompliance with datasheet) for IST8310 compass (@digitalentity, #3546)
  • Fix a rare edge case where RC receiver failsafe channel values may leak into AUX mode switching and cause a disarm (@digitalentity, [#3482])
  • Add workaround for AKK VTX with S.Audio bug (@fiam, [#3633])
  • Fix orientation of the drivers for AK8963, AK8975 and MPU9250 MAG (@fiam, [#3447])
  • Fix PCA9685 support (@DzikuVx, [#3744])

Developer Notes

Due to a beneficial change in the build environment (generated files are stored per target, not in a common area), it is necessary to remove a couple of files from any older branches (these files are generated automatically by the build).

# on a Posix O/S
rm -f src/main/fc/settings_generated.[ch]

WIKI TOPICS

Wiki Home Page

INAV Version Release Notes

7.1.0 Release Notes
7.0.0 Release Notes
6.0.0 Release Notes
5.1 Release notes
5.0.0 Release Notes
4.1.0 Release Notes
4.0.0 Release Notes
3.0.0 Release Notes
2.6.0 Release Notes
2.5.1 Release notes
2.5.0 Release Notes
2.4.0 Release Notes
2.3.0 Release Notes
2.2.1 Release Notes
2.2.0 Release Notes
2.1.0 Release Notes
2.0.0 Release Notes
1.9.1 Release notes
1.9.0 Release notes
1.8.0 Release notes
1.7.3 Release notes
Older Release Notes

QUICK START GUIDES

Getting started with iNav
Fixed Wing Guide
Howto: CC3D flight controller, minimOSD , telemetry and GPS for fixed wing
Howto: CC3D flight controller, minimOSD, GPS and LTM telemetry for fixed wing
INAV for BetaFlight users
launch mode
Multirotor guide
YouTube video guides
DevDocs Getting Started.md
DevDocs INAV_Fixed_Wing_Setup_Guide.pdf
DevDocs Safety.md

Connecting to INAV

Bluetooth setup to configure your flight controller
DevDocs Wireless Connections (BLE, TCP and UDP).md\

Flashing and Upgrading

Boards, Targets and PWM allocations
Upgrading from an older version of INAV to the current version
DevDocs Installation.md
DevDocs USB Flashing.md

Setup Tab
Live 3D Graphic & Pre-Arming Checks

Calibration Tab
Accelerometer, Compass, & Optic Flow Calibration

Alignment Tool Tab
Adjust mount angle of FC & Compass

Ports Tab
Map Devices to UART Serial Ports

Receiver Tab
Set protocol and channel mapping

Mixer

Mixer Tab
Custom mixes for exotic setups
DevDocs Mixer.md

Outputs

DevDocs ESC and servo outputs.md
DevDocs Servo.md

Modes

Modes
Navigation modes
Navigation Mode: Return to Home
DevDocs Controls.md
DevDocs INAV_Modes.pdf
DevDocs Navigation.md

Configuration

Sensor auto detect and hardware failure detection

Failsafe

Failsafe
DevDocs Failsafe.md

PID Tuning

EZ-Tune
PID Attenuation and scaling
Fixed Wing Tuning for INAV 3.0
Tune INAV PIFF controller for fixedwing
DevDocs Autotune - fixedwing.md
DevDocs INAV PID Controller.md
DevDocs INAV_Wing_Tuning_Masterclass.pdf
DevDocs PID tuning.md
DevDocs Profiles.md

GPS

GPS and Compass setup
GPS Failsafe and Glitch Protection

OSD and VTx

DevDocs Betaflight 4.3 compatible OSD.md
OSD custom messages
OSD Hud and ESP32 radars
DevDocs OSD.md
DevDocs VTx.md

LED Strip

DevDocs LedStrip.md

ADVANCED

Advanced Tuning

Fixed Wing Autolaunch
DevDocs INAV_Autolaunch.pdf

Programming

DevDocs Programming Framework.md

Adjustments

DevDocs Inflight Adjustments.md

Mission Control

iNavFlight Missions
DevDocs Safehomes.md

Tethered Logging

Log when FC is connected via USB

Blackbox

DevDocs Blackbox.md
INAV blackbox variables
DevDocs USB_Mass_Storage_(MSC)_mode.md

CLI

iNav CLI variables
DevDocs Cli.md
DevDocs Settings.md

VTOL

DevDocs MixerProfile.md
DevDocs VTOL.md

TROUBLESHOOTING

"Something" is disabled Reasons
Blinkenlights
Pixel OSD FAQs
TROUBLESHOOTING
Why do I have limited servo throw in my airplane

ADTL TOPICS, FEATURES, DEV INFO

AAT Automatic Antenna Tracker
Building custom firmware
Default values for different type of aircrafts
Features safe to add and remove to fit your needs.
Developer info
INAV MSP frames changelog
INAV Remote Management, Control and Telemetry
Lightweight Telemetry (LTM)
Making a new Virtualbox to make your own INAV
MSP Navigation Messages
MSP V2
OrangeRX LRS RX and OMNIBUS F4
Rate Dynamics
Target and Sensor support
UAV Interconnect Bus
Ublox 3.01 firmware and Galileo
DevDocs 1wire.md
DevDocs ADSB.md
DevDocs Battery.md
DevDocs Buzzer.md
DevDocs Channel forwarding.md
DevDocs Display.md
DevDocs Fixed Wing Landing.md
DevDocs GPS_fix_estimation.md
DevDocs LED pin PWM.md
DevDocs Lights.md
DevDocs OSD Joystick.md
DevDocs Servo Gimbal.md
DevDocs Temperature sensors.md

OLD LEGACY INFO

Supported boards
DevDocs Boards.md
Legacy Mixers
Legacy target ChebuzzF3
Legacy target Colibri RACE
Legacy target Motolab
Legacy target Omnibus F3
Legacy target Paris Air Hero 32
Legacy target Paris Air Hero 32 F3
Legacy target Sparky
Legacy target SPRacingF3
Legacy target SPRacingF3EVO
Legacy target SPRacingF3EVO_1SS
DevDocs Configuration.md
Request form new PRESET
DevDocs Introduction.md
Welcome to INAV, useful links and products
iNav Telemetry
DevDocs Rangefinder.md
DevDocs Rssi.md
DevDocs Runcam device.md
DevDocs Serial.md
DevDocs Telemetry.md
DevDocs Rx.md
DevDocs Spektrum bind.md

Clone this wiki locally