INAV 3.0.1
Hello and welcome to INAV 3.0.1 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
Setup tutorials
Important Notes
Font update required
The OSD fonts have been improved (@Jettrel) and there are several new symbols. A font file update is required to use the new symbols and avoid an invalid font warning. Upload the updated font of your choosing from the OSD tab.
Upgrading from 3.0.0
- Backup configuration with CLI
dump
command - Flash
INAV 3.0.1
with Full Chip Erase - Restore configuration by pasting configuration from step 1
Alternatively, flash 3.0.1
without Full Chip Erase - Not recommended
Changes from 3.0.0
- Add sane limit to P and I in Autotune #7209
- Basic support for MATEKH743 target
- Fixed mission loading with stick commands #7204
- Fixed BARO calibration fail resulting in wrong altitude computation before arming #7183
- Display efficiency in metric when using UK units #7172
- Fix bug that doesn't allow arming with ALLOW_BYPASS #7162
- Enable OSD for all targets #7118
MATEKH743 support
This release supports Matek H743-WING, H743-Slim, and H743-Mini flight controllers. Targets are fully flyable, but not all features are yet working:
- No SD card support and no MSC mode
- CAN bus is not supported
INAV Configurator 3.0.1 is required to flash H743 targets with Full Chip Erase.
Upgrading from previous releases
We suggest NOT to do a full diff
or dump
upgrade. To get the best performance set up your aircraft from scratch. You can copy osd
, aux
, serial
, and mixer settings, as well as accelerometer and magnetometer calibration values from INAV 2.6, but other settings should be tuned again.
Upgrading from 2.6, 2.6.1
- Download and install the new configurator
- Save to a file the current diff all from the CLI.
- Upgrade to INAV 3.0 using the Full Erase option in the configurator.
- Upload your OSD font of choice from the OSD tab.
- Go to the CLI again and paste the above-described contents from the file you previously created and write save , press ENTER.
- 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.
- You should be ready, explore new 3.0 features, and enjoy!
Upgrading from 2.5 or older version
Please follow the instructions on this page.
New targets:
- Diatone MambaF405US_I2C
- FLYWOOF411_V2
- Mamba F722_I2C
- FLYWOOF745
- FLYWOOF745NANO
- MATEKH743
CLI:
New commands
Setting | Description |
---|---|
imu2 | Display the current status of the Secondary IMU |
imu2 fetch | Get calibration data from the Secondary IMU |
pid | Configure general purpose PID controllers. Refer to docs |
Changed Settings
Setting | Description |
---|---|
blackbox_device | Default: target |
log_level | Default: ERROR |
nav_overrides_motor_stop | When set to OFF the navigation system will not take over the control of the motor if the throttle is low (motor will stop). When set to OFF_ALWAYS the navigation system will not take over the control of the motor if the throttle was low even when failsafe is triggered. When set to AUTO_ONLY the navigation system will only take over the control of the throttle in autonomous navigation modes (NAV WP and NAV RTH). When set to ALL_NAV (default) the navigation system will take over the control of the motor completely and never allow the motor to stop even when the throttle is low. This setting only has an effect on NAV modes which take control of the throttle when combined with MOTOR_STOP and is likely to cause a stall if fw_min_throttle_down_pitch isn't set correctly or the pitch estimation is wrong for fixed wing models when not set to ALL_NAV |
nav_rth_climb_first | New: ON_FW_SPIRAL |
platform_type | Default: MULTIROTOR |
receiver_type | Default: target |
rssi_source | Default: AUTO |
New Settings
Setting | Description |
---|---|
dji_speed_source | Sets the speed type displayed by the DJI OSD: GROUND, 3D, AIR Default: GROUND |
dshot_beeper_enabled | Whether using DShot motors as beepers is enabled Default: TRUE |
dshot_beeper_tone | Sets the DShot beeper tone Values: 1 - 5 Default: 1 |
fw_d_pitch | Fixed wing rate stabilisation D-gain for PITCH Default: 0 |
fw_d_roll | Fixed wing rate stabilisation D-gain for ROLL Default: 0 |
fw_d_yaw | Fixed wing rate stabilisation D-gain for YAW Default: 0 |
fw_level_pitch_trim | Pitch trim for self-leveling flight modes. In degrees. +5 means airplane nose should be raised 5 deg from level Values: -10 - 10 Default: 0 |
fw_yaw_iterm_freeze_bank_angle | Yaw Iterm is frozen when bank angle is above this threshold [degrees]. This solves the problem of the rudder counteracting turns by partially disabling yaw stabilization when making banked turns. Setting to 0 (the default) disables this feature. Only applies when autopilot is not active and TURN ASSIST is disabled. Values: 0 - 90 Default: 0 |
gyro_abg_alpha | Alpha factor for Gyro Alpha-Beta-Gamma filter Values: 0 - 1 Default: 0 |
gyro_abg_boost | Boost factor for Gyro Alpha-Beta-Gamma filter Values: 0 - 2 Default: 0.35 |
gyro_abg_half_life | Sample half-life for Gyro Alpha-Beta-Gamma filter Values: 0 - 10 Default: 0.5 |
gyro_anti_aliasing_lpf_hz | Gyro processing anti-aliasing filter cutoff frequency. In normal operation this filter setting should never be changed. In Hz Values: 0 - 255 Default: 250 |
gyro_anti_aliasing_lpf_type | Specifies the type of the software LPF of the gyro signals. Default: PT1 |
gyro_dyn_lpf_curve_expo | Expo value for the throttle-to-frequency mapping for Dynamic LPF Values: 1 - 10 Default: 5 |
gyro_dyn_lpf_max_hz | Maximum frequency of the gyro Dynamic LPF Values: 40 - 1000 Default: 500 |
gyro_dyn_lpf_min_hz | Minimum frequency of the gyro Dynamic LPF Values: 40 - 400 Default: 200 |
gyro_main_lpf_hz | Software based gyro main lowpass filter. Value is cutoff frequency (Hz) Values: 0 - 500 Default: 60 |
gyro_main_lpf_type | Defines the type of the main gyro LPF filter. Possible values: PT1 , BIQUAD . PT1 offers faster filter response while BIQUAD better attenuation. Default: BIQUAD |
gyro_use_dyn_lpf | Use Dynamic LPF instead of static gyro stage1 LPF. Dynamic Gyro LPF updates gyro LPF based on the throttle position. Default: FALSE |
imu2_align_pitch | Pitch alignment for Secondary IMU. 1/10 of a degree Values: -1800 - 3600 Default: 0 |
imu2_align_roll | Roll alignment for Secondary IMU. 1/10 of a degree Values: -1800 - 3600 Default: 0 |
imu2_align_yaw | Yaw alignment for Secondary IMU. 1/10 of a degree Values: -1800 - 3600 Default: 0 |
imu2_gain_acc_x | Secondary IMU ACC calibration data Values: -32768 - 32767 Default: 0 |
imu2_gain_acc_y | Secondary IMU ACC calibration data Values: -32768 - 32767 Default: 0 |
imu2_gain_acc_z | Secondary IMU ACC calibration data Values: -32768 - 32767 Default: 0 |
imu2_gain_mag_x | Secondary IMU MAG calibration data Values: -32768 - 32767 Default: 0 |
imu2_gain_mag_y | Secondary IMU MAG calibration data Values: -32768 - 32767 Default: 0 |
imu2_gain_mag_z | Secondary IMU MAG calibration data Values: -32768 - 32767 Default: 0 |
imu2_hardware | Selection of a Secondary IMU hardware type. NONE disables this functionality Default: NONE, values NONE , BNO055 , BNO055_SERIAL |
imu2_radius_acc | Secondary IMU MAG calibration data Values: -32768 - 32767 Default: 0 |
imu2_radius_mag | Secondary IMU MAG calibration data Values: -32768 - 32767 Default: 0 |
imu2_use_for_osd_ahi | If set to ON, Secondary IMU data will be used for Analog OSD Artificial Horizon Default: FALSE |
imu2_use_for_osd_heading | If set to ON, Secondary IMU data will be used for Analog OSD heading Default: FALSE |
imu2_use_for_stabilized | If set to ON, Secondary IMU data will be used for Angle, Horizon and all other modes that control attitude (PosHold, WP, RTH) Default: FALSE |
mavlink_version | Version of MAVLink to use Values: 1 - 2 Default: 2 |
nav_land_maxalt_vspd | Vertical descent velocity above nav_land_slowdown_maxalt during the RTH landing phase. [cm/s] Values: 100 - 2000 Default: 200 |
nav_land_minalt_vspd | Vertical descent velocity under nav_land_slowdown_minalt during the RTH landing phase. [cm/s] Values: 50 - 500 Default: 50 |
nav_max_altitude | Max allowed altitude (above Home Point) that applies to all NAV modes (including Altitude Hold). 0 means limit is disabled Values: 0 - 65000 Default: 0 |
nav_mc_wp_slowdown | When ON, NAV engine will slow down when switching to the next waypoint. This prioritizes turning over forward movement. When OFF, NAV engine will continue to the next waypoint and turn as it goes. Default: TRUE |
nav_rth_alt_control_override | If set to ON RTH altitude and CLIMB FIRST settings can be overridden during the RTH climb phase using full pitch or roll stick held for > 1 second. RTH altitude is reset to the current altitude using pitch down stick. RTH CLIMB FIRST is overridden using right roll stick so craft turns and heads directly to home (CLIMB FIRST override only works for fixed wing) Default: FALSE |
osd_pan_servo_index | Index of the pan servo to adjust osd home heading direction based on camera pan. Note that this feature does not work with continiously rotating servos. Values: 0 - 10 Default: 0 |
osd_pan_servo_pwm2centideg | Centidegrees of pan servo rotation us PWM signal. A servo with 180 degrees of rotation from 1000 to 2000 us PWM typically needs 18 for this setting. Change sign to inverse direction. Values: -36 - 36 Default: 0 |
osd_plus_code_short | Number of leading digits removed from plus code. Removing 2, 4 and 6 digits requires a reference location within, respectively, ~800km, ~40 km and ~2km to recover the original coordinates. Default: 0 |
osd_sidebar_height | Height of sidebars in rows. 0 leaves only the level indicator arrows (Not for pixel OSD) Values: 0 - 5 Default: 3 |
osd_stats_min_voltage_unit | Display minimum voltage of the BATTERY or the average per CELL in the OSD stats. Default: BATTERY. Options BATTERY , CELL |
osd_telemetry | To enable OSD telemetry for antenna tracker. Possible values are OFF , ON and TEST Default: OFF |
prearm_timeout | Duration (ms) for which Prearm being activated is valid. after this, Prearm needs to be reset. 0 means Prearm does not timeout. Values: 0 - 10000 Default: 10000 |
safehome_max_distance | In order for a safehome to be used, it must be less than this distance (in cm) from the arming point. Values: 0 - 65000 Default: 20000 |
safehome_usage_mode | Used to control when safehomes will be used. Possible values are OFF , RTH and RTH_FS . See Safehome documentation for more information. Default: RTH |
servo_autotrim_rotation_limit | Servo midpoints are only updated when total aircraft rotation is less than this threshold [deg/s]. Only applies when using feature FW_AUTOTRIM . Values: 1 - 60 Default: 15 |
smith_predictor_delay | Expected delay of the gyro signal. In milliseconds Values: 0 - 8 Default: 0 |
smith_predictor_lpf_hz | Cutoff frequency for the Smith Predictor Low Pass Filter Values: 1 - 500 Default: 50 |
smith_predictor_strength | The strength factor of a Smith Predictor of PID measurement. In percents Values: 0 - 1 Default: 0.5 |
turtle_mode_power_factor | Turtle mode power factor Values: 0 - 100 Default: 55 |
vtx_smartaudio_early_akk_workaround | Enable workaround for early AKK SAudio-enabled VTX bug. Default: TRUE |
osd_rssi_dbm_alarm | RSSI in dBm alarm for Crossfire. Default: 0 |
nav_wp_load_on_boot | If set to ON, waypoints will be automatically loaded from EEPROM to the FC during startup. Default: OFF |
Removed settings
Setting | Description |
---|---|
gyro_sync | |
nav_landing_speed | replaced by nav_land_minalt_vspd and nav_land_maxalt_vspd |
Renamed settings
Old name | New name |
---|---|
gyro_lpf_hz | Replaced with gyro_main_lpf_hz |
gyro_lpf_type | Replaced with gyro_main_lpf_type |
gyro_stage2_lowpass_hz | Replaced with gyro_anti_aliasing_lpf_hz |
gyro_stage2_lowpass_type | Replaced with gyro_anti_aliasing_lpf_type |
mc_airmode_threshold | airmode_threshold |
mc_airmode_type | airmode_type |
osd_artificial_horizon_max_pitch | osd_ahi_max_pitch |
osd_artificial_horizon_reverse_roll | osd_ahi_reverse_roll |
New drivers and protocols
- Rangefinder "GY-US42(v2) Ultrasonic Range Sensor
- Rangefinder vl53l1x
- BNO055 Secondary IMU
- BMI088 IMU
New features
Turtle mode aka Flip Over after crash (@kernel-machine)
INAV now has a "Turtle Mode".
- Requires DSHOT ESC protocol
- Assign a switch to TURTLE mode
- Ensure you can arm at any angle
WP mission sealevel altitude datum (@breadoven)
Prior to inav 3.0, mission waypoint altitudes are relative the arming location. It is now possible to define waypoints with absolute (AMSL) altitude, making the mission independent of the arming location. See the inav wiki for details (WP paramater 3
)
WP Mission Landing Elevation Setting (@breadoven)
The relative / absolute ground altitude of a LAND
waypoint may be set as WP paramater 2
(m). See the inav wiki for details.
DShot Beeper (@harry1453)
Nothing to add. If DSHOT is enabled, DSHOT beeper will be used.
RC via MAVLink & MAVLink V2 Support (@harry1453)
MAVLink is still only a downlink from UAV to the ground station, but now allows to use RC-Over-MAVLink
Prearm Mode (@harry1453)
Prearm offers a two-stage arming process as an optional additional safety feature.
- Activate prearm (normally a button or momentary switch)
- Activate arm
Initial cut on H7 MCU support (@digitalentity, @bkleiner, @DzikuVx)
H7 is available in the source repository; target Hex files will be released as targets mature, probably in the future point releases.
Add D-term to control loop on fixed wing aircraft (@avsaase)
You can now use the D-gain to improve the stabilization, especially on small and agile airplanes. Until we have a better understanding of how to tune this on a range of airplanes, the D-gain is set to zero by default and not tuned using autotune. Please report good performing tunes in #6709.
Improved AUTOTUNE for fixed wing (@avsaase)
AUTOTUNE can now automatically set the correct rates for your airplane. The goal is to set rates that the airplane is capable of achieving with 80% control surface deflection so there is some room for the stabilization to work. This feature is controlled by CLI setting fw_autotune_rate_adjustment
. When set to AUTO
(the default), autotune automatically determines the rates and gains. When set to MAX
, rates will be automatically adjusted, but never above the starting values. This can be used to calm down a very agile plane, while still avoiding setting too high rates. When set to FIXED
, rates will not be adjusted. Note that setting too high rates can cause very bad flight behavior and potential crashes. Rate discovery is not possible in ANGLE mode so it is highly advised to do autotune in ACRO mode.
Continuously trim servos on fixed wing (@avsaase)
There is now the option to continuously trim the servos for straight and level flight. When enabled and flying straight and level, INAV records what servo output is required to maintain a constant attitude, and adjusts the servo midpoints accordingly. The servo midpoints are limited to the 1300-1700 range. After the first maiden flight, and after the first flight when significant changes have been made to the airplane, check the servo midpoints. If they are at or close to the end of this range mechanically adjust the control surfaces.
Improvements and updates
Gyro processing improvements (@DzikuVx)
As part of gyro processing updates, the following changes were made:
gyro_sync
is gone, INAV no longer does a wait cycle trying to get the next set of data from the gyro.- Gyro data acquisition is no longer part of the main PID task
- Gyro data is acquired with a constant rate of 4kHz and filters with an anti-aliasing filter (
gyro_anti_aliasing_lpf_hz
). In normal circumstances, there is no need to change this setting - All the other filters are running as part of the main PID task as before
- The gyro low-pass filter
gyro_lpf_hz
was renamed togyro_main_lpf_hz
New experimental features for Multirotors
- Smith Predictor on gyro signal helps to reduce the delay introduced by gyro filters. It's disabled by default. To enable, use
set smith_predictor_delay = 3
. More details about this feature will follow later - Alpha-Beta-Gamma filter is a relative of the Kalman filter and other prediction filters. Disabled by default. To enable,
set gyro_abg_alpha = 0.25
or higher value. It requires a very clean gyro signal or might introduce oscillations on the high throttle. If the multirotor started to vibrate after enabling the Alpha-Beta-Gamma filter, you either have to improve the gyro filter strategy or disable the ABG filter. It works great on some builds and not so great or other. It's up to you to test. - Dynamic Gyro Main LPF - Dynamic gyro LPF with the cutoff frequency depending on throttle position. To enable
set gyro_use_dyn_lpf=ON
and setgyro_dyn_lpf_min_hz
andgyro_dyn_lpf_max_hz
. Dynamic LPF replacesgyro_main_lpf_hz
Update EGNOS PRN mask to latest EGSA definition, fix SBAS for non-Galileo usage (@stronnag)
The EGNOS (GPS ground assistance) definitions have been updated to the latest values for all GNSS options. An invalid association with the availability of Galileo has been corrected.
Make CW270FLIP default MAG alignment (@DzikuVx)
New FCs rarely feature onboard compass, and most GPS+MAG default to CW270FLIP, so this is now the INAV default. If you use another value, check your setup after upgrading.
Rename NAV CRUISE mode to NAV COURSE HOLD and add CRUISE mode which is equivalent to CRSH+AH (@shellixyz)
To more clearly state what they do and how they work. It's a subtle, but worth it to change for sure!
Bump OSD font min version to 2 (@shellixyz)
Users must upgrade OSD Fonts to Version 2 (or later).
Delayed safehome (@tonyyng)
Safehome does not now replace the arming location until it is needed. If you cancel RTH or recover from RX failsafe, the original arming location is restored as the home location. Under normal circumstances, "distance to home" will revert to range from the arming location.
Switched RTH Preset Altitude Override (@breadoven)
Provides stick options to override configured RTH climb and/or turn behaviour. See the nav_rth_alt_control_override
setting description for details.
Renamed OSD SW and LEDLOW to OSD/LEDS OFF (@MrD-RC)
Modes names were changed to be more user friendly. When OSD OFF
is enabled, OSD will be turned off. When LED OFF
is enabled, LEDs will be turned off.
Fixed wing RTH Spiral Climb Option (@breadoven)
Yeap, now when nav_rth_climb_first
is set to ON_FW_SPIRAL
, Fixed Wing will keep litering and gaining altitude until it reaches desired altitude. Previously, it was climbing while flying straight in random direction
Do not slow down in WP mission when approaching a waypoint (@DzikuVx)
When nav_mc_wp_slowdown
is set to OFF
, Waypoint missions on Multirotors will be smoother as the NAV engine will not try to slow down before entering the waypoint and then accelerate towards the next waypoint. INAV will rather enter WP with normal speed, switch to the next waypoint and then adjust heading while flying.
Configure speed source for DJI OSD (@DzikuVx)
The default behavior of the DJI OSD speed element was to display a ground speed. osd_speed_source
can be set to GROUND, AIR or 3D speed depending on the preference
Ability to trim pitch angle for level flight (@DzikuVx)
- The flight controller trimming for level flight on Fixed Wings is no longer a recommended way to do so
- Board ROLL and PITCH settings should be changed only when the flight controller is not installed parallel to the wings plane
- pitch trim should be done using
fw_level_pitch_trim
setting. +5fw_level_pitch_trim
means airplane nose should be raised 5 deg from level - Flight mode
AUTO LEVEL
will automatically trim the pitch angle when ANGLE or HORIZON flight modes are used
vtx_smartaudio_early_akk_workaround option (@RomanLut)
If your old AKK VTX is not working, use vtx_smartaudio_early_akk_workaround
to fix it!
Added option to output servos on PWM and SBUS (@IVData)
Option for local plus codes on osd (@avsaase)
This adds the option to remove the first 2, 4, or 6 digits from the OSD plus code. Doing so requires a reference location (for example your current location when using Google Maps on your phone) within ~800, ~40, and ~2km, respectively.
Changed default settings for fixed-wing throttle smoothing in navigation modes (@Airwide)
Throttle smoothing in the navigation modes on fixed-wing aircraft is now enabled by default. This results in smoother throttle management and more efficient cruising.
Improved flight performance on planes with rudder (@avsaase)
In ACRO mode, you can mitigate the problem of the rudder fighting bank-and-yank turns by disabling the I-term when the bank angle is above a given threshold. Set the desired bank angle threshold on the Mechanics tab under PID tuning. 10 degrees is a good starting point. In the navigation modes, rudder handling is improved. As a consequence of this improvement, TURN ASSIST can no longer be used in ACRO mode.
Secondary IMU
INAV 3.0 supports, as an experimental feature, external BNO055 connected as either I2C or Serial device. Data from BNO055 can be used to display Artificial Horizon in OSD, Heading in OSD or drive the self-leveling ANGLE and HORIZON modes. Secondary IMU will not be used for navigation yet!
Altitude limit
Via #4442 it is now possible to limit maximum altitude for both Fixed Wings and Multirotors. nav_max_altitude
sets the max altitude in centimeters. Bear in mind, limit is active only with Altitude Hold mode and does not affect manual and acro flight modes
General Purpose PID controllers
INAV 3.0 comes with 4 general-purpose, user-programmable PID controllers that can be integrated with Logic Conditions and Global Variables. Why? Because why not! With the ability to override RC channels with Logic Conditions you can program your own heading, speed, altitude, whatever control.
All Changes since 2.6.1
- #6937 Set correct I2C bus for rangefinders on SpeeedyBeedF4
- #6936 Fix mistake in #6904
- #6935 Fix Mamba I2C targets
- #6930 CMS: fix some and add missing items in OSD menu
- #6929 Add power limits
- #6928 Make CW270FLIP default MAG alignment
- #6923 Correct a typo in Navigation.md
- #6914 Update H743 pin mapping in MC mode
- #6913 Update launch docs to clarify climb angle
- #6912 h7: fix vcp on cold boot & dfu reset
- #6905 H7 timer/pwm output support
- #6904 Add CRUISE mode which is equivalent to CRSH+AH
- #6902 Alpha-Beta-Gamma filter for gyro
- #6900 Smith Compensator on PID measurement
- #6896 OSD sidebar height option
- #6887 Antenna tracking - video telemetry
- #6878 Enforce limits from setting.yaml in RC adjustments and add the possib…
- #6876 settings.rb: enforce min/max for default_value when possible
- #6867 Diatone MambaF405US_I2C target
- #6866 Mamaba F722_I2C target
- #6864 Fixes 0 dBm at disarm page when using crsf
- #6863 Turtle mode optimization
- #6862 OSD efficiency units
- #6858 Add option to display min cell voltage instead of min pack voltage on the disarm screen
- #6857 OSD: Fix bug in font metadata handling
- #6856 Bump OSD font min version to 2
- #6853 Copter: add new setting for final landing vspeed instead of being hardcoded to 25% of set landing vspeed
- #6852 Fix WP mode Set Head not resetting when starting new WP mission
- #6846 Drop gyro_sync
- #6845 Turtle mode issue fix
- #6842 Fix DSHOT beeper reset template
- #6838 Stats pages fix
- #6830 Fix error handling in settings.rb:Generator#resolve_types
- #6828 Gyro processing improvements
- #6827 Minor F7 optimization
- #6826 Move Lagacy Boards from docs to Wiki
- #6822 WP Mission Landing Elevation Setting
- #6821 Renamed OSD SW and LEDLOW to OSD/LEDS OFF
- #6812 DShot Beeper
- #6807 ZEEZF7V2 target
- #6806 Fix int32_t microseconds overflow in navigation.
- #6805 Cell detection fix
- #6802 Serial interface for BNO055 IMU
- #6801 Add raw rangefinder distance to OSD
- #6800 Increase loiter max radius to 300m
- #6796 OSD: display power >1000W in kW
- #6795 Altitude debug mode
- #6794 Increase max cell count to 12
- #6792 Added rangefinder "GY-US42(v2) Ultrasonic Range Sensor"
- #6783 Homogenize OSD AHI settings prefix
- #6782 canvas: Honor ahi_max_pitch when drawing the horizon line
- #6758 HGLRCF722 add additional MC_MOTORS
- #6757 Version bump to 3.0
- #6750 Add GPS valid fix to programming
- #6748 fix incorrect sdmmc_sdio_f4xx error state
- #6738 RC via MAVLink & MAVLink V2 Support
- #6737 Add "prearm was reset" flag to prevent rearming without resetting prearm & add prearm timeout
- #6727 Set failsafe procedure from OSD
- #6726 Detect launch on gps speed
- #6720 Enable report_cell_voltage support for CRSF telemetry
- #6704 Arming screen changes
- #6699 Add modulus operator support
- #6696 Fix the timer and DMA conflicts in the target, resolves #6303
- #6695 Do not slow down in WP mission when approaching a waypoint
- #6693 Add support for GHST GPS Telemetry
- #6692 Fix compiler warnings when #define use_lights, fix F3 targets compilation
- #6687 Fix Serial RX and ICM20689 Target YUPIF7
- #6685 Flip over after crash aka TURTLE MODE
- #6678 Remove the OPFLOW_PMW3901 opflow hardware option
- #6676 Update Docs to correct LC VBAT scale
- #6674 Separate D and CD/FF adjustments
- #6671 Small docs update
- #6669 Add D-term to control loop on fixed wing
- #6664 Add an ability not to slow down when switching to the next waypoint
- #6662 WP mission sealevel altitude datum
- #6660 Limit the size of OSD DEBUG element
- #6658 Change PIDFF settings in CMS to UINT16
- #6655 Delayed safehome
- #6646 Update docs for Lua telemetry
- #6644 Adds heading target logic condition
- #6625 Add ability to read Programming PID status via MSP
- #6623 Add MATEKF405CAN board; Add support for RM3100 compass on SPI bus
- #6616 Camera uptilt AHI compensation
- #6610 Allow to configure speed source for DJI OSD
- #6604 CRSF SNR Range
- #6598 Add OSD Stats pages and some crsf formatting fixes
- #6595 Get setting default values from settings.yaml
- #6588 Increase the number or mode ranges
- #6581 Increased fw loiter radius default
- #6578 Removed mc_ from airmode CLI variables
- #6572 Feature/rangefinder vl53l1x
- #6568 Ability to trim pitch angle for level flight
- #6566 Extract navigation PID controller to separate module
- #6562 [FEATURE] Prearm
- #6556 Remove duplicate waypoints messages in the OSD/Hud
- #6544 build: Use -Os for F7 targets with flash <= 512K
- #6543 Allow 20 second compass calibration
- #6537 Update Buzzer.md
- #6510 Add a new MSP2_INAV_MISC2 message type
- #6501 Pan servo home direction offset
- #6495 FLYWOOF411_V2 based on target files from vendor
- #6493 report launch flight mode with higher priority
- #6492 ZEEZF7 Add VTX power on/off via PINIO on pin PB11
- #6488 Blink osd power on current draw alarm
- #6487 Remove unused UAV_INTERCONNECT
- #6486 Fix "maybe uninitialised" variables with MinSizeRel
- #6479 GPS failure indication improvements
- #6473 Add section for Omnibus Corner Nano to Omnibus F4 board doc
- #6470 Do not show efficiency on osd when ground speed is below 1 m/s
- #6469 Option for local plus codes on osd
- #6464 ZEEZF7 MSP-based GPS, magnetometer and barometer
- #6458 added vtx_smartaudio_early_akk_workaround option
- #6437 Fixed wing RTH Spiral Climb Option
- #6434 Correct test for Galileo capability
- #6433 Set default gyro LPF to 256Hz
- #6431 update EGNOS PRN mask to latest EGSA definition, fix SBAS for non-Galileo usage.
- #6430 Fix Nav Launch detection related bugs
- #6420 add MSP for setting and getting safe homes
- #6419 update
Cmake usage.md
forsrc/main/CMakeLists.txt
. - #6407 TURN ASSIST improvements for Fixed Wing
- #6404 Do not run tests for docs-only PRs
- #6403 Trigger docs CI on PRs
- #6395 Add note about Google Maps coordinates in Safehomes docs
- #6391 Added pitch2thr smoothing defaults to pg_reset_template
- #6387 Freeze yaw I-term above bank angle threshold
- #6384 Fix EEPROM loading code
- #6383 Enable DSHOT support on FF_F35/WINGFC
- #6376 Improve nav_overrides_motor_stop documentation
- #6375 [BUILD] Update the toolchain to gcc-9.3.1
- #6374 build: deduplicate version number
- #6373 Bump cmake version
- #6372 update NAV_PERSISTENT_ID_RTH_HOVER_ABOVE_HOME so the IDs are really unique
- #6370 Increase version to 2.7.0
- #6369 Back-merge release 2.6.0 branch into master
- #6368 Improve virtual current sensor for Nav modes with throttle stop override
- #6365 Add user programmable PID controllers to a Programming Framework
- #6361 Changed default settings for fixed wing throttle smoothing in navigation modes
- #6357 Cleanup unused SPI receivers
- #6356 [MATEKF405] Add the possibility of MC servo on S7
- #6353 [Target] Matek F411WSE: Softserial1 Full Duplex
- #6345 Always use rxGetChannelValue instead of rxGetRawChannelValue
- #6344 Add version to osd
- #6341 Allow Logic Conditions to override RC channels
- #6337 automatically raise BIDIR flag on softserial port if RX and TX pins are set to the same pin
- #6333 Add safehome_max_distance option. Choose nearest safehome.
- #6329 TPA OSD element bugfix
- #6323 Disable all F3 targets
- #6322 Dynamic gyro LPF
- #6321 Precompute k for PT1 filter
- #6297 Rename NAV CRUISE mode to NAV COURSE HOLD
- #6180 Add driver for BMI088 IMU
- #6179 Switched RTH Preset Altitude Override
- #6166 Add MATEKF411SE_PINIO target
- #6106 Added option to output servos on PWM and SBUS
- #6050 Added state NAV_STATE_WAYPOINT_HOVER_ABOVE_HOME
- #5827 [H7] Initial cut on H7 MCU support
- #5100 BNO055 Secondary IMU
Recommended hardware
Flight controllers
Airplane models
Radios
Long range radio systems
GPS & Sensors
- Matek M8Q-5883
- Beitian BN880Q GPS+COMPASS
- Beitian BN880 GPS+COMPASS
- Matek Lidar+OpFlow board
- Matek Digital Airspeed Sensor
- Benewake TFmini Lidar
- VL53L0X Lidar
FPV
- Foxeer T-Rex FPV camera
- RunCam Eagle 3 FPV camera
- Caddx Ratel 2 FPV camera
- Caddx Vista HD
- Rush Tank Ultimate
- Matek 1G3 video transmitter and receiver
- Eachine Cobra X FPV goggles
- Skyzone SKY04X FPV goggles
Other
You can get more suggestions following this link too.