Birth of a Little Flyer
Overview
Section titled “Overview”Welcome to your first drone project! In this tutorial, you’ll build a fully functional ESP32 drone from scratch and complete your first flight.
What You’ll Learn
Section titled “What You’ll Learn”- Drone frame assembly
- Motor and ESC connection
- ESP32 firmware flashing
- Basic flight controls
- Safety procedures
Materials Needed
Section titled “Materials Needed”| Item | Quantity | Notes |
|---|---|---|
| ESP32-S3-DevKitC Board | 1 | Main flight controller |
| 715 Brushed Motors | 4 | 2 CW, 2 CCW |
| MPU6050 Attitude Sensor | 1 | Measures drone attitude |
| LiPo Battery 1S 3.7V | 1 | 300-500mAh |
| PCB Frame | 1 | Use PCB directly as frame |
| ESCs | 4 | Or use ESP32 PWM directly |
| USB Cable | 1 | For programming |
Step 1: Frame Assembly
Section titled “Step 1: Frame Assembly”1.1 Attach Motor Mounts
Section titled “1.1 Attach Motor Mounts”- Mount motors to the four corners of the PCB frame, tighten with screws
- Important: Note the motor rotation direction (CW vs CCW)
Motor Layout (Top View): Front ↑ 1 2 (1,3 = CW | 2,4 = CCW) \ / \ / / \ / \ 4 31.2 Install Flight Controller
Section titled “1.2 Install Flight Controller”Mount the ESP32 board in the center of the frame using double-sided tape or standoffs.
Step 2: Wiring
Section titled “Step 2: Wiring”2.1 Motor Connections
Section titled “2.1 Motor Connections”Connect each motor to the corresponding GPIO pins:
| Motor | GPIO Pin | Rotation |
|---|---|---|
| M1 | GPIO 4 | CW |
| M2 | GPIO 5 | CCW |
| M3 | GPIO 6 | CCW |
| M4 | GPIO 7 | CW |
2.2 Sensor Connections
Section titled “2.2 Sensor Connections”Connect the MPU6050 attitude sensor to ESP32 I2C interface:
- MPU6050 SCL → ESP32 GPIO 22
- MPU6050 SDA → ESP32 GPIO 21
2.3 Power Connection
Section titled “2.3 Power Connection”Connect the battery to the ESP32 power interface through a power switch.
Step 3: Firmware Flashing
Section titled “Step 3: Firmware Flashing”3.1 Prepare Flashing Tool
Section titled “3.1 Prepare Flashing Tool”- Download
flash_tool.exe(Windows) orflash_tool_mac.app(macOS) - Download
takeoff.binfile to your computer desktop
3.2 Flash the Firmware
Section titled “3.2 Flash the Firmware”- Hold the “BOOT” button on the ESP32 board while connecting the USB cable to your computer
- Open
flash_tool.exeand select thetakeoff.binfile - Click the “Flash” button and wait for completion (about 10 seconds)
- After the tool shows “Flash successful”, remove the USB cable
Step 4: First Flight
Section titled “Step 4: First Flight”4.1 Pre-flight Checklist
Section titled “4.1 Pre-flight Checklist”- Battery fully charged
- Propellers securely attached
- No loose wires
- Firmware flashed successfully
- Choose an open flight area
4.2 Using the Mobile App
Section titled “4.2 Using the Mobile App”- Download
Drone ControlAPP (Android) or search “ESP Drone” in App Store (iOS) - Power on the drone (battery switch), the drone LED will blink
- Connect your phone to the drone’s Wi-Fi (Name:
ESP-Drone, Password:12345678) - Open the APP and wait for connection
4.3 Takeoff
Section titled “4.3 Takeoff”- Click the “Takeoff” button in the APP
- Slowly push the throttle slider, and the drone will fly!
- Try controlling the drone to move forward, backward, left and right
- Slowly lower the throttle to let it land
Safety First: Always fly in open areas away from people and obstacles.
Troubleshooting
Section titled “Troubleshooting”Drone won’t arm
Section titled “Drone won’t arm”- Check battery voltage (>3.5V)
- Verify wireless connection
- Ensure level surface for calibration
Drone flips on takeoff
Section titled “Drone flips on takeoff”- Check propeller direction
- Verify motor order matches configuration
- Check gyro calibration
Achievement
Section titled “Achievement”Congratulations! Your hand-assembled drone is flying! This is an exciting milestone, and you’ve taken the first step to becoming a drone expert.
Next Steps
Section titled “Next Steps”In the next project, you’ll learn how to change different sound effects and LED effects for your drone, creating your own personalized aircraft.
First published atdrone.imagrove.com/beginner/first-flight/Please credit Imagrove and link back to this page when quoting or republishing.
Questions or issues with this tutorial?
Sign in with GitHub to leave a comment. If a step fails for you, tell us — we verify it and update the tutorial.
© 2026 ESP32 Drone. All rights reserved.