Open flight-control firmware you can study and change.
ESPFlight firmware handles stabilization, safety checks, motor control, telemetry, and communication with the app.
// control loop
imu.update();
failsafe.evaluate();
controller.stabilize();
motors.write();
// keep the pilot informed
telemetry.publish();What the firmware does.
Stabilization
IMU processing and PID-based attitude stabilization form the core control loop.
Safety state
Explicit arming, link-loss handling, low-battery logic, attitude protection and flight-state guards.
Network control
Device discovery, WebSocket control, command ownership and acknowledgements for important actions.
Telemetry
Drone state and flight data are continuously exposed to the companion application.
Assisted flight
Altitude assistance plus takeoff and landing flows sit above the basic stabilized control layer.
Configuration
Control parameters can be tuned from the application while the drone is connected.
A documented connection to the app.
ESPFlight treats connectivity as part of the flight platform rather than a pile of ad-hoc messages.
- UDP discovery
- WebSocket control and telemetry channel
- Explicit ARM / DISARM commands
- Single-controller ownership model
- ACKs for high-level commands
- Link timeout and flight-state safety logic
Explore the source and build your version.
ESPFlight Firmware v1.0.0 is open-source under the MIT License, so you can read it, learn from it, modify it, redistribute it, and use it in personal or commercial projects subject to the license terms.
Check the official firmware errata for documentation corrections recorded without changing the v1.0.0 release tag.
View official errata ↗