Skip to main content
Version: Next

Stick Controls

In addition to being able to access INAV settings through INAV configurator, the settings can be changed with a radio without the need for Configurator.

Arming​

When armed, the aircraft is ready to fly and the motors will spin when throttle is applied. With multirotors, the motors will spin at a slow speed when armed (this feature may be disabled by setting MOTOR_STOP, but for safety reasons, that is not recommended).

Arming and disarming is done using a switch, set up on the modes page. (NOTE: Stick arming was removed in INAV 2.2)

Arming Override​

Arming is disabled when Nav modes are configured and no GPS lock is available or if a waypoint mission is loaded but the first WP is farther than the nav_wp_safe_distance setting. This Arming block can be bypassed if need be by setting nav_extra_arming_safety to ALLOW_BYPASS and moving the Yaw stick to the high position (usually full right rudder) when the Arm switch is used. This bypasses GPS Arm blocking pre INAV 4.0.0 and both GPS and "First WP too far" Arm blocking from INAV 4.0.0.

Stick Positions​

The three stick positions are:

PositionApprox. Channel Input
LOW1000
CENTER1500
HIGH2000

The stick positions are combined to activate different functions:

FunctionThrottleYawPitchRoll
Control Profile 1LOWLOWCENTERLOW
Control Profile 2LOWLOWHIGHCENTER
Control Profile 3LOWLOWCENTERHIGH
Battery profile 1HIGHLOWCENTERLOW
Battery profile 2HIGHLOWHIGHCENTER
Battery profile 3HIGHLOWCENTERHIGH
Calibrate GyroLOWLOWLOWCENTER
Calibrate AccHIGHLOWLOWCENTER
Calibrate Compass/Zero YawHIGHHIGHLOWCENTER
Trim Acc LeftHIGHCENTERCENTERLOW
Trim Acc RightHIGHCENTERCENTERHIGH
Trim Acc ForwardsHIGHCENTERHIGHCENTER
Trim Acc BackwardsHIGHCENTERLOWCENTER
Save current waypoint missionLOWCENTERHIGHLOW
Load current waypoint missionLOWCENTERHIGHHIGH
Unload waypoint missionLOWCENTERLOWHIGH
Increase WP mission indexLOWCENTERCENTERHIGH
Decrease WP mission indexLOWCENTERCENTERLOW
Bypass Nav Arm disableLOWHIGHCENTERCENTER
Save settingLOWLOWLOWHIGH
Enter OSD Menu (CMS)CENTERLOWHIGHCENTER
Enter Camera OSD(RuncamDevice)CENTERHIGHCENTERCENTER
Exit Camera OSD (RuncamDevice)CENTERLOWCENTERCENTER
Confirm - Camera OSDCENTERHIGHCENTERCENTER
Navigation - Camera OSDCENTERCENTER**

For graphical stick position in all transmitter modes, check out this page.

Stick Positions

Compass Calibration and Yaw Zero Reset​

The stick function Calibrate Compass/Zero Yaw provides 2 functions depending on whether or not a compass is available.

If a compass is available the stick function initiates the compass calibration routine.

If no compass is available the stick function will reset the current yaw/heading estimate to zero (North) and also set the heading as trusted. This is useful on multirotors, allowing the craft yaw/heading to be correctly aligned to actual North simply by physically pointing the craft North then using the stick function to zero the yaw estimate. Since this also sets the heading as trusted Nav modes reliant on heading will be available immediately after arming without the need to fly fast enough to obtain a valid heading from GPS ground course.

Yaw Control​

While arming/disarming with sticks, your yaw stick will be moving to extreme values. To prevent your craft from trying to yaw during arming/disarming while on the ground, your yaw input will not cause the craft to yaw when the throttle is LOW (i.e. below the min_check setting).

For tricopters, you may want to retain the ability to yaw while on the ground, so that you can verify that your tail servo is working correctly before takeoff. You can do this by setting tri_unarmed_servo to 1 on the CLI (this is the default). If you are having issues with your tail rotor contacting the ground during arm/disarm, you can set this to 0 instead. Check this table to decide which setting will suit you:

Is yaw control of the tricopter allowed?
DisarmedArmed
Throttle lowThrottle normalThrottle lowThrottle normal
tri_unarmed_servo = 0NoNoNoYes
NoNoNoYes
tri_unarmed_servo = 1YesYesYesYes
YesYesYesYes

Throttle Settings and Their Interaction​

Terminology. After INAV 2.3, the setting min_throttle was replaced with throttle_idle which is more appropriate to modern hardware. In this document min_throttle may be taken as either the older min_throttle value, or the throttle value calculated from the modern throttle_idle setting. The way that throttle_idle generates a throttle value is described in Cli.md.

min_command - With motor stop enabled this is the command sent to the esc's when the throttle is below min_check or disarmed. With motor stop disabled, this is the command sent only when the copter is disarmed. This must be set well below motors spinning for safety.

min_check - With switch arming mode is in use, lowering your throttle below min_check will result in motors spinning at throttle_idle (min_throttle). When using the default stick arming, lowering your throttle below min_check will result in motors spinning at min_throttle and yaw being disabled so that you may arm/disarm. With motor stop enabled, lowering your throttle below min_check will also result in motors off and the esc's being sent min_command. Min_check must be set to a level that is 100% reliably met by the throttle throw. A setting too low may result in a dangerous condition where the copter can’t be disarmed. It is ok to set this below throttle_idle (min_throttle) because the FC will automaticly scale the output to the ESCs

throttle_idle (previously min_throttle) - Typically set to just above reliable spin up of all motors. Sometimes this is set slightly higher for prop stall prevention during advanced maneuvers or sometimes considerably higher to produce a desired result. When armed with motor stop off, your motors will spin at this command so keep that in mind from a safety stand point.

max_check - Throttle positions above this level will send max_command to the ESCs.

max_throttle - This is the max command to the ESCs from the flight controller.