The project

About Kyronix

An open-source ESP32 brushed quadcopter built from scratch — firmware, app and hardware.

Kyronix started as a question: how much real flight controller can you put on a $4 microcontroller? The answer turned out to be "most of it." A single ESP32 runs a 500 Hz cascaded PID loop on one core while the other handles WiFi, telemetry and an independent safety supervisor.

There is no radio receiver and no flight-controller board. The phone is the transmitter — it joins the craft's own WiFi access point and streams control over a compact binary UDP protocol. Telemetry flows back the other way at 20 Hz so the app can draw a live horizon, battery and motor outputs.

Everything is open. The firmware, the Kotlin app, the wiring and the tuning notes are all public, so you can read exactly how it flies — and change it.

"Most of a flight controller, on a four-dollar chip."
Hardware

Specifications

MCU
ESP32 · 240MHz dual-core
IMU
MPU6050 · 1kHz
Motors
4 × 8520 coreless
Battery
1S LiPo · 3.0–4.2V
Weight
25–45 g
Frame
65–85 mm
Control
WiFi UDP · 50–100Hz
Telemetry
20Hz · 36-byte
Wiring

Pin connections

GPIOFunctionNotes
21I2C SDAMPU6050
22I2C SCLMPU6050
16MPU6050 INTdata-ready (RX2)
25Motor 1Front Left · CW
26Motor 2Front Right · CCW
27Motor 3Rear Right · CW
33Motor 4Rear Left · CCW
34Battery VoltageADC sense
2Status LEDstate indicator
System

Architecture

📱 Phone App
Kotlin · Compose
↔ WiFi UDP ↔
🧠 ESP32
500Hz PID · safety
⚙️ Motors
4 × FET drive
📐 IMU
attitude
🔋 Battery
sag comp
License

Open source under the MIT license.

Built by the Kyronix project. Use it, learn from it, fork it. Attribution appreciated, freedom guaranteed.