
- 9.1.0
- 9.0.0
Welcome to INAV 9.1.0
Please carefully read all of this document for the best possible experience and safety.
Known Issues in 9.1.0​
- Attempts have been made to test as many changes as possible under different conditions. But if you do find any issues, please visit INAV Github to see if the matter has already been raised. If not, then open a new issue report.
Upgrading from a previous release​
Upgrading from INAV 8.1 or 9.0.X versions​
- Download and install the new INAV 9.1 Configurator
- Backup configuration with CLI
diff allcommand or use the Diff All and _Save to file buttons. - Flash INAV 9.1 WITH _Full Chip Erase option enabled.
- Load your 9.0.2
Diffsettings in to the CLI. - Make a copy of your 9.0.2
Difftext file and rename it 9.1. Then edit it by removing any incompatible settings you see marked in RED in the CLI. - Once done, in the CLI type in
Defaultsthen save. - Return to the CLI and load your edited INAV 9.1
Difftext file.
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 8 or later diffs to version 9 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.
[!Note] INAV 9.1 Configurator also has a settings migration tool in the CLI for firmware upgrading and flashing. Please see the 9.1 configurator release for more details.
Upgrading from older versions​
If you are updating from a much older versions of INAV. Please follow the instructions on this page.
Highlights​
- INAV 9.1 is primarily a maintenance build. It contains many fixes and code cleanups. With the goal of making INAV even more dependable.
GNSS constellations and update rate handling​
Due to GNSS data processing losses than occur when gps_ublox_nav_hz is set higher. INAV now provides a more optimized update rate, depending on your hardware type (M8, M9 or M10) and the number of concurrent constellations you have selected.
In general, lower UBLOX update rates will allow your GNSS module to provide better position accuracy when more constellations are selected. But there is also a trade-off. The update positions will becoming more broadly spread-out at higher flight speeds.
Changes can be made in the Configurator GPS Tab to suit your hardware and flight requirements.
Read PR , Issue and GPS and Compass setup for more information on the topic if required.
Multicopter set magless heading​
This allows pilots who choose to fly without a compass, to point the front of their MC or VTOL towards a known NORTH (0°) heading before takeoff; so you don't have to fly a short distance to acquire a GNSS course over ground heading before a navigation mode can be activated. Please read Multicopter navigation without a compass to gain a greater understanding of how to use this feature.
Position estimator improvements​
Various changes have been made to improve multicopter position hold accuracy when the GNSS signal is poor or fluctuating. These changes have also added some small benefits to fixedwing navigation performance as well. However keep in mind, position estimation will now rely more on the accelerometer weight. This means you should always ensure your multicopter or VTOL is as free from propeller and motor vibrations as possible. Read hardware vibration and filters for some useful setup tips.
Relevant commits - #11270 , #11322 , #11387
[!Warning] If you have increased
nav_mc_pos_z_pornav_mc_vel_z_pmulticopter altitude controller gains above their default values since INAV 7.1. It is advisable to lower those gains or re-tune them, to avoid possible throttle oscillations in navigation modes that control altitude. Specifically WP, Cruise and RTH.Poshold is generally less affected in a fixed hover. But if it's used for forward flight, it too can be affected.
OSD changes​
- The handling of the OSD STATS after disarming has been improved. CRSF RX data is now being displayed. As well as the
Saving SettingandDisarmed byadvisories are again working correctly on HD. link - System message updates and improvements have been added for Surface mode and Geozones. link
- Simplification of the OSD Multifunction mode tools operation. With the addition of battery Voltage and Capacity, Pitot failure and Compass calibration.
- If multicopter compass deviation occurs (toilet bowling) in Poshold, a system message warning is displayed until the mode is cancelled. link
Other changes​
- Adds I-term stability detection for fixedwing servo autotrim. link
- Add Loiter to LED control mode. link
- Reduce subsequent altitude error if multicopter is armed with a poor satellite fix. link
- Support for SSD1315 OLED display.link
Prominent bug fixes​
- Fix a safety issue with reversed throttle servos. link
- Fix 4 in 1 ESC random spin-up of motor 1 after disarming, when using
BLheli_32- 32.9 firmware and earlier. link - Fix RTH Trackback to prevent the flight controller locking up in some instances. link
- Inhibits landing detection when Surface mode active unless AGL altitude Trusted and below 50cm. link
- Timeout guards for SD card SPI and SDIO drivers when using problematic SD cards. link
- Fix CRSF airspeed, rpm, and temperature telemetry from corrupting the data stream. link
- Althold manual climb rate fix. Now allows the climb rate to correctly meet the target setpoint. link
- Fix UBLOX polling block to improve accuracy. link
- Better handling of virtual pitot if GPS hardware failure occurs. link
- Fix AT32F43x LED toggle logic using correct register operations. link
- Prevents overflow in blackbox acceleration and vibration fields. link
- Reduce MSP over telemetry pass-through congestion. link
- Prevents permanently blocking multi-frame MSP request assembly. link
Sensor addition​
ICM45686 IMU support MS5525DSO digital airspeed sensor
Flash storage support​
XT25F128F MX35LF2G
New targets​
- AIKONF4V2
- BLADE_F4
- BLUEBERRYH743
- BLUEBERRYF405
- Brahma H7
- FlyDragon Pro
- FLYWOOF405HD
- FLYWOOF405PRO
- FRSKYF405
- HAKRCH743
- NEXUS (original)
- PAURCF405V2
- SDMODELH7V2
- SimplyFly H7
- TBS_LUCID_H7_OEM
- TBS_LUCID_H7_V3
Manufacturers. You can be alerted of changes that may affect your products by subscribing to the
#technical-changeschannel on the INAV Discord Server
What's Changed - Pull Requests​
A big thanks to everyone who has contributed to INAV 9.1. And a special thanks to the project collaborators.
- New target: FlyDragon Pro by @ functionpointer in #11126
- Set altitude target functionality by @xznhj8129 in #11147
- add HAKRCH743 target by @HAKRC8899 in #11182
- Fix CRSF airspeed, rpm, and temperature telemetry corruption by @sensei-hacker in #11189
- MSP: Add minimum power index to MSP_VTX_CONFIG by @sensei-hacker in #11190
- Reduce CPU overhead by rate-limiting updateArmingStatus() to 200 Hz by @sensei-hacker in #11200
- Verify frame length when handling CRSF_FRAMETYPE_MSP_REQ/CRSF_FRAMETYPE_MSP_WRITE by @VoodooChild99 in #11210
- Add I-term stability check to servo autotrim by @sensei-hacker in #11215
- FIX AT32 LED blink BUG by @sunyanmeng963 in #11228
- Add optional DFU mode parameter to MSP_REBOOT command by @sensei-hacker in #11238
- Fix SPI register masking in busWriteBuf by @sensei-hacker in #11242
- Added support for switchable 9v BEC for FLYWOOF405HD and FLYWOOF405PRO by @radekdomin in #11251
- Passthrough, USB Improvements by @jlpoltrack in #11256
- Add GPS hardware version to MSP and optimize defaults for M8/M9/M10 by @sensei-hacker in #11262
- MSP Bind Message, CLI Command by @jlpoltrack in #11267
- Position estimator position and velocity corrections fix by @breadoven in #11270
- Add target BLUEBERRYH743 by @sunyanmeng963 in #11279
- Add target BLUEBERRYF405 by @sunyanmeng963 in #11280
- Rename profile commands to control_profile by @MrD-RC in #11302
- Multifunction add battery voltage warnings by @breadoven in #11308
- Comment 16 MSP commands as deprecated (for removal in INAV 10 or 11) by @sensei-hacker in #11315
- Fix servo throttle mix outputting wrong position when disarmed by @sensei-hacker in #11318
- Fix SD card busy-wait loops that can lock up flight controller by @sensei-hacker in #11321
- Position estimator sensor correction refactor by @breadoven in #11322
- New target: SDMODELH7V2 (STM32H743) by @sensei-hacker in #11341
- Position estimator GPS origin altitude improvement for poor initial GPS epv by @breadoven in #11355
- Multicopter althold altitude adjustment manual climb rate fix by @breadoven in #11359
- New target: FRSKYF405 by @sensei-hacker in #11366
- Position estimator corrections improvement and estimated velocity filtering by @breadoven in #11387
- Trackback flight controller lock up fix by @breadoven in #11393
- Add AGENT.md rules by @DzikuVx in #11397
- Brahma H7 Support by @DzikuVx in #11404
- SimplyFly H7 target by @DzikuVx in #11413
- Virtual pitot fixes by @breadoven in #11441
- Blackbox acceleration/vibration fixes by @breadoven in #11447
- Fix MSP-over-telemetry multi-frame request assembly by @b14ckyy in #11478
- Fix MSP_RESULT_NO_REPLY ignored in MSP-over-telemetry passthrough by @b14ckyy in #11481
- MSP2_INAV_SET_AUX_RC (0x2230) — Bandwidth-efficient auxiliary RC channel updates by @b14ckyy in #11482
- Docs: add Backup and Restore documentation for Configurator auto-backup by @b14ckyy in #11494
- Add MSP2 link stats message + fix missing msp-set-wp-index-and-altitude by @xznhj8129 in #11496
- target/FLYINGRCF4WINGMINI_NOT_RECOMMENDED: add LED strip support by @Leander-Vh in #11501
- OSD stats fixes and code cleanup by @breadoven in #11506
- Fix GPS capability poll blocking for 500ms every 5 seconds by @sensei-hacker in #11332
- Power and Current Limiting fix and documentation by @sensei-hacker in #11187
- Fix NEXUSX default IMU orientation by @sensei-hacker in #11338
- docs: move NEXUSX board README to docs/boards by @sensei-hacker in #11363
- NEW_HARDWARE_POLICY.md: Use Discord rather than email by @sensei-hacker in #11333
- Remove legacy hdzero special case by @mmosca in #10540
- CI: publish PR test builds to iNavFlight/pr-test-builds by @sensei-hacker in #11381
- CI: fix YAML syntax error in pr-test-builds workflow by @sensei-hacker in #11384
- Fix SPI GPIO alternate function assignment on STM32H7/F7 by @sensei-hacker in #11389
- Fix USB VCP lockup on disconnect (issue #11348) by @sensei-hacker in #11351
- Fix hard faults when handling large MSP responses over CRSF by @KeithCoreDumped in #11369
- Add Loiter to LED control on mode flight by @john-Henrique in #11374
- cmake/sitl: use CheckLinkerFlag instead of GCC version check for --no-warn-rwx-segments by @sensei-hacker in #11383
- Use single-precision math to save ~17 KB of flash on F722 targets by @sensei-hacker in #11402
- Master to maintenance-9 by @sensei-hacker in #11406
- Bugfix: SDIO capacity shows incorrectly on F4 devices by @cluez0r in #11347
- CI: build only affected target for single-target PRs by @sensei-hacker in #11450
- added support of icm45686 sensor by @Yuri-Sharapov in #11418
- fix lsm6dxx driver lack gyroAlign setting issue by @Ncerzzk in #11367
- Fix bugs in ICM-45686 IMU driver (PR #11418) by @sensei-hacker in #11455
- Add two new MSP2 commands for GCS-initiated flight control by @danarrib in #11462
- Add NEXUS target for RadioMaster Nexus (Original) flight controller by @joshperry in #11324
- imu: compute GPS 3D speed only on new GPS data by @sensei-hacker in #11356
- optimize imuMahonyAHRSupdate() hot path (5 micro-opts) by @sensei-hacker in #11358
- Add new target: PAURCF405V2 by @sensei-hacker in #11497
- GPS: fix hwVersion field size from uint32_t to uint8_t by @sensei-hacker in #11510
- Flash supports MX35LF2G model by @RunnyCow in #11505
- BLUEBERRYF405: add missing PWM beeper timer entry for PB9 by @sensei-hacker in #11531
- drivers: use NAND-standard opcodes for W25N register read/write by @sensei-hacker in #11533
- lucid: add more baros, enable led strip, align gyro orientations by @bkleiner in #11534
- Multifunction improvement by @breadoven in #11543
- drivers: wait for DMA EN bit to clear before reconfiguring DShot DMA (F7/H7) by @sensei-hacker in #11390
- pid/filter: FAST_CODE annotations and RC command caching by @sensei-hacker in #11357
- Multifunction fixes by @breadoven in #11549
- Allow yaw reset to north when disarmed - for multirotors with no compass by @breadoven in #11529
- Multifunction refactor by @breadoven in #11552
- osd: replace common tfp_sprintf patterns with direct formatting helpers by @sensei-hacker in #11405
- OSD flight efficiency formatting fix by @breadoven in #11556
- Add support for MS5525DSO digital airspeed sensor by @nventurino in #11467
- added changes to max7456.c to add setting speed and removing spi_mod_0 flag with defines from target.h file by @DariaOrqa in #11396
- Please test on FRSKYPILOT. Fix STM32F765xG linker scripts by @sensei-hacker in #11391
- Fix HUMMINGBIRD FC305 baro by @LYNHQQ in #11469
- Fix the issue where the default configuration parameters for the log by @yangbryant in #11493
- fix: disable bootloader variants for targets without storage backend by @daijoubu in #11522
- Needs testing: Issue #10830 Surface Mode Fixes by @breadoven in #11425
- change BLUEBERRYH743 VBAT_SCALE_DEFAULT = 2100 by @sunyanmeng963 in #11579
- docs: Document CMAKE_BUILD_TYPE=Release for production builds by @sensei-hacker in #11249
- SSD1315 OLEDs also seem to work by @tonuonu in #10959
- Multirotor toilet bowling detection by @breadoven in #10854
- Reset free PIDs if coefficients are changed via CLI or MSP by @wimalopaan in #11431
- add a new target BLADE_F4 by @hakrc1 in #9904
- HITL/SITL X-Plane: Improvements by @Scavanger in #11253
- HITL/SITL X-Plane fixes for merge #11253 by @sensei-hacker in #11566
- Fix: Prioritize Airspeed over GPS for turn acceleration compensation by @shota3537 in #11312
- Add TBS_LUCID_H7_OEM target by @bkleiner and @sensei-hacker in #11610
- Add TBS_LUCID_H7_V3 target by @bkleiner and @sensei-hacker in #11609
- Add support for XTX XT25F128F nor flash chip by @gaoyu2144287 in #11590
Full Changelog: https://github.com/iNavFlight/inav/compare/master...maintenance-9.x
Welcome to INAV 9.0.0
Please carefully read all of this document for the best possible experience and safety.
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​
- Download and install the new INAV Configurator 9.0
- Backup configuration with CLI
diff allcommand or use the Diff All and Save to file buttons. - Flash INAV 9.0 WITH Full Chip Erase option enabled
- Load your 8.0
Diffsettings in to the CLI. Then take a note or write down the incompatible settings changes marked in RED. - Then copy your 8.0
Difffile and rename it 9.0. And edit the old incompatible settings. - Go to CLI and load your edited INAV 9.0
Diff - Done
Concerning step 6. It can be a safer option to load your
Diff Allsettings in two parts if you are using multiple Profiles. e.g. Control, Mixer or Battery.
This can be done by copying and loading theDiff Alltext setting from the top, down to the bottom of the# mastersettings 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 theDiff Alltext file. Starting from the# Control_profile 1settings 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.
Upgrading from older versions​
Please follow the instructions on this page.
Highlights​
Fixedwing airspeed APA and pitch angle enhanced 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.
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 CLI | Old | New |
|---|---|---|
w_z_baro_v | 0.1 | 0.35 |
inav_w_z_gps_p | 0.2 | 0.35 |
inav_w_z_gps_v | 0.1 | 0.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_ratesetting 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​
| Name | Function |
|---|---|
| OSD_VERTICAL_SPEED_INDICATOR | New name for OSD vario |
| OSD_ADSB_WARNING | CMS stick menu |
| OSD_ADSB_INFO | CMS stick menu |
| OSD_THROTTLE_GAUGE | OSD |
| OSD_NAV_MIN_GROUND_SPEED | OSD |
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.
[!TIP] Manufacturers. You can be alerted of changes that may affect your products by subscribing to the
#technical-changeschannel on the INAV Discord Server
Functions​
| Function | Name | Values |
|---|---|---|
| Battery | SMARTPORT | vbat_meter_type , current_meter_type |
| Programming Framework | Gimbal Sensitivity | Scales Operand A from [-16 : 15] |
| Programming Framework | Override Minimum Ground Speed | When 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 Framework | Minimum Ground Speed [m/s] | The current minimum ground speed allowed in navigation flight modes |
| Programming Framework | Horizontal Wind Speed [cm/s] | Estimated wind speed. If the wind estimator is unavailable or the wind estimation is invalid, -1 is returned |
| Programming Framework | Wind Direction [deg] | Estimated wind direction. If the wind estimator is unavailable or the wind estimation is invalid, -1 is returned |
| Programming Framework | Relative 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​
Incompatible Settings Changes​
The first three CLI settings have been renamed or changed in INAV 9.0. When loading an older diff all, these will show errors:
New Settings​
| Name | Description |
|---|---|
| use_control_profile | Renames old controlrate_profile |
| mixer_control_profile_linking | Renames old mixer_pid_profile_linking |
| osd_pan_servo_range_decadegrees | Renames old osd_pan_servo_pwm2centideg |
| blackbox_arm_control | Can extend blackbox logging up to 60 seconds after disarming |
| acc_temp_correction | Accelerometer temperature correction factor to compensate for acceleromter drift |
| baro_temp_correction | Baro temperature correction factor to compensate for Baro altitude drift |
| osd_adsb_warning_style | ADSB warning element style - COMPACT or EXTENDED |
| nav_fw_alt_use_position | Use position for fixed wing altitude control rather than velocity |
| mavlink_autopilot_type | Sets the Mavlink telemetry type - GENERIC or ARDUPILOT |
| transition_pid_mmix_multiplier_pitch | Intended to solve pitch coupling in transtion mode on tilting rotor VTOL |
| transition_pid_mmix_multiplier_roll | intended to solve roll/yaw coupling oscillation in transtion mode on tilting rotor VTOL |
| transition_pid_mmix_multiplier_yaw | Intended to solve yaw/roll coupling oscillation in transtion mode on tilting rotor VTOL |
| apa_pow | Sets the strength and speed range of dynamic airspeed PID scaling |
| tpa_pitch_compensation | Sets the strength which pitch angle will override the 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
- RADIOLINKF722 : Add W25Q128 flash chip support
- SKYSTARSF405V2
- TBS_LUCID_H7_WING
- TBS_LUCID_H7_WING_MINI
- SPEEDYBEEF405WINGV2
- VANTAC_RF007 : Add new FrSky/Rotorflight Vantac RF007 target with magnetometer support
- WARPF7
What's Changed​
- Update Aocodarcf7mini by @dlt2018 in https://github.com/iNavFlight/inav/pull/9312
- Add a template for new target PR by @mmosca in https://github.com/iNavFlight/inav/pull/9946
- Add flights counter to stats by @ TransientTetra in https://github.com/iNavFlight/inav/pull/10020
- Update Buzzer.md by @wchnflr in https://github.com/iNavFlight/inav/pull/10121
- Added Zerodrag WARP7 by @vishnumda in https://github.com/iNavFlight/inav/pull/10262
- Enable MSP override build flag by default by @xznhj8129 in https://github.com/iNavFlight/inav/pull/10330
- Accelerometer and Barometer temperature compensation by @breadoven in https://github.com/iNavFlight/inav/pull/10382
- Change gimbal sensitivity from programming framework by @error414 in https://github.com/iNavFlight/inav/pull/10405
- MSP DisplayPort add DJI Native video system by @mmosca in https://github.com/iNavFlight/inav/pull/10440
- Lulu fixes and improvements by @pjpei in https://github.com/iNavFlight/inav/pull/10416
- Add new targets: MicoAir743AIO and MicoAir743v2 by @Minderring in https://github.com/iNavFlight/inav/pull/10557
- MSP command to get radar position of other planes from esp32radar by jeffhendrix in https://github.com/iNavFlight/inav/pull/10571
- Add new target ORBITF435 by @orbittechnologyx in https://github.com/iNavFlight/inav/pull/10578
- Update libraries - pre-req for H7A3 by @mmosca in https://github.com/iNavFlight/inav/pull/10593
- Fixed wing flight detection fix by @breadoven in https://github.com/iNavFlight/inav/pull/10621
- Matekf405 spi flash blackbox fix by @mmosca in https://github.com/iNavFlight/inav/pull/10630
- TBS_LUCID_H7: fix gyro2 by @bkleiner in https://github.com/iNavFlight/inav/pull/10678
- fix LTM attitude (mis-cast) by @stronnag in https://github.com/iNavFlight/inav/pull/10680
- Enable second dynamic gyro only if primary is enabled by @DzikuVx in https://github.com/iNavFlight/inav/pull/10687
- Add barometer altitude to CRSF telemetry by @her01n in https://github.com/iNavFlight/inav/pull/10694
- improve cli status NAV reasons by @stronnag in https://github.com/iNavFlight/inav/pull/10696
- Updates to Iterm Lock for better readability by @DzikuVx in https://github.com/iNavFlight/inav/pull/10699
- Add more flexibility for minimum ground speed by @MrD-RC in https://github.com/iNavFlight/inav/pull/10720
- Update OSD.md by @MrD-RC in https://github.com/iNavFlight/inav/pull/10722
- Add throttle gauge option to OSD by @MrD-RC in https://github.com/iNavFlight/inav/pull/10725
- Update VTOL.md by DanielOBenson in 10775, 10779, 10780
- fixed crash: Firmware crash when OSD is disabled but MSP Display UART is allocated by @RomanLut in https://github.com/iNavFlight/inav/pull/10792
- Brother h743 by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10805
- Add new target: DAKEFPVF722X8 by @ThanYangFPV in https://github.com/iNavFlight/inav/pull/10811
- Position estimator improvements by @breadoven in https://github.com/iNavFlight/inav/pull/10818
- Add ADSB to CMS menu by @P-I-Engineer in https://github.com/iNavFlight/inav/pull/10820
- New target JHEMCUF435 (non-AIO) by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10825
- Change the spelling error by @shivam-daksh in https://github.com/iNavFlight/inav/pull/10827
- Docs: LED pin PWM as PINIO by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10831
- DAKEFPVF722X8: Add UART3 by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10832
- dmesg: log init messages to RAM until serial init by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10836
- Add new target CORVON743V1 by @holydust in https://github.com/iNavFlight/inav/pull/10839
- F435 correct uart->tx_af by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10840
- New target DAKEFPVH743 by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10843
- Programming Framework.md - typo by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10861
- Use Nav max bank angle for multirotor ATTI mode by @breadoven in https://github.com/iNavFlight/inav/pull/10866
- Fix cardinal OSD icon for DJI by @error414 in https://github.com/iNavFlight/inav/pull/10871
- Add functions to serial.md by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10880
- Fix osd.md, add missing OSD_NAV_FW_ALT_CONTROL_RESPONSE by @druckgott in https://github.com/iNavFlight/inav/pull/10882
- Add support for SKYSTARSF405V2 by @DusKing1 in https://github.com/iNavFlight/inav/pull/10884
- Add new target ORBITH743 by @orbittechnologyx in https://github.com/iNavFlight/inav/pull/10889
- Reversible motor fixes by @breadoven in https://github.com/iNavFlight/inav/pull/10890
- Extend msp_override_mask to 32bits / channels by @stronnag in https://github.com/iNavFlight/inav/pull/10891
- Removed dead links from the beepers list by @medvedev in https://github.com/iNavFlight/inav/pull/10894
- Add custom targets for BOTWINGF405 and BOTWINGF722 flight controllers by @PrateekShanker99 in https://github.com/iNavFlight/inav/pull/10895
- Add new target CORVON405V2 by @holydust in https://github.com/iNavFlight/inav/pull/10897
- Corrected approach length marker by @b14ckyy in https://github.com/iNavFlight/inav/pull/10899
- For burst mode dmar, define as DMA_REQUEST_TIMx_UP by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10900
- Update Bug_report.md by @b14ckyy in https://github.com/iNavFlight/inav/pull/10902
- Option to use position for fixed wing nav altitude control by @breadoven in https://github.com/iNavFlight/inav/pull/10903
- Docs: create contributing.md by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10905
- Nav RTH climb first fix by @breadoven in https://github.com/iNavFlight/inav/pull/10908
- Add TBS_LUCID_H7_WING by @bkleiner in https://github.com/iNavFlight/inav/pull/10909
- Add TBS_LUCID_H7_WING_MINI by @bkleiner in https://github.com/iNavFlight/inav/pull/10910
- LED pin PWM.md: update link to screenshot by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10914
- Nav position estimator baro air cushion compensation fix by @breadoven in https://github.com/iNavFlight/inav/pull/10925
- ADSB - Use extended OSD glyphs for dot in numbers and improve aircraft warning by @error414 in https://github.com/iNavFlight/inav/pull/10927
- Branches clean up : merge docs from master to maintenance-8.x.x by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10932
- Add New Target: DAKEFPVH743PRO by @ThanYangFPV in https://github.com/iNavFlight/inav/pull/10940
- Backport #10382 baro temp compensation to maintenance-8.x.x by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10946
- 8.1 change gimbal sensitivity from programming framework by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10950
- CADDXF4_AIO_ELRS baro uses i2c2 by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10951
- 8.1 JH fix matek f405 variants by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10952
- ADD NEW TARGET HUMMINGBIRD_FC305 by @LYNHQQ in https://github.com/iNavFlight/inav/pull/10954
- Blackbox logging arm behaviour setting option by @breadoven in https://github.com/iNavFlight/inav/pull/10955
- Add New Target DAKEFPVF435 by @ThanYangFPV in https://github.com/iNavFlight/inav/pull/10956
- Create Building in Github Codespace.md by @WizzardDr in https://github.com/iNavFlight/inav/pull/10957
- Flycolorf4 target by @DzikuVx in https://github.com/iNavFlight/inav/pull/10963
- Foxeer F405V2 by @DzikuVx in https://github.com/iNavFlight/inav/pull/10964
- Targets for darkmatter BRAHMA boards by @DzikuVx in https://github.com/iNavFlight/inav/pull/10965
- Fix changing msp receiver crash by @stronnag in https://github.com/iNavFlight/inav/pull/10971
- Jh fix gcc15 warnings by @stronnag in https://github.com/iNavFlight/inav/pull/10972
- SpeedyBeeF405Wing V2 target by @DzikuVx in https://github.com/iNavFlight/inav/pull/10976
- Fixes Building in Docker by @Lebensgefahr in https://github.com/iNavFlight/inav/pull/10982
- Better default display i2c bus by @sensei-hacker in https://github.com/iNavFlight/inav/pull/10984
- Allow servo speed filter carry over on the mixer profile switch by @shota3527 in https://github.com/iNavFlight/inav/pull/10986
- Fixes for Brahma targets: F405 and F722 by @DzikuVx in https://github.com/iNavFlight/inav/pull/10987
- Add New Target HAPPYMODELF405 by @githubDLG in https://github.com/iNavFlight/inav/pull/10989
- Add QMC5883P driver by @BortEngineerDude in https://github.com/iNavFlight/inav/pull/10994
- Fix some typos by @valeriyvan in https://github.com/iNavFlight/inav/pull/11003
- Add target RADIOLINKF405 by @radiolinkW in https://github.com/iNavFlight/inav/pull/11006
- Blackbox servos fix by @breadoven in https://github.com/iNavFlight/inav/pull/11010
- Added ICM42605 IMU support for SKYSTARSH743HD by @DusKing1 in https://github.com/iNavFlight/inav/pull/11014
- Fix Mac SITL CI by @Scavanger in https://github.com/iNavFlight/inav/pull/11017
- DAKEFPVF722 SPL06 support by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11022
- Lucid_h7: add pc13 for 9v en by @bkleiner in https://github.com/iNavFlight/inav/pull/11023
- DAKEFPVF722 support for DPS310 by @ThanYangFPV in https://github.com/iNavFlight/inav/pull/11041
- New feature: SmartPort battery sensor by @functionpointer in https://github.com/iNavFlight/inav/pull/11045
- Ublox: include array index to set satellites with no signal as unused by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11064
- Dakefpvf435 by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11066
- Update (fixed spelling mistakes in the page) GPS_fix_estimation.md by @Fire18Parrot in 11068 and 11071
- Brotherhobbyf405 v3 - tested correct by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11073
- Add new target blueberryF435wing by @sunyanmeng963 in https://github.com/iNavFlight/inav/pull/11074
- Replace "exposition" with "exponential" in Settings.md by @jp39 in https://github.com/iNavFlight/inav/pull/11084
- Rename numeric vario to vertical speed indicator by @MrD-RC in https://github.com/iNavFlight/inav/pull/11085
- Fix typo in Control Profiles documentation by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11086
- Update external mag I2C driver registration for HUMMINGBIRD_FC305 @LYNHQQ in https://github.com/iNavFlight/inav/pull/11090
- Update CRSF telemetry modes sensor to better reflect INAV modes by @MrD-RC in https://github.com/iNavFlight/inav/pull/11094
- Update Geofence AUTO mode to GEO by @MrD-RC in https://github.com/iNavFlight/inav/pull/11096
- Corrected mode display ordering by @MrD-RC in https://github.com/iNavFlight/inav/pull/11097
- Fix buffer overflow from deprecated MSP2_INAV_LOGIC_CONDITIONS by @MrD-RC in https://github.com/iNavFlight/inav/pull/11099
- Update throttle gauge skip by @MrD-RC in https://github.com/iNavFlight/inav/pull/11101
- Made SITL ports configurable by @xznhj8129 in https://github.com/iNavFlight/inav/pull/11103
- Update SmartPort telemetry to reflect latest flight modes by @MrD-RC in https://github.com/iNavFlight/inav/pull/11104
- Update status flag check for QMC5883 by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11105
- Updates to wind in the IPF by @MrD-RC in https://github.com/iNavFlight/inav/pull/11109
- Update cygwin ci script for the sitl by @stronnag in https://github.com/iNavFlight/inav/pull/11111
- Update "Building SITL" document by @stronnag in https://github.com/iNavFlight/inav/pull/11113
- Add scaling to pan servo offset by @MrD-RC in https://github.com/iNavFlight/inav/pull/11072
- Vtol.md: s/pid_profile/control_profile/ by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11108
- Raise the limit to display CRSF SNR values on OSD by @rmaia3d in https://github.com/iNavFlight/inav/pull/9793
- Better yaw estimation for mulitirotor(magless operation) by @shota3527 in https://github.com/iNavFlight/inav/pull/11114
- MSP2 via CSFR/SmartPort telemetry by @error414 in https://github.com/iNavFlight/inav/pull/11093
- MSP protocol JSON definition file + derived documentation generation by @xznhj8129 in https://github.com/iNavFlight/inav/pull/11088
- Remove legacy option of rebooting fc without using MSP by @mmosca in https://github.com/iNavFlight/inav/pull/9970
- Fix ADSB cardinal for broken mag direction by @error414 in https://github.com/iNavFlight/inav/pull/11076
- Mavlink systemid cli by @xznhj8129 in https://github.com/iNavFlight/inav/pull/11062
- MAV_CMD_DO_REPOSITION to WP#255 for GCS NAV by @xznhj8129 in https://github.com/iNavFlight/inav/pull/11061
- Regen mavlink headers + add missing values to funcs in mavlink.c by @xznhj8129 in https://github.com/iNavFlight/inav/pull/11060
- Add options to adjust motor RPY when transition mode is activate(vtol) by @shota3527 in https://github.com/iNavFlight/inav/pull/10996
- MSP json rev2 by @xznhj8129 in https://github.com/iNavFlight/inav/pull/11115
- Battery control profile off by 1 by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11118
- Update references to that should be control_profile by @MrD-RC in https://github.com/iNavFlight/inav/pull/11122
- New target: FlyingRC F4wing mini by @dixi83 in https://github.com/iNavFlight/inav/pull/11092
- Update FlyingRC F4Wing Mini target by @MrD-RC in https://github.com/iNavFlight/inav/pull/11131
- NEXUSX: USE_DSHOT_DMAR, use TIM2 instead of TIM5 by @functionpointer in https://github.com/iNavFlight/inav/pull/11129
- Add I2C compass driver registration for HUMMINGBIRD FC305 by @LYNHQQ in https://github.com/iNavFlight/inav/pull/11134
- Normalize line endings to LF in src/main/target/FLYSPARKF4V4 in https://github.com/iNavFlight/inav/pull/11137
- Revert #11025 "[crsf] add temperature, RPM and AirSpeed telemetry" in https://github.com/iNavFlight/inav/pull/11139
- Add JavaScript programming documentation by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11143
- Add flyspark target by @FlySparkfpv in https://github.com/iNavFlight/inav/pull/10788
- Dynamic Custom OSD Elements position changing by companion computer by @Ahmed-hadzi in https://github.com/iNavFlight/inav/pull/11095
- Add JHEMCU F435 AIO target board support by @jhemcu in https://github.com/iNavFlight/inav/pull/10740
- MSP2 message exposing 3D attitude, position, and velocity by @yakorch in https://github.com/iNavFlight/inav/pull/11032
- Fix H743 USB MSC regression and SDIO reliability issues by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11194
- Add airspeed TPA support by @shota3527 in https://github.com/iNavFlight/inav/pull/11042
- Improve APA safety: pitot validation, reduced gains, safe defaults by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11222
- Add optional DFU mode parameter to MSP_REBOOT command by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11238
- Fix blackbox corruption when no motors defined in mixer by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11220
- Improve blackbox DEBUG documentation by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11239
- Add prominent download links to README by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11221
- Add maintenance-9.x to nightly build workflow by @sensei-hacker in https://github.com/iNavFlight/inav/pull/11204
- 8226 deprecated, enum parse fix, enums json by @xznhj8129 in https://github.com/iNavFlight/inav/pull/11185
Full Changelog: https://github.com/iNavFlight/inav/compare/8.0.1...9.0.0