Open-source firmware

The flight core that stays inspectable.

ESPFlight firmware is the embedded layer responsible for control, stabilization, safety state, telemetry and the drone-side network protocol.

espflight / flight_control.cpp
// control loop
imu.update();
failsafe.evaluate();
controller.stabilize();
motors.write();

// keep the pilot informed
telemetry.publish();
Current core

Small enough to understand. Structured enough to grow.

01

Stabilization

IMU processing and PID-based attitude stabilization form the core control loop.

02

Safety state

Explicit arming, link-loss handling, low-battery logic, attitude protection and flight-state guards.

03

Network control

Device discovery, WebSocket control, command ownership and acknowledgements for important actions.

04

Telemetry

Drone state and flight data are continuously exposed to the companion application.

05

Assisted flight

Altitude assistance plus takeoff and landing flows sit above the basic stabilized control layer.

06

Configuration

Control parameters can be tuned from the application while the drone is connected.

Protocol v2

A clear contract between drone and 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
ESPFlight App
DISCOVERY UDPCONTROL + TELEMETRY WebSocket
ESPFlight Firmware

Read it. Build it. Improve it.

ESPFlight Firmware 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.

Firmware docsRead MIT License