Student Project: Betaflight LEDs

An open-source contribution to the FPV community

Student project in the Advanced FPV Quadcopter Course WiSe 23/24 by Jonas Becker

Intro

Betaflight is an open-source software used by many FPV drone pilots. Currently supporting only limited LED functionality, this project aims to improve both the style of drone visibility and status information through customizable lighting options. The project explores three new features: LED indicators for battery levels, altitude, and GPS satellite connections, each designed to provide real-time data in a visually intuitive format.

This project was developed during the winter semester of 2023/24 as part of the FPV Advanced Course (6 C).

About

Drone pilots widely use the Betaflight firmware for their quadcopters. This project aims not only to contribute to the open-source community but also to deepen the understanding of drone functionalities. By directly engaging with Betaflight firmware development, one can gain valuable insights into the intricate operations of drones while providing a meaningful contribution.

The Betaflight software has evolved over many years and is primarily written in low-level C programming language. Moreover, a critical aspect of this project involves interpreting and visualizing sensory data from Betaflight using LED indicators, which requires a robust understanding of both the firmware and hardware interactions. Besides the required firmware development, this project also comprises the corresponding update of the graphical interface (called Betaflight Configurator) in JavaScript that users can leverage to enable the new functionality.

The three main features that this project contributes to the drone community are:

  • GPS Bar: This bar utilizes LEDs to display the number of detected GPS satellites. The LEDs’ color transitions from red to green as the drone is ready for takeoff, providing an intuitive and immediate visual cue of satellite connectivity.
  • Battery Bar: A dynamic representation of battery life inspired by phones, shown as a loading bar. It also changes color based on the remaining battery percentage, allowing for quick and easy monitoring of battery status.
  • Altitude Indicator: Starts with a customizable color that shifts according to the barometric altitude readings from the drone. This feature gives pilots a visual representation of altitude changes, enhancing situational awareness during flight.

The Betaflight community has been instrumental in defining the scope and functionality of these features, which are set to be integrated into the upcoming major release of Betaflight 4.6. This update will make the new functionality accessible to all users, continuing Betaflight’s legacy of community-driven development.