INAV 9.0.0-RC4

9.0.0-RC4Pre-release

INAV 9.0.0-RC4 release candidate for testing

Added 4
  • Add support for Puya PY25Q128HA flash chip (16MB SPI NOR)
  • Add pitch angle aware TPA with airspeed support
  • Add MSP2_INAV_LOGIC_CONDITIONS_CONFIGURED command for optimized loading
  • Add new target variant OMNIBUSF4V3_ICM
Changed 2
  • Raise pitot_lpf_milli_hz default
  • Disable dynamic notch filter by default on BLUEBERRYF435WING
Fixed 7
  • Fix H743 USB MSC regression, add timeout protection and retry logic for SD card access
  • Fix power limiting treating 0 (disabled) as less than continuous current
  • Fix buffer overflow and dashboard sizeof bug in CRSF telemetry
  • Fix floating-point division in throttle adjustment calculation for airspeed TPA
  • Guard against increasing max conditions beyond 64 in logic conditions
  • Fix integer overflow and buffer overrun issues
  • Include cygwin1.dll in Windows SITL artifact to fix Windows SITL

INAV 9.0.0

Hello and welcome to INAV 9.0.0

INAV 9.0.0-RC4 Firmware Release Notes

Release Candidate 4 for Testing This is a pre-release for testing purposes. Please report issues on GitHub.

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:

[!Note] 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.

Known Issues in 9.0
  • Please read INAV Github issue reports for outstanding problems that were not resolved in time for the release.

Upgrading from a previous release

Upgrading from INAV 8.0
  1. Download and install the new INAV Configurator 9.0
  2. Backup configuration with CLI diff all command or use the Diff All and Save to file buttons.
  3. Flash INAV 9.0 WITH Full Chip Erase option enabled
  4. Load your 8.0 Diff settings in to the CLI. Then take a note or write down the incompatible settings changes marked in RED.
  5. Then copy your 8.0 Diff file and rename it 9.0. And edit the old incompatible settings.
  6. Go to CLI and load your edited INAV 9.0 Diff
  7. Done

[!Tip] Concerning step 6.
It can be a safer option to load your Diff All settings in two parts if you are using multiple Profiles. e.g. Control, Mixer or Battery.
This can be done by copying and loading the Diff All text setting from the top, down to the bottom of the # master settings category. Then load that into the CLI and press enter. Once it has written, press the Save Settings button.
Wait until it reboots and go back to the CLI tab again, then copy and load the rest of the Diff All text file. Starting from the # Control_profile 1 settings category, down to the bottom. Press enter. Once written, it will save by itself.

Diff update tool

Rather than steps 4 and 5 above. You can try this diff update tool. This is a work in progress. Currently it will try to update version 7 or later diffs to version 8 or later. Just paste your full diff all (not dump) in to the tool. Select the INAV version you're upgrading to. Then press the button. It will create a new diff for you and give you warnings about anything you should check.

INAV CLI Update Tool

Upgrading from older versions

Please follow the instructions on this page.

Changes in RC4 (since RC3)
Bug Fixes
  • USB MSC (Mass Storage): Fix H743 USB MSC regression, add timeout protection and retry logic for SD card access
  • Power Limiting: Fix power limiting treating 0 (disabled) as less than continuous current
  • CRSF Telemetry: Fix buffer overflow and dashboard sizeof bug
  • Airspeed TPA: Fix floating-point division in throttle adjustment calculation
  • Logic Conditions: Guard against increasing max conditions beyond 64
  • Critical Bugs: Fix integer overflow and buffer overrun issues (cppcheck)
New Features
  • Puya Flash Support: Add support for Puya PY25Q128HA flash chip (16MB SPI NOR)
  • Airspeed TPA: Add pitch angle aware TPA with airspeed support
  • MSP Protocol: Add MSP2_INAV_LOGIC_CONDITIONS_CONFIGURED command for optimized loading
  • Pitot: Raise pitot_lpf_milli_hz default
Target Changes
  • BLUEBERRYF435WING: Disable dynamic notch filter by default
  • OMNIBUSF4V3_ICM: New target variant
Documentation
  • Add Power and Current Limiting documentation
  • Update JavaScript Programming documentation for namespaced syntax
  • Add maintenance branch workflow documentation
Build/CI
  • Include cygwin1.dll in Windows SITL artifact (fixes Windows SITL)
Testing Focus for RC4

Please test and report issues with:

  1. USB Mass Storage on H7 boards
  2. Power limiting functionality
  3. Airspeed TPA if using pitot
  4. Puya PY25Q128HA flash chip detection
  5. Windows SITL functionality

Highlights of the INAV 9 series:

Fixedwing airspeed APA/TPA support

Fixeding aircraft can now use a Pitot sensor or virtual airspeed to dynamically adjust the PIDFF gains inflight. This adds the advantage of a tighter stabilization response across the whole flight speed envelope.
Full details of setup and tuning can be found here. Under the topics APA and TPA and Pitch angle. Do not tune your PIFF too tight!

Minimum ground speed flexibility

Via the Programming Framework. It allows the user to have more flexibility when flying in higher wind conditions. To ensure the airplane makes headway.
In addition, you can program it to dynamically adjust the minimum ground speed according to the Wind direction and Wind speed.
More information can be found in this link.

OSD throttle gauge

Allows the pilot to see the throttle as a vertical digital gauge.
Functional information can be found here in the PR link

Fixed wing altitude controller

Changes have been made to improve its operation on a broader range of airframes. One of two methods can be selected to better suited different climb rate conditions.

  • Altitude Velocity controller nav_fw_alt_use_position = OFF (default)
  • Altitude Position controller nav_fw_alt_use_position = ON

See here for more information. And the required PID tune settings for either control method.

Position estimator improvements

Changes to the position estimator are mainly intended to improve issues with Z velocity accuracy but also includes code clean-ups and fixes.
There has also been setting changes added with the code alterations. Depending on the sensor data quality. It may be beneficial in some cases to revert your settings back to the old ones, or somewhere in between the two.

Name CLIOldNew
w_z_baro_v0.10.35
inav_w_z_gps_p0.20.35
inav_w_z_gps_v0.10.35

More information directly related to the changes can be found here.

Sensor addition

QMC5883P magnetometer driver

Other changes:
  • Barometer altitude added to CRSF telemetry.
  • Better Fixed wing flight detection to handle auto disarm on landing. PR link
  • Lulu filter fixes and improvements. PR Link
  • Accelerometer and Barometer temperature compensation for better altitude control - Calibration method and PR link.
  • Add flights counter to stats PR link
  • Servo speed filter for tilt-rotor VTOL. PR link
  • Enhance VTOL tilt-rotor support. To assist transition smoothness PR link
  • Better air cushion compensation for multicopters and rangefinder fix. PR link
  • Improved yaw estimation for magless multicopter operation. PR link - The default ahrs_acc_ignore_rate setting has also been lowered from 20 to 15.
  • Mavlink clean-ups and fixes - 11060 11061 11062
  • MSP changes - 11146 11171 11093 11032 10571 11099
  • JavaScript support tab for INAV programming framework. PR link Docs update
OSD/CMS changes
NameFunction
OSD_VERTICAL_SPEED_INDICATORNew name for OSD vario
OSD_ADSB_WARNINGCMS stick menu
OSD_ADSB_INFOCMS stick menu
OSD_THROTTLE_GAUGEOSD
OSD_NAV_MIN_GROUND_SPEEDOSD
Font changes

The Minimum Ground Speed and Throttle Gauge additions to the OSD require new font symbols. The analogue fonts are up-to-date. However, there may be time needed for this to propagate to the digital systems. For HDZero and Walksnail Avatar fonts should be available soon. However DJI may take longer as they need to update the font built in to their firmware.

Functions
FunctionNameValues
BatterySMARTPORTvbat_meter_type , current_meter_type
Programming FrameworkGimbal SensitivityScales Operand A from [-16 : 15]
Programming FrameworkOverride Minimum Ground SpeedWhen active, sets the minimum ground speed to the value specified in Operand A [m/s]. Minimum allowed value is set in nav_min_ground_speed. Maximum value is 150
Programming FrameworkMinimum Ground Speed [m/s]The current minimum ground speed allowed in navigation flight modes
Programming FrameworkHorizontal Wind Speed [cm/s]Estimated wind speed. If the wind estimator is unavailable or the wind estimation is invalid, -1 is returned
Programming FrameworkWind Direction [deg]Estimated wind direction. If the wind estimator is unavailable or the wind estimation is invalid, -1 is returned
Programming FrameworkRelative Wind Offset [deg]The relative offset between the heading of the aircraft and the heading of the wind. 0 indicates flying directly into a headwing. Negative numbers are a left offset. For example, if -20° is shown, turning right will correct towards 0. If the wind estimator is unavailable or the wind estimation is invalid, 0 is returned

CLI

New Settings
NameDescription
blackbox_arm_controlCan extend blackbox logging up to 60 seconds after disarming
acc_temp_correctionAccelerometer temperature correction factor to compensate for acceleromter drift
baro_temp_correctionBaro temperature correction factor to compensate for Baro altitude drift
osd_adsb_warning_styleADSB warning element style - COMPACT or EXTENDED
nav_fw_alt_use_positionUse position for fixed wing altitude control rather than velocity
osd_pan_servo_range_decadegreesReplaces the name of the old osd_pan_servo_pwm2centideg
mavlink_autopilot_typeSets the Mavlink telemetry type - GENERIC or ARDUPILOT
transition_pid_mmix_multiplier_pitchIntended to solve pitch coupling in transtion mode on tilting rotor VTOL
transition_pid_mmix_multiplier_rollintended to solve roll/yaw coupling oscillation in transtion mode on tilting rotor VTOL
transition_pid_mmix_multiplier_yawIntended to solve yaw/roll coupling oscillation in transtion mode on tilting rotor VTOL
apa_powSets the strength and range of dynamic airspeed PID scaling
tpa_pitch_compensationSets the strength which pitch angle will override throttle dynamic PID scaling
New targets
  • BLUEBERRYF435WING
  • BLUEBERRYF435WING_SD
  • BOTWINGF405
  • BOTWINGF722
  • BRAHMA_F405
  • BROTHERHOBBYH743
  • BROTHERHOBBYF405V3
  • CORVON743V1
  • CORVON743V1
  • CORVON405V2
  • DAKEFPVF722X8
  • DAKEFPVH743PRO
  • DAKEFPVF435
  • HAPPYMODELF405
  • HUMMINGBIRD_FC305
  • FLYINGRCF4WINGMINI
  • FLYCOLORF4
  • FLYSPARKF4V4
  • FOXEERF405V2
  • JHEMCUF435
  • JHEMF435AIO
  • MICOAIR743AIO
  • ORBITH743
  • ORBITF435
  • ORBITF435_SD
  • RADIOLINKF405
  • SKYSTARSF405V2
  • TBS_LUCID_H7_WING
  • TBS_LUCID_H7_WING_MINI
  • SPEEDYBEEF405WINGV2
  • WARPF7
What's Changed

Full Changelog: https://github.com/iNavFlight/inav/compare/8.0.1...9.0.0

View original

Upgraded? How did it go?

Discussion