This is the heavy-lift multirotor I led the development of as chief engineer of Team Astra, SFU’s UAV design team, built ultimately to compete in the Aerial Evolution Association of Canada (AEAC) 2027 Student UAS Competition. When Avestec graciously donated a set of their 2812 673KV motors, 6S 4500 mAh LiPo packs, and 4-in-1 ESCs, I set out to design the heaviest-carrying drone those parts could support. The result is an X8 coaxial octocopter that carries a 4.5 kg payload slung under the chassis, fits inside an 800 mm footprint, and went from component selection to first flight in about a month.
May 2026 – Jun 2026 (1 month)
SFU Team Astra, chief engineer of a 10-person team
Designed for the AEAC 2027 Student UAS Competition
Motors, batteries, and ESCs donated by Avestec
8× 2812 673KV motors · 10-inch coaxial props · 800 mm footprint
8 kg all-up weight · 18 kg max thrust · 4.5 kg payload capacity
Dual 6S 4500 mAh packs · dual 4-in-1 ESCs · Pixhawk 6C on ArduPilot
12-minute flight time (with payload)
As chief engineer, I oversee both of Team Astra's airframes, the fixed-wing and the X8, and review component choices and CAD before anything gets made. On the X8 specifically, I sized the propulsion around the donated hardware, designed the electrical architecture from the power modules through to the ArduPilot motor output and battery monitor configuration, and tuned the flight controller. I also stepped in on the build by CNC-routing the carbon fiber plates and helping with CAD and 3D printing.
Full throttle no-payload punchout at testing field.
Top view of the four coaxial pairs on a 550 mm wheelbase.
Since the motors, batteries, and ESCs were set by the donation, the design problem became squeezing as much payload as possible out of a fixed set of hardware. Two 4-in-1 ESCs gave us eight motor channels, and laying eight 10-inch props out flat would have needed a frame nearly a metre across. Stacking the motors in coaxial pairs instead puts all eight on a quadcopter-sized frame, 800 mm across.
Because the lower prop of each pair works in the upper prop's downwash, a coaxial pair produces less thrust than two isolated props would. That efficiency loss was worth it for a compact airframe, and with two motors per arm, losing a single motor never leaves an arm without thrust.
Spinning the two motors on each arm in opposite directions cancels the reaction torque on that arm, and lets the lower prop recover some of the swirl left in the upper prop's wake. Since the lower prop always sits in the accelerated air below the upper one, its blades see a lower effective angle of attack, so I paired an APC 10×4.5 on top with a higher-pitch APC 10×5.5 below to compensate.
To size the props for the 673KV motors on 6S before ordering anything, I predicted thrust by scaling bench data from a 2812 930KV motor by KV. The final setup totals roughly 18 kg of thrust, giving a 2.25:1 thrust-to-weight ratio at the 8 kg all-up weight.
Upper and lower motors on one arm, held by a single printed mount.
PETG-CF arm clamp between the two 3 mm plates.
Like my RoboMaster quadcopter, the core chassis is a sandwich of two 3 mm carbon fiber plates, which clamps four round CF tube arms through printed PETG-CF clamps. I set the motor wheelbase at 550 mm, leaving a ~296 mm clear column under the chassis between the lower prop arcs for the payload to hang in.
With the underside reserved for payload, both batteries strap to the top plate, while the CF landing gear legs give the lower props and the underslung payload enough clearance off the ground.
Both 6S packs strapped to the top plate.
Stacked 4-in-1 ESCs and the Pixhawk 6C on the bottom plate, before the top plate went on.
Between the two 6S 4500 mAh packs, the X8 carries 9000 mAh at 22.2 V nominal, or about 200 Wh. Rather than paralleling the packs onto one bus, I kept two separate power legs, with each pack running through its own Holybro PM02 power module into its own 4-in-1 ESC. One ESC drives the four upper motors and the other drives the four lower motors.
Splitting the power this way isolates faults, since a failure on one leg only takes out a single layer of rotors, and the remaining four still form a complete quadcopter. The two PM02s also feed the Pixhawk 6C's two power ports, so the flight controller stays powered if either leg drops out.
Because the upper rotors work in clean air while the lower rotors unload in the downwash, the two legs don't share load evenly, and the upper ESC pulls more current. Each ESC also has its own low-ESR capacitor at its input pads, since there's too much wire inductance between the PM02's onboard capacitor and the ESC for it to absorb switching spikes.
All eight motors run DShot600 from the Pixhawk 6C's FMU outputs, because the 6C's MAIN outputs are driven by its IO coprocessor, which doesn't support DShot.
In ArduPilot, each PM02 gets its own analog battery monitor with failsafes disabled, and a third monitor sums the two into a single 9000 mAh battery. The sum monitor reports the lower of the two pack voltages so that one weak pack still trips the failsafe, and it carries all of the failsafe actions, with the low threshold at 21.0 V (3.5 V/cell) and critical at 19.8 V (3.3 V/cell).
Inside the chassis, with one XT60 per power leg.
Autodesk Fusion CAM for 3mm carbon plate.
I CNC-routed the 3 mm carbon fiber plates on my home router, using the same Fusion CAM workflow as my RoboMaster quadcopter. The arm clamps, motor mounts, and landing gear joints were printed in PETG-CF, which is stiffer than plain PETG and far less brittle than PLA, and all of the fasteners are steel.
CNC routing aforementioned plate.
Team build night, soldering motor leads and assembling arms.
Assembly and soldering were split across the team over a few build sessions, and the airframe was completed in one night.
First full assembly on the bench.
Since I'd already set up my RoboMaster quadcopter in ArduPilot, Mission Planner was familiar ground this time, and I configured the X8 on ArduPilot 4.6.3 Copter as an OctaQuad X frame.
Pre-flight setup at the field.
On a flat quad, yaw comes from speeding up one diagonal pair of motors and slowing the other. On the X8, every arm has one CW and one CCW motor whose torques cancel, which initially had me questioning where the yaw authority would come from. It turns out the flight controller speeds up every motor of one spin direction across all four arms while slowing every motor of the other, keeping each arm's total thrust roughly constant so that a yaw command doesn't couple into roll or pitch.
On the maiden flight, I made sure the GPS and every other sensor were reporting correctly before tuning anything. Unlike my GPS-denied RoboMaster quad, this aircraft flies outdoors with a conventional sensor suite, made up of a Walksnail WSM181 M10 GPS, internal and external IST8310 compasses, an MS5611 barometer, and dual IMUs (ICM-42688-P primary, BMI088 secondary).
The X8 in flight, June 2026.
From the maiden flight log, I found the frequency of the motor noise and centred the harmonic notch filter on it, so the tuning algorithms wouldn't be fighting vibration. With clean gyro data, I ran QuikTune first to get the rate gains into a sensible range quickly, then followed it with a full AutoTune to refine them. All of which went smoothly, with no tuning issues at all.
This process will need to be redone once a payload is attached - the CG will shift down and PID gains may enter an unstable region.
With a 3.5 kg airframe and a 4.5 kg payload, the X8 takes off at 8 kg with a 2.25:1 thrust-to-weight ratio, which sits above the common 2:1 rule of thumb for multirotor control headroom. On the dual 4500 mAh packs, it achieved 20-minute flights with no payload.
Compared to my RoboMaster quadcopter, this was a quick build, and it showed me how much doing the math up front pays off. Because the propulsion numbers were worked out before any props were ordered, the aircraft flew within a week of its first assembly. It was also a different role for me, since as chief engineer, much of my job was reviewing my team's CAD rather than drawing it all myself.
Thank you to Avestec for donating the motors, batteries, and ESCs that made this aircraft possible, and to the Team Astra Nova team for helping design and assemble components. Looking forward to seeing this quad compete at AEAC 2027!