ESP-Drone
A small drone platform based on Espressif ESP32/ESP32-S2/S3 microcontrollers with Wi-Fi control and multiple flight modes.
- Drone
- Open source
- 3D printable
Suggested by Robotheca, created by @HoneyGrant (opens in a new tab), from github.com/HoneyGrant/UAV (opens in a new tab). Pinned to commit 6a6fb32 (opens in a new tab).
- Hardware license
- GPL-3.0-only (opens in a new tab)
- Software license
- GPL-3.0-only (opens in a new tab)
- Commercial use
- Allowed
This repository contains executable files that Robotheca doesn't check. Only run them if you trust the creator.
Which files (9 scripts, 6 firmware images)
- ESP_Drone/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_C.bin (opens in a new tab)
- ESP_Drone/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin (opens in a new tab)
- F405/code/Betaflight/betaflight_3.4.0_MATEKF405.hex (opens in a new tab)
- F405/code/Cleanflight/cleanflight_2.4.0_MATEKF405.hex (opens in a new tab)
- F405/code/iNavflight/inav_1.9.1_MATEKF405.hex (opens in a new tab)
- F405/code/iNavflight/inav-1.9.1/.travis.sh (opens in a new tab)
- F405/code/iNavflight/inav-1.9.1/build_docs.sh (opens in a new tab)
- F405/code/iNavflight/inav-1.9.1/build.sh (opens in a new tab)
- F405/code/iNavflight/inav-1.9.1/fake_travis_build.sh (opens in a new tab)
- F405/code/iNavflight/inav-1.9.1/install-toolchain.sh (opens in a new tab)
- F405/code/iNavflight/inav-1.9.1/support/flash.bat (opens in a new tab)
- OLDX-FC/firmware/Back_FC/clear编译完的东西.bat (opens in a new tab)
- OLDX-FC/firmware/Back_FC/Libraries/CMSIS/DSP_Lib/Source/ARM/arm_cortexMx_math_Build.bat (opens in a new tab)
- OLDX-FC/firmware/Back_IMU/keilkilll.bat (opens in a new tab)
- OLDX-FC/firmware/Back_IMU/OBJ/UCOSII-3.hex (opens in a new tab)
Photo and 3D model

3D preview converted from github.com/HoneyGrant/UAV at 6a6fb32, under GPL-3.0-only. View the original files from GitHub (470 KB) (opens in a new tab)
What it can do
Written by Robotheca from the project's documents.
- Stabilize flight mode
- Altitude-hold flight mode
- Position-hold flight mode
- APP control via Wi-Fi
- Gamepad control via Wi-Fi
- GPS navigation with waypoint setting
- Optical flow navigation
- Autonomous takeoff and landing
Bill of materials
This repository has no parts list Robotheca can read yet.
Build guide
The guide appears here as you scroll.
Guide by @HoneyGrant (README.md), under GPL-3.0-only. The English translation is by Robotheca, shared under the same license.
More guides
Wiring and electronics
Notes written by Robotheca from the project's documents.
Main parts
- ESP32/ESP32-S2/S3 Wi-Fi chip (ESP-Drone)
- STM32F405RGT6 microcontroller (F405)
- ICM20602 gyroscope and accelerometer (F405)
- LSM6DS33 gyroscope and accelerometer (OLDX-FC)
- LIS3MDL magnetometer (OLDX-FC)
- BMP280 barometer (F405)
- MS5611 barometer (OLDX-FC)
- NRF24L01 2.4G communication module (OLDX-FC)
- VL53L0X/VL53L1X laser rangefinder (ESP-Drone/OLDX-FC)
- Pixflow optical flow sensor (OLDX-FC)
- GPS module (NEO-8M)
- UWB module (INF)
Connections
- ESP-Drone: ESP32/ESP32-S2/S3 connected to motors via PWM outputs, sensors via I2C/SPI, and powered by 2S-4S battery
- F405: STM32F405 connected to MPU6000 via SPI, BMP280 via I2C, motors via 2*5 pin header or dedicated ESC interface, GPS & compass via dedicated port, receiver via PPM/SBUS, buzzer via dedicated port,
- OLDX-FC: STM32F405 connected to ICM20602 and LSM6DS33 via SPI, LIS3MDL via I2C, MS5611 via I2C, NRF24L01 via SPI, GPS via UART1, optical flow via UART5, ultrasonic sensor via UART3, CAN bus via dedica
Schematics, boards and diagrams
- ESP_Drone/docs/_static/Schematic-overview-of-inputs-and-outputs-of-the-Complementary-filter.pngDiagram
- ESP_Drone/docs/_static/Schematic-overview-of-inputs-and-outputs-of-the-Extended-Kalman-Filter.pngDiagram
- ESP_Drone/docs/_static/vl53l1x_typical_circuit.pngDiagram
- ESP_Drone/hardware/ESP32_S2_Drone_V1_2/src/Gerber_Mainboard_ESP32_S2_Drone_V1_2.zipGerber (PCB manufacturing)
- ESP_Drone/hardware/ESPlane_FC_V1/Schematic_ESPlane_FC_V1.pdfDiagram
- F405/code/iNavflight/inav-1.9.1/docs/assets/images/lights_power_schematic.pngDiagram
- F405/code/iNavflight/inav-1.9.1/docs/assets/images/serial1wire-cc3d-wiring.jpgDiagram
- F405/code/iNavflight/inav-1.9.1/docs/Wiring/CC3D - buzzer circuit.pdfDiagram
- OLDX-FC/hardware/download_fc.PcbDocAltium
- OLDX-FC/hardware/download_stlink.PcbDocAltium
- OLDX-FC/hardware/oldx_fc.PcbDocAltium
- OLDX-FC/hardware/power.PcbDocAltium