Chapter 15 · Software
Open-source FPV
Almost everything that flies FPV runs on free software: the flight controller firmware, the radio’s, the ESCs’ and even digital video. Here’s the map and how you can contribute.
Why everything is open
FPV was born on forums full of people who did everything themselves: they programmed flight controllers, shared plans and passed tunes around. That way of doing things has carried on. Today the firmware that flies most drones, the one in your radio and the one running the radio link are all free software: anyone can read the code, improve it and share it.
- For you it means free updates for years, parts from different brands that work together and a huge community that has already solved your problem.
- It also means nobody gives you a guarantee: read the release notes for each version, back up your configuration before updating and test without props.
Flight controller firmware
| Firmware | What for | When to choose it |
|---|---|---|
| Betaflight | Freestyle, racing and cinewhoops | The default choice. The one we explain in this guide. |
| INAV | GPS navigation, wings and long range | If you want return to home, waypoints or to fly an FPV plane. |
| ArduPilot | Autonomous and professional drones | Automated missions, mapping, research. Very complete and more complex. |
| EmuFlight | Freestyle with a different approach to tuning | For experimenting with other filters; smaller community. |
| QUICKSILVER | Whoops and very small drones | Tiny whoop flight controllers with limited resources. |
| Rotorflight | RC helicopters | If you fly helis too: it comes from the same family as Betaflight. |
Many of these projects descend from the same trunk. Historic projects such as Cleanflight, dRonin or LibrePilot are no longer updated, but if you come across an old tutorial that mentions them, now you’ll know where they come from.
Radio and receivers
ExpressLRS
The open radio link that has become the standard: very low latency, lots of range and cheap receivers from many brands. Check its range with the link calculator.
EdgeTX
The operating system on most current radios: models, mixes, telemetry and Lua scripts. Successor to OpenTX, which is no longer developed.
Multiprotocol
A module that speaks the protocols of many different brand-name receivers, so you can keep using old drones with a single radio.
ESC firmware
- Bluejay: for ESCs with a BLHeli_S chip. Adds rpm telemetry (needed for Betaflight’s RPM filter) and start-up tunes.
- AM32: for 32-bit ESCs. It’s the free, actively maintained alternative to BLHeli_32, which no longer gets updates.
- Both are configured from the browser, connecting the drone over USB through the flight controller. Details in ESC.
Open digital video
The big digital video systems are closed, but there’s a fast-growing open alternative: using IP cameras and modified Wi-Fi modules to send video in broadcast mode, with no connection or retransmissions, just like analogue FPV.
- OpenIPC provides the open firmware for the cameras; WFB-NG is the Wi-Fi broadcast link. Together they make up the most active open digital system.
- OpenHD and DroneBridge follow the same idea with other boards and priorities (long range, telemetry).
- On the analogue side, there are open receivers built with RX5808 modules and a small screen: a good first electronics project.
Wi-Fi video uses the same bands as all other Wi-Fi: stick to the legal power and the permitted channels. See Safety and regulations.
Tools for your computer
| Tool | What it’s for |
|---|---|
| Betaflight App | Configuring the flight controller and flashing firmware. We explain it in the tutorial. |
| Blackbox Explorer | Viewing logs graphically. The assistant gives you an automatic analysis. |
| PIDtoolbox | Advanced log analysis for fine-tuning PIDs and filters. |
| ESC Configurator | Configuring and updating Bluejay, AM32 and BLHeli_S from the browser. |
| ExpressLRS Configurator | Building and installing firmware for ELRS receivers and modules. |
| Gyroflow | Stabilising video using the gyro. You’ll find it in Post-production. |
| Lap timers | Race timing with a Raspberry Pi or ESP32. See Practice field. |
Open hardware
It’s not all software: there are frames with open plans, flight controllers with published schematics and thousands of 3D-printable parts (GoPro mounts, antenna protectors, battery mounts). Before you buy a plastic accessory, check whether someone has published a model of it.
How you can contribute
You don’t need to know how to code to help an open project:
Report bugs properly
Firmware version, what you expected, what happened and a
diff allor a log. One good report is worth more than ten “mine doesn’t work either”.Test new versions
Release candidates need pilots to fly them before they’re published. Do it with a test drone and take your time.
Translate into your language (or Catalan)
Many of these programs are translated on collaborative platforms open to everyone. An afternoon of translating lets thousands of pilots set up their drone in their own language.
Document and share
Write up how you solved a problem, publish your tunes or your 3D model. That’s how it all started.