ESP32-S3 Flight Controller

ESP32-S3 Flight Controller

Quad motor driver with IMU, two servo outputs and USB-C LiPo charging.

Motor Control EasyEDA

The brief

Four motors, two servos and an IMU share one battery rail, and the noise those motors make on that rail is exactly what the IMU is trying to measure. The board has to be small enough to fly and quiet enough to sense.

Each motor channel therefore gets its own gate resistor, pull-down and flyback diode, and the IMU runs off a rail that the motor switching cannot reach.

ESP32-S3 Flight Controller

What we did

A compact, battery-powered flight controller built around the ESP32-S3-WROOM-1 (N16R8). It drives four motors and two servos, senses its own orientation, and charges its LiPo battery over USB-C.

  • Main controller: The ESP32-S3 module provides Wi-Fi and Bluetooth connectivity, with BOOT and RESET buttons and native USB for programming.
  • Motion sensing: An MPU-6050 6-axis IMU (accelerometer and gyroscope) connects over I2C, with pull-ups, an interrupt line and an address-select pin.
  • Motor drivers: Four independent channels use SI2300 N-channel MOSFETs. Each channel has a gate resistor, a pull-down, an SS34 flyback diode and decoupling capacitors to handle motor noise.
  • Servo outputs: Two 3-pin servo headers run directly from the battery rail.
  • Power management: A TP4056 charger with status LEDs charges the battery over USB-C. A P-MOSFET power path (AO3401A) switches between USB and battery, and an HMIC5219 LDO provides a clean 3.3 V rail with an enable switch.
  • Battery monitoring: A 100 kΩ resistor divider feeds the battery voltage to an ESP32 ADC pin.

The schematic is organized into labeled blocks (Type-C, power supply, charging, motor driver, servo, battery sense, IMU and MCU), which keeps it easy to read and debug.

Design details

Design summary

CAD toolEasyEDA
OverviewA compact, battery-powered flight controller built around the ESP32-S3-WROOM-1 (N16R8).
Main controllerThe ESP32-S3 module provides Wi-Fi and Bluetooth connectivity, with BOOT and RESET buttons and…
Motion sensingAn MPU-6050 6-axis IMU (accelerometer and gyroscope) connects over I2C, with pull-ups, an…
Motor driversFour independent channels use SI2300 N-channel MOSFETs.
Servo outputsTwo 3-pin servo headers run directly from the battery rail.
Power managementA TP4056 charger with status LEDs charges the battery over USB-C.
Battery monitoringA 100 kΩ resistor divider feeds the battery voltage to an ESP32 ADC pin.

Have a board like this?

Send us the schematic, the mechanical constraints and the deadline. We will tell you what it takes and what it costs.