Sunday, 25 June 2023

Simplified INAV

How to simplify INAV model setup and start flying sooner.

The key to simplicity is having a plane that is trimmed and balanced well mechanically, and just starting with the basic INAV modes. The default tuning PIFFs (stabilisation parameters) will be OK for most normal performance planes using INAV 6 and beyond.

The advanced modes like Auto Launch, Auto Tune, Auto Trim and Missions will just complicate your first INAV experience. It is much simpler and safer to get the model flying well first, then add advanced modes later.

This article is intended for fixed wing pilots who know how to mechanically set up a model for correct throws, trims and CG. 

Start with a model that is easy to fly and has adjustable push rods.

INAV manual mode uses 100% weight and 30% expo by default. So before you install the flight control board, adjust the pushrod lengths and connection holes to give reasonable throws using 100% servo travel. 

Aim for about 15mm or 20º max throw up and down. This also maximises the torque and resolution  of the servo.

This usually means moving the pushrod to an inner hole on the servo arm and an outer hole on the control surface horn. 

If possible, fly the model first to check aileron and elevator trims and CG placement. Adjust the trims by changing the pushrod lengths mechanically and don't use the radio trims.  If you can't fly first just make sure the control surfaces are level or have the recommended amount of reflex.

Radio trims should never be used in INAV because they are only fully applied in manual mode. Switching to other modes will give different trims.

The initial setup doesn't have to be perfect and it's OK if the plane is a little too agile with these full throws, as long as it is flyable.

Once the plane is close to good trim you can enable "Continuously trim servos" in the Configuration page. This will continuously save fine adjustments to the servo midpoints for level flight in Manual.


Essential INAV Modes

The only modes you need to set up initially are ACRO, ANGLE, MANUAL and RTH

ACRO is the default INAV mode and is active if no other mode is selected. In ACRO the plane is stabilised against any un-commanded rotations, like a side gust of wind. The model will tend to hold its orientation but respond normally to your stick inputs. ACRO is arguably the best general flying mode.

MANUAL is a mode that has to be selected, it is not the default mode. There is no stabilisation at all in this mode. Stick inputs are passed straight through to the servos, with whatever expo and rates are set up in INAV. It is used to check trim and CG balance, and for safety if something is wrong with other modes. Experienced pilots may prefer to fly in MANUAL mode.

ANGLE is the fully self levelling stabilised mode. It is a mode by itself, but it is also active when any of the nav or GPS modes are used. In this simplified INAV setup it is also used to check board pitch trim. Most airfoils need a few degrees of "nose-up" or "angle of attack" to maintain level flight. This trim setting can be found in the PIDS page - Mechanics Tab - LEVEL TRIM (deg). I usually start with +4 degrees then check if the plane is rising or descending in ANGLE mode and adjust as required.

Flying in ANGLE mode may feel odd to experienced pilots because you have to hold the sticks at the angle you want to fly at and it will self level when you centre the sticks. 

RTH mode uses GPS data to automatically fly the model back to the home location. It can also be set as the Failsafe action, to bring the model back home if RC signal is lost. In the INAV Failsafe screen choose RTH.

The above modes are all you need for a basic setup.

If you have more than one mode selected at the same time then INAV follows the following hierarchy:

RTH is top of the tree and overrides all other modes, then Manual, then all other modes. Angle is always active when any of the GPS guided NAV modes are selected. 

Non-essential INAV modes to add once you have a working model

NAV LAUNCH is fun to play with but I prefer to launch normally with full control. It is easy to muck up the switch sequence and cause a failed launch. 

CRUISE and LOITER modes are useful for FPV flights but not essential.

AUTO TUNE is used to fine tune rotation rates and throws

AUTO TRIM is not needed if  Continuously trim servos is enabled

Mode switches

It is best to have your starting switch positions with no modes selected, which means the board will always start in ACRO

Here are my modes for the simple setup

CH 5 (2 position) Nothing - ARM 

Arming on CH 5 is essential for ELRS receivers

CH 6 (3 position) Nothing - ANGLE - MANUAL

CH 7 (2 position) Nothing - RTH


Extra modes to add once your INAV setup is flying well

CH 8 (3 position) Nothing - NAV CRUISE - NAV LOITER


Note that when all switches are in the "Nothing" range the board will be in ACRO 


BEFORE THE FIRST FLIGHT

Check the control surfaces are responding correctly to stick movements. 

Do the High 5 check.

Check the control surfaces are responding correctly for stabilisation. 

Switch to Angle Mode and roll the plane to the right. Check that the left aileron moves up and right aileron moves down to counter the roll. Lift the tail up and check that the elevator moves up to counter the pitch change.

ACRO Throws

Check the control surface throws in ACRO Mode. They may be too small for sufficient control. Ideally they should be about 80% of the Manual Mode throws. If the throws are too small go to the PID Tuning page and increase the FF parameter for Roll and Pitch, then check throws again. If there is no difference between ACRO and MANUAL Mode throws then FF is too high. 

This will ensure you have enough control to launch in ACRO Mode and some headroom for stabilisation.

First Flight adjustments

On the first flight I will launch in MANUAL then switch to ACRO and fly a few circuits to make sure the plane is flying OK. 


Switch to ANGLE mode. Take note of whether the model holds altitude or climbs or descends. If you haven't entered anything in the Fixed Wing Level Trim window then the plane will most likely descend.

I usually start with +4º and adjust more or less from there.


Launch again, climb to about 50m, fly out a bit then try RTH. Your model should turn and fly back to the arming site and circle above you at about 50m altitude and radius of 75m.

If that all works then you are ready to continue your INAV adventure.

INAV trouble-shooting checklist

What to check if your INAV setup is misbehaving

1. Flight Control Board orientation

Check that the model animation in the INAV setup page moves in the same direction as the actual plane.

If not, you will need to use the Alignment tool to tell INAV how you have mounted the board.




2. Radio setup

The model setup must have no mixing, no rates, no expo, no flight modes and no trims. Just 100% inputs for the first 4 channels. 

The plane-type selection, mixing, rates and expo are set up in INAV, not the radio.

GOLDEN RULE - Don't edit or reuse an existing model setup for INAV. Make a fresh blank model in your radio to ensure there are no leftover mixes, trims, logical switches or overrides.


Configure your model like this -

Ch1 - 100% Aileron 

Ch2  - 100% Elevator 

Ch3 - 100% Throttle

Ch4 - 100% Rudder

Ch5 - usually Arming switch (mandatory for ELRS)

Ch6 Ch7 Ch8 Ch9 etc - Mode switches



The model configuration works for flying wings, conventional planes, twins, V-Tails and even quads



Connect your receiver to the designated Serial RX UART on the FC and connect the FC to your computer. 

Check that the channel bars in the receiver page move to the right when the 4 sticks are moved up and right. This makes sure the stabilisation will work in the correct direction.

If a channel bar moves the wrong way you have an inverted channel in your radio. Go back to your radio and edit your model setup to un-invert the offending channel. This may happen if you have reused a previous model setup.

Note that the Roll Pitch Yaw Throttle bars do not match the channel order of Ch1 Ch2 Ch3 Ch4. As long as the stick inputs give the correct response all is good.


3. Receiver connection

If the channel bars don't move at all when you move the sticks - 

Check receiver is actually bound correctly to the INAV model in your transmitter. Test with a servo/signal checker if in doubt. 

Check the receiver is powered on. Not all boards provide power to the receiver via the USB plug. Some need a battery connected to the FC.

Check your receiver is actually producing a serial signal like SBUS, iBUS or CRSF. Some receivers need to be switched from PWM to Serial output. 

Check the receiver is plugged in to the correct UART on the board and this UART is set to Serial RX in the Ports page. 

SBUS receivers often connect to UART2, with SBUS signal on the RX2 pin or the designated SBUS pin.

For ELRS receivers check Receiver RX is connected to UART TX and Receiver TX is connected to UART RX

Check the correct Serial Receiver Provider is selected in the Receiver page - CRSF for ELRS and TBS,  SBUS for FrSKY, iBUS or SBUS for FlySKY.



4. Control surface movement

A. Stick movements

If a control surface moves in the wrong direction when you move the sticks - 

For control surfaces on a normal plane you can invert the channel in the Outputs page 

For control surfaces with mixed inputs, like Elevons or V-Tails, reverse the Weight in the INAV Mixer page for the offending control surface mixer line. For example - If the left elevator on this V-Tail is going down instead of up, change the Stabilised Pitch weight from 50 to -50 for S3

If you need to adjust the throws, change the weight in the INAV mixer or Outputs page.


B. Stabilisation

In Angle mode and keeping the sticks centred, if the control surfaces move the wrong way when you roll or pitch the plane.

Re-check your flight control board orientation, as in section 1 above.

Re-check the movement of the channel bars in the receiver page, as in section 2 above.


5. GPS

If the GPS icon is greyed out or red -

Check the GPS is connected to the correct UART.

Look in the Ports page for the UART with GPS selected.




Check "GPS for telemetry and navigation" is turned on in the Configurations page

Connect the GPS to the recommended GPS UART (or any spare UART) and select GPS as the sensor on that UART in the PORTS page

Normal UART connection - G to G, V to 5V, RX to TX, TX to RX

Compass connection is not required for fixed wing INAV.  GPS can provide all the required heading data. A poorly calibrated compass will cause problems.

Check the GPS has power. Some boards can power the GPS through the USB, others may require the battery to be connected

Once it is connected correctly and powered up the GPS icon (top of configurator window) should turn blue and the Total Messages number (GPS page) should start counting up.


Now it's just a matter of placing the GPS with a clear view of the sky and antenna facing up, and waiting for satellites to be acquired. This can take from a few minutes to over 10 minutes if this is the first connection.


6. Connections

If you are still having problems it's time to go over your connection again.


Check your receiver, ESC, GPS and servos are plugged in where they are meant to be and the right way around. Look at the wiring diagrams on the product page.

Things that often catch me out are -

SBUS-Out from the FrSKY X8R and X6R receivers are in different places.

Changing from SBUS to ELRS on the SpeedyBee F405 Wing, also have to change from UART2 to UART1. 

Layout of the pins on the Matek F405 Wing is quite different to many other Matek boards.

Also check for bent pins and solder bridges.


7. Correct firmware target

Check on the product page or manual for the correct firmware target for your board. 

The target name is sometimes not obvious. For example for the Matek F405 Wing firmware target is MatekF405SE. 

The SpeedyBee F405 Wing MINI uses the SpeedybeeF405Wing firmware target, not the SpeedybeeF405mini firmware target.

With incorrect firmware, some functions may work OK but some will not.


8. ESC constantly beeping

If your ESC beeps continuously it either means your receiver is not connected or the ESC needs calibration.

Make sure you have the correct protocol selected for your ESC in the Outputs page. If in doubt leave it at Standard.

ESC calibration in INAV

Connect the ESC and motor to the board

Remove the prop! Disconnect the flight battery

Go to the Outputs page

1. Slide the "I understand the risks..." button to the right

2. Move the Master slider to the maximum 

3. Connect the flight battery and wait for the ESC calibration beep

4. Slide the slider to the minimum and listen for the ESC calibration-done beeps.

Test the motor spin up by carefully raising the Master slider just a tiny amount


9. Motor will not arm

If a GPS is connected then at least 6 satellites and 3D position lock are required for arming.

If you are not using GPS then the Failsafe setting must be Land or Do Nothing, because RTH will prevent arming.

If all the control surfaces are working but the motor won't arm, look along the bottom of the INAV window for Arming flags or error messages. 

There must be no NAV modes selected when trying to arm.


10. Servo voltage

It is safest to leave the servo BEC voltage at 5V for widest compatibility. If you have changed to 6V or 8V on the servo BEC make sure your servos can handle it.

Check that all your servos are functional. One burned out servo will stop all of them working.


11. Board will not connect to the INAV Configurator.

Instal the required USB drivers on to your PC. Recent Macs will already have the drivers. See the Configurator front page for driver links.

With some boards GPS may prevent USB connection so disconnect it and try again. Some programs running in the background may also prevent USB connection. CURA is the culprit on my Mac.