Share anonymous usage countsiynk counts what happens in the labs (a lesson passed, a step built, a fault tried) for the live counters and leaderboards. Each event carries a random id for this browser, never your name or your code.
The XT60 lead is soldered to the power board's BAT pads (2 to 6S), with the 470 µF 35 V low-ESR capacitor across them, stripe to minus.
power:→PDB ESC pads · through the 90 A current sensor
The ESC takes its power from the power board's ESC pads, after the 90 A current sensor, so the OSD shows amps and mAh used.
data / signal:→S1 · motor 1 · OneShot125 (INAV default)
The ESC signal from pad S1: motor 1, OneShot125 (INAV's default). The ESC's own BEC lead stays unconnected.
motor phases:→3-phase A/B/C · 3.5 mm bullets
Three phase wires on 3.5 mm bullets. Swap any two to reverse the motor.
data / signal:→S3 + S4 · servo rail 4.9 V BEC (6 / 7.2 V jumper)
Servo 1 on S3 and servo 2 on S4, powered by the servo BEC at 4.9 V (6 or 7.2 V by a jumper, only if the servos are rated for it). Brown or black is ground, red is plus, orange or white is the signal.
data / signal:→UART1 · CRSF · 5 V
ELRS on UART1 with CRSF: receiver TX to RX1 and RX to TX1, plus 5 V and ground.
data / signal:→UART3 · UBLOX + I2C1 SCL / SDA (compass) · 5 V
One lead: the GPS on UART3 (u-blox protocol), the compass on I2C1 (SCL and SDA), 5 V and ground.
video:→CAM · CVBS · 5 V
Camera video into the CAM pad, with 5 V and ground. INAV's OSD chip writes over it.
Video with the OSD out of the VTX pad, 9 V from the VTX BEC, and SmartAudio on a spare UART so INAV sets the band, channel and power.
Safety tests
Real builds get these checks before the first flight. Run them in order: the figure enforces what each one needs.
Tests 0/8
1.
Smoke stopper test
Not run yet
How it is done
A smoke stopper (a fuse or current-limiting lamp in the battery lead) goes between the pack and the craft for the very first power-up. If something is shorted, the lamp lights instead of the ESC burning.
2.
Motor direction check (prop off)
Not run yet
How it is done
Props off, battery in: spin each motor alone from the Motors tab and compare its direction with the frame diagram. A wrong one is reversed in the ESC configurator, never by guessing.
3.
Accelerometer calibration (wing level)
Not run yet
How it is done
With the craft on a level surface, calibrate the accelerometer so the self-levelling modes know which way is down.
4.
Elevon check (sticks and stabiliser)
Not run yet
How it is done
Tilt the wing and move the sticks: each elevon must move the right way in manual and in the stabilised modes.
5.
CG check
Not run yet
How it is done
Balance the airframe on your fingertips at the marked CG point: it should sit level or very slightly nose down.
6.
Compass calibration
Not run yet
How it is done
Rotate the craft through every axis until the compass calibration completes, far from steel and power cables.
7.
Virtual airspeed check
Not run yet
How it is done
Cover the pitot tube from the wind and zero the airspeed sensor before the flight.
8.
Failsafe test (prop off)
Not run yet
How it is done
Props off and armed, switch the radio off: the craft must carry out its failsafe action, not hold the last stick positions.
INAV CLI console
A working emulation of the INAV command line for this craft: real setting names, real limits and real error messages.
Entering CLI Mode, type 'exit' to return, or 'help'
Up and down recall earlier commands.
Configuration snippets
First setup: the Flying Wing preset after the build
The Configurator's Flying Wing preset, typed in the CLI. Since INAV 7 the mixer lives in mixer profiles, and a plain wing only uses profile 1. motorstop_on_low keeps the prop still at low throttle (old guides say feature MOTOR_STOP, which no longer exists). mmix 0 gives motor 1, on pad S1, throttle only. Each smix line is rule, servo, input, weight: both servos take +50 % of pitch (input 1), and roll (input 0) at +50 % on one and -50 % on the other, so pitch moves them together and roll moves them apart. That is an elevon. Then CRSF for the receiver on UART1 and the GPS on UART3.
# INAV 9.1.0, SPEEDYBEEF405WING: the Configurator "Flying Wing" preset, in the CLI tabmixer_profile 1set platform_type = AIRPLANEset motorstop_on_low = ONmmix reset
mmix01.0000.0000.0000.000# motor 1 = pad S1: throttle onlysmix reset
smix010500-1# servo 1 (pad S3): stabilised roll +50 %smix111500-1# servo 1: stabilised pitch +50 %smix220-500-1# servo 2 (pad S4): stabilised roll -50 %smix321500-1# servo 2: stabilised pitch +50 %set serialrx_provider = CRSF# ELRS on UART1featureGPS# M10 on UART3save
Servo travel, direction and level trim after the build
servo takes the travel in microseconds (min, max, centre) and a rate: a negative rate reverses that servo, so give it -100 if the elevon check shows it moving the wrong way. fw_level_pitch_trim is the nose-up angle ANGLE mode holds as level; most wings want 1 to 4 degrees, and the AUTO LEVEL TRIM mode learns it in flight. align_board_yaw is in tenths of a degree: 1800 if the flight controller is mounted arrow backwards.
# servo <n> <min us> <max us> <mid us> <rate %>: a negative rate reverses that servoservo 1100020001500100servo 2100020001500100# -100 if "Check elevons" shows it backwardsset fw_level_pitch_trim = 0# deg nose-up in ANGLE; AUTO LEVEL TRIM learns itset align_board_yaw = 0# decidegrees: 1800 if the FC arrow points backsave
Switches: arm, flight modes, launch, RTH after the build
INAV's aux takes the slot, the mode's number, the channel (0 = AUX1) and the range in microseconds. Mode numbers: 0 ARM, 12 MANUAL, 1 ANGLE, 53 NAV CRUISE, 36 NAV LAUNCH, 10 NAV RTH. A three-position switch on AUX2 picks MANUAL, ANGLE or CRUISE; CRUISE holds the heading and the height, and the sticks change them.
# aux <slot> <mode id> <AUX n - 1> <from us> <to us>aux00017002100# ARM on AUX1 highaux11219001300# MANUAL on AUX2 lowaux21113001700# ANGLE on AUX2 midaux353117002100# NAV CRUISE on AUX2 highaux436217002100# NAV LAUNCH on AUX3 highaux510317002100# NAV RTH on AUX4 highsave
NAV LAUNCH after the build
Arm, switch NAV LAUNCH on (AUX3), raise the throttle (the motor stays at idle) and throw. INAV sees the throw, waits nav_fw_launch_motor_delay (0.5 s, so the prop is clear of your hand), runs the motor at 1700 µs and climbs at 18 degrees nose up until the timeout, 5 s, then hands over. These are INAV's defaults, written out so you can see and change them.
# NAV LAUNCH: arm, select launch, raise the throttle (the prop stays still), throwset nav_fw_launch_thr = 1700# us after the throwset nav_fw_launch_motor_delay = 500# ms: the prop starts after it leaves your handset nav_fw_launch_climb_angle = 18# deg nose-up climb-outset nav_fw_launch_timeout = 5000# ms, then normal flightsave
Failsafe: fly home after the build
INAV's default failsafe is LAND, which on a wing circles down wherever it is. RTH flies it home instead. failsafe_delay and failsafe_recovery_delay are in tenths of a second: 0.5 s of lost link before the failsafe starts, 0.5 s of good link before it can end. failsafe_stick_threshold is how far you must move a stick to take control back.
# Lost link: come home on GPS instead of the default LANDset failsafe_procedure = RTHset failsafe_delay = 5# deciseconds before failsafe startsset failsafe_recovery_delay = 5# deciseconds of good link to give control backset failsafe_stick_threshold = 50# stick movement that takes control backsave
Airspeed without a pitot tube after the build
VIRTUAL estimates the airspeed from the GPS speed and the wind. fw_reference_airspeed is the airspeed the PIDs were tuned at, 1500 cm/s (15 m/s), used to coordinate turns. nav_fw_cruise_speed only feeds the remaining flight time on the OSD; it does not set how fast INAV flies.
# No pitot tube: INAV estimates airspeed from GPS speed and the windset pitot_hardware = VIRTUALset fw_reference_airspeed = 1500# cm/s the PIDs were tuned atset nav_fw_cruise_speed = 1500# cm/s, only for the remaining-time estimatesave
Angle mode for Angle mode
INAV levels the wing when you let go and never banks it past max_angle_inclination_rll: 450 tenths of a degree, 45 degrees. fw_level_pitch_trim stays 0 here; if the wing slowly climbs or dives hands-off, trim it.
# ANGLE: INAV levels the wing when you let go of the sticksaux21113001700# ANGLE on AUX2 midset max_angle_inclination_rll = 450# decidegrees: 45 deg bank limitset fw_level_pitch_trim = 0save
Manual for Manual
MANUAL passes the sticks straight to the elevons: nothing levels or steadies the wing. manual_roll_rate and manual_pitch_rate are the percent of servo travel at full stick, not degrees per second; 100 is all of it.
# MANUAL: the sticks drive the elevons directly, nothing levels the wingaux11219001300# MANUAL on AUX2 lowset manual_roll_rate = 100# % of servo travel at full stickset manual_pitch_rate = 100save
NAV RTH for NAV RTH
NAV RTH (AUX4, or the failsafe) climbs first to at least nav_rth_altitude, 3000 cm (30 m, above the trees), flies home on GPS and circles it. nav_fw_loiter_radius is 5000 cm, 50 m: at 15 m/s and INAV's 35 degree bank the tightest circle is about 33 m, so 50 m leaves room. NEVER means it circles until you take over and land it yourself.
# NAV RTH: climb, fly home on GPS, circle the home pointaux510317002100# NAV RTH on AUX4 highset nav_rth_altitude = 3000# cm: 30 m, well above the tree linesset nav_rth_climb_first = ONset nav_fw_loiter_radius = 5000# cm: 50 m; a 35 deg bank at 15 m/s needs 33 mset nav_rth_allow_landing = NEVER# it circles home; you land it by handsave
Flight stats after the build
INAV shows a stats page by itself after you disarm (there is no osd_stats_page setting). osd_stats_energy_unit shows the energy used in mAh, each page stays up 3 s, and stats = ON keeps a lifetime count of flights, flight time and distance.
# Flight stats on the OSD after you disarm (INAV shows the page by itself)set osd_stats_energy_unit = MAHset osd_stats_page_auto_swap_time = 3# s per stats pageset stats = ON# lifetime flights, time and distancesave
Check yourself · Fit the elevon servos
Check yourself · Solder the XT60 and the capacitor
Check yourself · Slide the battery in
Check yourself
Meet the flying wing
A flying wing has no tail. Its swept planform and slightly raised elevons keep it stable in pitch, and the two elevons do the work of an elevator (moving together) and of ailerons (moving apart). One pusher prop behind the wing keeps the blades clear of your hand at the throw and of the ground on a belly landing. This one is a 900 mm EPP foam wing on an F405 wing board running INAV 9.1, with GPS, an ExpressLRS receiver and analog FPV. INAV can level it, launch it, hold a course and fly it home on GPS, and it cruises on a few amps, so half-hour flights are normal. Pick the pack, motor and prop and watch the balance and the flight time change, build it, check the elevons and the CG, then fly the airfield.
Practice task
Fly the pylon race in angle mode, then the return-to-home run. On a real wing: check the elevons before every first flight (the sticks and the stabiliser), balance it on the CG marks with the pack in, wait for a GPS fix before you arm, and throw it level, into the wind, at half throttle or with NAV LAUNCH. Set the failsafe to RTH and test it with the prop off. Most countries want the wing within sight: fly FPV with a spotter next to you.
Build it, check the elevons and the balance, then throw it and fly the pylons