Flight Controllers

A flight controller provides automatic control of the vehicle. The amount of automatic control can vary from fully autonomous flight to assisted manual flight.

Project AirSim supports the following flight controllers: Simple Flight, PX4 Autopilot, ArduPilot, and Manual Controller.

Simple Flight

Simple Flight is a lightweight flight controller that comes with Project AirSim and enables you to setup and start flying quickly and easily. Simple Flight currently supports quadrotor, hexarotor, VTOL quad-x tailsitter, and VTOL quad tiltrotor airframes.

PX4 Autopilot

PX4 Autopilot is a popular open-source flight controller. Project AirSim using PX4 currently supports the quadrotor airframe in the Hardware-In-The-Loop (HITL) configuration, and quadrotor, hexarotor, VTOL quad-x tailsitter, and VTOL quad tiltrotor airframes in the Software-In-The-Loop (SITL) configuration.

If you are not familiar with setting up PX4, you may find it easier to start with Simple Flight if your airframe is supported.

ArduPilot

ArduPilot is an open-source flight controller supported through a UDP/IP Software-In-The-Loop (SITL) connection. Project AirSim includes ready-to-run quadrotor and hexarotor examples. Its Client API flight commands are not supported; control the vehicle through ArduPilot or a ground control station such as Mission Planner or QGroundControl.

Manual Controller

Manual Controller is a pass-through controller type with control signal outputs that are set completely manually by API and optionally starts with initial values set by config. See Manual Controller settings and Manual Controller commands for more details.

JSBSim

JSBSim is a flight dynamics model (FDM) that can be used to simulate how an aircraft moves and responds to control inputs. A flight controller is the system that decides which control inputs to send, such as throttle, elevator, aileron, rudder, or rotor commands.

Comparing controllers

The following chart compares the flight controllers when used with Project AirSim:

Feature

Simple Flight

PX4

ArduPilot

Manual Controller

JSBSim

Project AirSim Airframes

Quadrotor, hexarotor, VTOL quad-x tailsitter, VTOL quad tiltrotor

Quadrotor, hexarotor, VTOL quad-x tailsitter, VTOL quad tiltrotor in SITL, quadrotor only in HITL

Quadrotor, hexarotor in SITL

Any

Any

Controller Hardware

None

None for SITL, required for HITL

None for SITL

None

None

Setup

Easy

Harder

Harder

Easy

Easy

Use

Easy

Harder

Harder

Manual

Easy

Tuning Support

No

Yes

Yes

N/A

No


Copyright (C) Microsoft Corporation.
Copyright (C) 2025 IAMAI CONSULTING CORP

MIT License. All rights reserved.