Skip to content

INAV for BetaFlight users

Daniel Ribeiro edited this page May 16, 2020 · 13 revisions

Do you already know how to setup and fly a BetaFlight multirotor, and now is willing to try INAV?

Good! You are on the right place.

INAV and BetaFlight are forks from CleanFlight, but nowadays they are all very different from each other.

While BetaFlight evolved to provide good flight performance for multirotors in ACRO mode, INAV evolved to provide flight reliability, navigation capabilities and vehicle configuration diversity.

INAV works on quadcopters like BetaFlight, but it also works on [bi|tri|hexa|octa]copters, fixed-wing aircrafts like airplanes, gliders and flying wings, rovers like cars and tanks, and boats.

Besides this big differences, INAV and BetaFlight still shares lots of features in common, and it's quite normal to see some code being ported to and from one flight controller software to another.

If you already know how to setup a BetaFlight multirotor aircraft, you already know most of what you need to setup an INAV multirotor as well. The INAV configurator and the BetaFlight configurator are very similar. You probably won’t have any problems to understand it. To flash INAV on your Flight Controller board, the process is the same: Go to Firmware Flasher tab on the INAV Configurator and select the proper TARGET.

Let's then review the differences:

  • Not all Flight Controller boards have a proper target for INAV. But the most common ones do.

  • After flashing, the first time you connect your FC board to INAV configurator, it'll ask you to load a preset. Do it, as it'll make things easier from now on.

  • The accelerometer and gyroscope calibration is mandatory on INAV, and it’s a 6-step process (different from BetaFlight, which is an optional single-step process). Follow screen instructions and you’ll be fine.

  • For a fully autonomous multirotor (with automatic navigation capabilities), Flight Controller board must have an onboard barometer sensor. INAV can't navigate without one (on a multirotor aircraft).

  • Also, you have to cover the barometer sensor with a small piece of non-blocking foam, because the wind affects the sensor readings.

  • The GPS module must be fitted with a magnetometer sensor. GPS modules without mag do not allow INAV to navigate and will only be useful for log purposes.

  • GPS module must be mounted on a small mast pole to avoid magnetic interference from motors on the compass. 5 or 6 centimeters above motors should be fine.

FPV Quadcopter with GPS mast

FPV Quadcopter with GPS mast

  • INAV does NOT have the resource remapping feature, which means that you can't change the motors order. Be careful to wire the motors signal wires on the correct order.
  • INAV supports DShot ESC protocol, but it doesn’t behave the same way as in BetaFlight. DShot 150 or 300 is more than enough for a reliable flight. Faster protocols will reduce the reliability, so avoid using them.
  • INAV supports loop frequencies up to 8khz, but flies just fine with 2kHz. There’s no real benefit to use such higher frequencies as it will only make the CPU more busy for others tasks.
  • DShot telemetry is supported, but not Bi-directional single-wire telemetry (it'll be supported soon).

Most important settings you should take a look before first flight

  • set nav_mc_hover_thr = 1450 # Base throttle value that aircraft will use for altitude hold
  • set max_angle_inclination_rll = 450 # Maximum bank angle allowed in ANGLE mode, in decidegrees (for roll)
  • set max_angle_inclination_pit = 450 # Maximum bank angle allowed in ANGLE mode, in decidegrees (for pitch)
  • set nav_mc_bank_angle = 25 # Max bank angle that aircraft will do in automatic modes, in degrees (constrained by max_angle_inclination_rll and max_angle_inclination_pit)
  • set throttle_idle = 5 # Set the minimal motor speed (in percent). The default is 15, which can be high for modern ESCs.
  • set small_angle = 180 # Let aircraft arm in any angle
  • set gps_ublox_use_galileo = ON # Let GPS module use galileo satellites if it is supported (check local regulations about it)
  • set nav_extra_arming_safety = OFF # Let aircraft arm without GPS 3D fix (careful, navigation will not work if you do that!)
  • set nav_wp_radius = 500 # Radius in centimeters to consider a waypoint reached
  • set nav_wp_safe_distance = 20000 # If the first waypoint of a loaded mission is further than this value (in centimeters), INAV will not allow to arm.
  • set nav_auto_speed = 1300 # Aircraft ground speed on automatic modes (in centimeters per second)
  • set nav_auto_climb_rate = 200 # Aircraft vertical speed on automatic modes (centimeters per second)
  • set nav_rth_allow_landing = FS_ONLY # Allow aircraft to land by itself only if it’s in a Failsafe state.
  • set nav_rth_altitude = 5000 # Altitude that aircraft will try to reach when doing RTH (in centimeters)
  • set nav_rth_alt_mode = AT_LEAST_LINEAR_DESCENT # Allow aircraft to come home descending to the RTH altitude. It saves energy by trading altitude for speed.

Linear descend demonstration graphic

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

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