How to Build a VTOL Drone: Parts List & Step-by-Step Guide
Build an electric VTOL fixed-wing mapping drone: a 3.5 m airframe, matched lift and cruise propulsion, 12S battery set, airspeed sensor, RTK and camera, ArduPilot QuadPlane setup, transitions and thrust maths.
- Layout: four fixed lift motors plus a pusher. Unlike a tiltrotor, nothing moves except the control surfaces, so there are no tilt servos to size or tune.
- Airframe: the Mugin EV350 kit, 3.5 m wingspan, 6.5 kg typical weight, 25 kg design maximum take-off weight.
- Lift: four position-locking motors with 24 × 7.2 inch propellers. Plan 2.0–2.2 times the take-off weight in static lift thrust, about 46–51 kg at 23 kg.
- Power: two 6S 32,000 mAh packs wired in series for a 12S bus, about 1.46 kWh in total.
- Performance: Mugin rates the complete EV350 platform at 23 kg take-off weight, 2 kg payload, up to 3 hours and 160 km.
A VTOL fixed-wing drone takes off and lands like a quadcopter and cruises on its wing, which is why mapping teams use it for areas too large for a multirotor. The simplest layout to build and tune is the "4+1" QuadPlane: four lift motors on booms for hover and one pusher motor for cruise. This guide builds an all-electric 4+1 on a 3.5 m carbon airframe, using the propulsion set the airframe maker has matched and tested.
VTOL drone parts list
The table lists every part the build needs, what to check before buying, and matching products. Lift, cruise and servo parts follow the airframe maker's EV350 propulsion kit; where our catalogue carries only a close variant, the row says what to confirm.
| Part | What to look for | Matching products |
|---|---|---|
| Airframe× 1Drone frames → | 3.5 m class carbon VTOL airframe with lift booms and a pusher mount, internal space for avionics and camera, 23–25 kg maximum take-off weight | |
| Lift motors× 4Drone motors → | Low-KV lift motors for 12S, 24-inch propellers, position locking so stopped propellers align with the booms | |
| Lift ESCs× 4Drone ESCs → | 6–14S input, 40 A continuous or more, CAN telemetry; the EV350 kit specifies the XRotor Pro H80A 14S BLDC version | |
| Lift propellers× 2 pairs + sparesDrone propellers → | 24 × 7.2 inch carbon, CW and CCW, 10 mm hole, thrust limit above the per-motor load | |
| Pusher motor× 1Drone motors → | Long-shaft fixed-wing motor for 8–12S, 30–40 cc class, KV200 | |
| Pusher ESC× 1Drone ESCs → | 6–14S fixed-wing ESC, 120 A peak, built-in UBEC for servos | |
| Pusher propeller× 1 + spare | 21 × 10 inch carbon pusher propeller matched to the AT7215 shaft | — |
| Flight batteries× 2 per setDrone batteries → | Two 6S packs of the same model and age, about 32,000 mAh each, wired in series; LiHV 10C class | |
| Servos× Per airframeDrone servos → | Digital servos (they share outputs that run at 400 Hz), metal gears, torque as specified for each surface of the airframe | — |
| Servo power× 1Power modules & PDBs → | Regulated 6–7.4 V servo rail, 10 A or more continuous, 12S input; the AT115A's built-in UBEC is rated for six servos at 6S, so check its rating at 12S before relying on it | |
| Airspeed sensor× 1Airspeed sensors → | Digital differential-pressure sensor (DLVR type preferred), DroneCAN or I2C, pitot tube and hose | |
| Flight controller× 1Flight controllers → | ArduPilot (Plane with QuadPlane), STM32H7, redundant IMUs, at least 9 PWM outputs, two CAN ports | |
| Power module× 1Power modules & PDBs → | 12S input, voltage and current reporting matched to the controller | |
| RTK GNSS× 1Drone GPS → | u-blox ZED-F9P multi-band; a module with raw logging and a hot-shoe input adds PPK | |
| Mapping camera× 1Drone cameras → | Full-frame sensor, prime lens, remote trigger and hot-shoe output, weight within the 2 kg payload | |
| Telemetry radio× 1 setTelemetry radios → | 900 MHz class long-range MAVLink radio, up to 1 W, in a band legal in your country | |
| Radio transmitter× 1 | Built-in ExpressLRS with 915 MHz option, EdgeTX, enough switches for VTOL and fixed-wing modes | |
| Receiver× 1Datalinks, video & radio → | ExpressLRS dual-band (2.4 GHz and 915 MHz), CRSF output, 5 V supply | |
| Charger× 1Battery chargers → | 6S LiPo and LiHV support, high current per channel, storage mode | |
| Small parts | High-current battery leads and series harness, 12S distribution, 12 V regulator for the camera, pitot hose, medium-strength threadlocker, wing connector harness | — |
Send this list as it is and get one price for every part.
Quote the full parts list →Tools you need
- Soldering station with a large tip for 12S power wiring, heat shrink and a heat gun.
- Digital multimeter and a current-limited supply for the first power-up.
- Servo tester, control-surface throw gauge and a digital angle gauge for motor alignment.
- Balance points or a CG scale for the wing, and a laptop with Mission Planner or QGroundControl.
Step-by-step assembly
1. Choose 4+1 over tiltrotor
ArduPilot supports almost any multirotor layout on a fixed wing, including tiltrotors and tailsitters, but the 4+1 is the easiest to build and maintain: the lift and cruise systems are separate, and each can be chosen for its own job. Use a tiltrotor only when the airframe is designed for it and you can test the tilt mechanism under load.
2. Check the weight budget before buying
The EV350 airframe weighs about 6.5 kg and two 32,000 mAh packs weigh 7.0 kg. With a 243 g mapping camera, that leaves about 9.3 kg under the platform's 23 kg rating for motors, ESCs, propellers, servos, wiring and avionics. Write down the weight of every part as it arrives and keep a running total.
3. Size the lift system
T-MOTOR recommends 2.0–2.2 times the take-off weight in static lift thrust for industrial VTOL: at 23 kg that is 46–51 kg, or 11.5–12.7 kg per motor. The P24×7.2 propeller is rated to 15 kg of thrust, which covers it. Mugin reports that the EV350 took off at about 47–49% throttle at just under 20 kg with these lift motors.
The MS8014 lift motors brake to a fixed position after transition, so the stopped propellers sit along the booms instead of across the airflow. That cuts drag in cruise; it is the main reason to use position-locking motors on a 4+1.
4. Plan the battery wiring
The AT7215 pusher is rated for 8–12S, so one 6S pack on its own is below its range; the two 6S packs go in series to make 12S. Confirm the harness layout with the airframe supplier before wiring it. At 22.8 V nominal each, the pair gives 45.6 V and about 1,459 Wh. Use two packs of the same model, capacity and age, charge them as a pair and check each pack's voltage before every flight.
5. Assemble the airframe
Fit the wings, booms and tail with the integrated latches and hardware, and route the wing harness so the connectors cannot be pinched when the wing locks. Mount the lift motors on the booms and the pusher on its mount, then check propeller clearance on every motor through a full turn.
6. Align the lift motors
On a QuadPlane, a degree or two of motor misalignment can remove most of the yaw authority. Block the aircraft level and measure the height of each propeller tip at the front, back, left and right; the difference divided by the propeller diameter gives the tilt angle. ArduPilot also suggests tilting each lift motor 3–5° forward so it is vertical when the wing is at its cruise attitude.
7. Wire power, ESCs and servos
Run the 12S bus to the four lift ESCs and the pusher ESC through a distribution board rated for the combined current, and feed the flight controller through the power module. The PM02D is designed for Pixhawk 5X and 6X controllers and does not power servos.
Power the servos from a separate regulator such as a 3–14S UBEC, or from the AT115A's built-in UBEC once you have confirmed its servo rating at 12S (T-MOTOR rates it for six servos at 6S). Never power servos from the flight controller. Use digital servos: on most controllers the lift motor outputs run at 400 Hz, and a servo on an output group that shares their timer runs at 400 Hz too, which overheats most analog servos.
8. Install the airspeed sensor
Mount the pitot tube in clean air, pointing straight into the airflow, with its side holes at least 1 cm clear of any surface. If a propeller sits in front of it, ArduPilot's rule is at least about 30 cm out on the wing; on a pusher layout, keep it ahead of the nose and away from the lift propellers' downwash. Shield the sensor from light, because many are light-sensitive.
Need a quote for this? Tell us what you need →
9. Fit RTK, telemetry and the camera
Mount the ZED-F9P antenna on top of the fuselage, away from the ESCs and power wiring, and the telemetry antennas clear of carbon structure. Fit the camera on a fixed nadir mount in the payload bay, power it from a 12 V regulator if it needs 10–18 V, and wire the trigger and hot-shoe cables as for a multirotor mapping build.
10. Balance the aircraft
Set the centre of gravity at the airframe maker's marked point with the camera and batteries installed, moving the batteries rather than adding weight. A quadcopter can hover with an offset centre of gravity, but the wing cannot fly with one once the lift motors stop.
ArduPilot QuadPlane setup
Load ArduPlane, set Q_ENABLE = 1 and reboot to show the QuadPlane parameters. Set Q_FRAME_CLASS = 1 (quad) and Q_FRAME_TYPE = 1 (X). By default the lift motors go on outputs 5–8 and the plane's control surfaces stay on 1–4. For lift motors on booms running fore and aft along the wing chord, ArduPilot recommends X mixing, so that frame twist helps yaw instead of fighting it.
Connect the airspeed sensor and set ARSPD_TYPE to 8 for DroneCAN. DLVR sensors do not need the power-up zero calibration, so ARSPD_SKIP_CAL can be set to 1; other sensors need the pitot covered when the aircraft powers up. Blow gently into the pitot to check the reading, then enable ARSPD_AUTOCAL and fly a few circuits so the controller can learn the scale factor.
Set the ExpressLRS receiver's serial port to protocol 23 (CRSF), configure the RTK GPS as for a multirotor, and set the battery monitor to read the full 12S pack. Set Q_RTL_MODE to choose whether a failsafe return ends with a fixed-wing approach and a vertical landing.
Transition tuning
When you switch from a hover mode to a fixed-wing mode, the lift motors keep the aircraft up until the airspeed reaches AIRSPEED_MIN, then fade out over Q_TRANSITION_MS (5 seconds by default). Set AIRSPEED_MIN safely above the stall speed. Q_TRANS_FAIL sets a time limit for reaching that speed and is off by default; set it, with a safe Q_TRANS_FAIL_ACT, once the first transitions are logged.
Always transition into the wind. Downwind, the aircraft builds ground speed long before it builds airspeed, and without an airspeed sensor a short downwind transition can end in a stall as the lift motors stop. Do not use Manual or Acro as a bail-out mode on a QuadPlane: both stop the lift motors at once.
Watch the battery during the first transitions. With the pusher at take-off throttle and all four lift motors still working, current peaks and voltage sags; ArduPilot warns that dipping below about 3.0 V per cell can damage LiPo packs or cost lift. If the log shows heavy sag, use packs with a higher C rating, separate lift and cruise batteries, or limit power with BATT_WATT_MAX.
Q_ASSIST_SPEED brings the lift motors back in if the airspeed drops below a set value in fixed-wing flight; Q_ASSIST_ANGLE and Q_ASSIST_ALT add attitude and altitude triggers. ArduPilot suggests flying the first flights with assistance off to tune the airframe, then setting Q_ASSIST_SPEED above the stall speed.
When returning to hover, the pusher stops and the aircraft decelerates on drag and the lift motors. ArduPilot limits the pitch-up at first to avoid a sudden climb, but expect some height gain on the first back-transitions and leave room for it.
Flight test sequence
Hover first in QSTABILIZE or QHOVER with the propellers checked and the wings fitted, and tune the VTOL attitude controller. Then climb to a safe height, switch to FBWA, advance the throttle past half and let the aircraft transition into the wind. Fly circuits to calibrate the airspeed sensor and tune the fixed-wing gains, switch back to QHOVER and land vertically. Run the first auto missions with short legs and a large battery reserve.
Common mistakes
Transitioning downwind. Ground speed hides low airspeed; always transition and land into the wind.
Skipping motor alignment. A few degrees of tilt on the lift motors can make the aircraft unable to hold its heading in a hover.
Using analog servos. Servos that share a timer with the 400 Hz lift outputs need to be digital.
Mixing battery packs. Two packs of different age or capacity in series discharge unevenly, and the weaker pack sets the flight time and the risk.
Mounting the pitot in prop wash. A reading inflated by propeller air can tell the controller it has flying speed when it does not.
For a complete VTOL kit with airframe, propulsion and avionics checked as one system, send the parts list to our team.
Frequently asked questions
What is a 4+1 VTOL drone?
A 4+1 VTOL, or QuadPlane, is a fixed-wing aircraft with four extra lift motors for vertical take-off and landing and one pusher or puller motor for cruise. The lift motors stop once the wing is flying. It is the simplest VTOL layout to build because no motors have to tilt. Browse VTOL drones.
4+1 or tiltrotor: which VTOL layout should I build?
Build a 4+1 unless the airframe was designed as a tiltrotor. A 4+1 keeps lift and cruise separate, so each motor and propeller can be optimised for its job and there are no tilt mechanisms to size, test and maintain. A tiltrotor carries less dead weight in cruise but is harder to build and tune.
How much lift thrust does a VTOL drone need?
Plan 2.0–2.2 times the take-off weight in total static lift thrust. A 23 kg VTOL therefore needs about 46–51 kg, or 11.5–12.7 kg per motor on a quad layout. The extra margin covers control, gusts and the transition, when the lift motors work hardest. Compare lift motors.
Does a VTOL drone need an airspeed sensor?
ArduPilot can fly a QuadPlane on an estimated airspeed, but for a mapping VTOL fit a real sensor. The estimate can be badly wrong in wind, and a transition that ends too early, especially downwind, can stall the aircraft just as the lift motors stop. A digital DLVR sensor is the usual choice. Compare airspeed sensors.
Should a VTOL drone use one battery or separate lift and cruise batteries?
One shared battery set is simpler, and it is what this build uses. The risk is voltage sag during transition, when the lift motors and pusher all draw heavily from a partly discharged pack. If your logs show heavy sag, use higher-rated packs, limit power, or move to separate lift and cruise batteries. Compare UAV batteries.
How long can an electric VTOL mapping drone fly?
It depends on the airframe and battery. Mugin rates its complete EV350 platform, the airframe used in this guide, at up to 3 hours and 160 km with a 2 kg payload on two 6S 32,000 mAh packs. Each minute of hover costs far more energy than a minute of cruise, so keep take-offs and landings short. See the EV350 airframe kit.
Why should a VTOL transition into the wind?
Into the wind, the aircraft reaches flying airspeed at a low ground speed and the lift motors can hand over safely. Downwind, ground speed builds while airspeed stays low, so the aircraft travels a long way on lift motors and, without an airspeed sensor, may stop them before the wing can fly.
What flight controller firmware is used for a VTOL drone?
ArduPilot Plane with the QuadPlane option is the most common open choice: set Q_ENABLE to 1, choose the lift-motor frame class and type, and the lift motors default to outputs 5–8 while the control surfaces stay on 1–4. PX4 also supports standard VTOL layouts. Compare flight controllers.