Alpha stage. This guide is based on bench-level testing only. Some steps may change as we validate on real hardware. Check back once we ship a stable release.
What You Will Do
This guide walks you through a complete flight from your desk to the air and back. You will connect your flight controller to Mission Control, run pre-flight checks, arm, fly manually with a gamepad or keyboard, land safely, and review the flight data.Before You Start
You need:- A drone with an ArduPilot or PX4 flight controller
- A charged battery
- A USB cable (for bench/desktop connection) OR WiFi/4G connection (for field flight with the Drone Agent)
- A gamepad (Xbox, PlayStation, or any USB/Bluetooth controller) or your keyboard
- Mission Control running in your browser (see Quickstart)
You can fly with just a keyboard (WASD + arrow keys), but a gamepad gives you analog stick precision. Any controller that works with the Web Gamepad API will work. Xbox controllers are the most widely tested.
Step by Step
Connect your flight controller
USB connection (bench/desktop):
- Plug the FC into your laptop with a USB cable
- Open Mission Control at
http://localhost:4000 - Click Connect in the top bar
- Select the serial port in the browser dialog
- Wait for the connection handshake (2-5 seconds)
- Power on the drone. The Drone Agent starts automatically.
- Connect your laptop to the same network (WiFi, USB tether, or Ground Agent AP)
- Open Mission Control. It discovers the agent via mDNS or you enter the IP manually.
- The drone appears on the dashboard.

Run pre-flight checks
Before arming, verify these in the dashboard:GPS:
- Fix type should be 3D Fix or better (RTK if available)
- Satellite count: 8+ recommended, 6 minimum
- HDOP under 2.0
- Voltage matches your expected full charge (e.g., 25.2V for 6S LiPo)
- Percentage reads above 80% for a full flight
- Current sensor reads near 0A (motors not spinning)
- Artificial horizon is level when the drone is on flat ground
- If it is tilted, you need to calibrate the accelerometer
- All channel values respond when you move sticks
- Throttle at minimum, all trims centered
- Should show Stabilize or Altitude Hold for first flights
- Do not arm in Auto, Guided, or Loiter for your first flight
- Check the message bar at the bottom of the screen
- ArduPilot shows pre-arm failure reasons here (e.g., “PreArm: Need 3D Fix”, “PreArm: Compass not calibrated”)
- Resolve ALL pre-arm failures before arming
Set up your input device
Gamepad:
- Plug in or pair your gamepad
- Go to the Flight Control tab
- The gamepad should appear as detected. If not, press any button to wake it up.
- Mission Control maps the sticks automatically:
- Left stick vertical: Throttle
- Left stick horizontal: Yaw
- Right stick vertical: Pitch
- Right stick horizontal: Roll
- Move all sticks to verify they respond in the UI
W/S: Pitch forward/backA/D: Roll left/rightArrow Up/Down: Throttle up/downArrow Left/Right: Yaw left/right
Arm the drone
When all pre-flight checks pass and the pre-arm message bar is clear:
- Move to a safe distance from the drone. Props will spin on arming.
- Click the Arm button in the Flight Control tab
- Confirm the arming dialog
MOT_SPIN_ARM parameter).If arming fails, the message bar will show the reason. Common failures:- “PreArm: Need 3D Fix” (wait for GPS lock)
- “PreArm: Battery failsafe” (battery too low)
- “PreArm: Compass variance” (move away from metal objects, recalibrate)
- “PreArm: Gyros inconsistent” (let the FC warm up for 30 seconds)

Take off
In Stabilize mode:
- Slowly raise the throttle stick (left stick up, or Arrow Up on keyboard)
- The drone will lift off when throttle passes the hover point (usually around 40-60%)
- Keep the throttle steady once airborne. Small corrections with pitch and roll.
- Throttle stick center = hold altitude
- Throttle above center = climb
- Throttle below center = descend
- These modes are easier for beginners because the FC handles altitude
Fly around
With the drone hovering:
- Pitch (right stick vertical): Forward and backward movement
- Roll (right stick horizontal): Left and right movement
- Yaw (left stick horizontal): Rotate the drone’s heading
- Throttle (left stick vertical): Up and down
- Altitude (AGL or MSL, depending on your setting)
- Ground speed
- Battery voltage (watch for sag under load)
- Distance from home
- Flight mode
Switch flight modes
You can change flight modes during flight from Mission Control.Common modes for manual flight:
Click the mode selector in the Flight Control tab to switch. The FC will acknowledge with a mode change message.
| Mode | Behavior |
|---|---|
| Stabilize | Full manual control. FC only levels the drone when sticks are centered. |
| Altitude Hold | FC holds altitude. You control position and heading. |
| Loiter | FC holds position AND altitude. GPS required. You nudge it around. |
| PosHold | Similar to Loiter but uses only accelerometer for position. Indoor-friendly. |
Land
Manual landing (Stabilize / AltHold):
- Position the drone over your landing spot
- Slowly lower the throttle
- Descend gently (0.5-1 m/s descent rate)
- When the drone touches down, pull throttle to minimum and hold for 2 seconds
- The FC auto-disarms after touchdown if
DISARM_DELAYis set (default: 10 seconds)
- Switch to Land mode
- The drone descends at a controlled rate and auto-disarms on touchdown
- Switch to RTL mode
- The drone climbs to RTL altitude, flies back to the launch point, and lands
- Requires GPS
Review the flight
After landing and disarming:In Mission Control:
- The flight path is drawn on the map (if GPS was available)
- Telemetry data is available in the stores for the duration of the session
- ArduPilot logs to onboard flash (
.binfiles) - Download logs via Mission Control’s log browser or with a USB cable
- Upload logs to firmware.ardupilot.org for analysis
- Note the voltage after landing. If it dropped below 3.5V per cell under load, your battery may be aging.
- If the FC triggered a battery failsafe, reduce your flight time on the next flight.
Common First-Flight Issues
Drone drifts in one direction
Your compass may need calibration, or there is magnetic interference. Move the drone away from metal objects and recalibrate. Also check that the FC is mounted correctly (arrow pointing forward).Drone oscillates or vibrates
PID tuning may be off for your frame. Start with ArduPilot’s Autotune feature (switch to Autotune mode mid-flight and let the FC tune itself). Or adjust PIDs manually in Configure > PID Tuning.Gamepad input feels laggy
Check that Mission Control is running in Chrome or Edge. Firefox has higher Web Gamepad API latency. Also verify the gamepad is connected via USB, not Bluetooth, for the lowest latency.Video feed is frozen or black
If using the Drone Agent’s video pipeline:Arming fails with “Check firmware”
Make sure you are using a supported firmware. Mission Control works with ArduPilot 4.0+, PX4 1.12+, and Betaflight 4.3+.Safety Reminders
- Always arm at a safe distance from people and objects
- Start with short, low flights until you are comfortable
- Keep a visual line of sight to your drone
- Know your failsafe settings (what happens on RC loss, GCS loss, battery low)
- Fly in an open area away from airports, restricted zones, and crowds
- Check local regulations before flying
Next Steps
Your First Mission
Plan and execute an automated survey mission.
Flight Control
Advanced flight control: guided mode, follow-me waypoints, HOTAS setup.
FC Configuration
Tune your drone: PIDs, failsafes, power, sensors.
Video Feed
Set up live video from your drone.