`betafpv-f3`
FreeFor the BetaFPV F3 drone flight controller
FreeFree tier
About `betafpv-f3`
betafpv-f3 is a Board Support Crate for the BetaFPV F3 Drone Flight Controller, written in Rust. It provides embedded hardware abstractions for the BetaFPV F3 board, enabling developers to control LEDs, motors, serial communication, and basic gyro/accelerometer functionality. The crate includes example code and a shell script to build and flash examples onto the controller. It is designed for the ARM Cortex-M architecture and is no_std, making it suitable for bare-metal drone firmware development. The project is dual-licensed under Apache-2.0 or MIT. Note that some features (sensor fusion, radio receiver, USB port support) are listed as TODO and not yet implemented.
Key Features
LED control
Motor control
Serial communication
Basic gyro/accelerometer functionality
Example code and build/flash script included
no_std and ARM Cortex-M support
Written in Rust
Dual-licensed (Apache-2.0 or MIT)
Pros & Cons
Pros
- Open source with permissive licensing (Apache-2.0 or MIT)
- Provides working hardware abstraction for key peripherals
- Includes example code and automated flash script
- Designed for Rust's safety and performance in embedded systems
Cons
- Limited to BetaFPV F3 hardware only
- Some features not yet implemented (sensor fusion, radio receiver, USB port)
- No official releases or versioned packages
- Small community (45 stars, 1 fork)
Best For
Developing firmware for BetaFPV F3 drone flight controllerEmbedded Rust programming on ARM Cortex-MLearning drone flight controller hardware abstractionPrototype and test drone motor and LED control
FAQ
What hardware does this crate support?
It supports the BetaFPV F3 Drone Flight Controller board.
What features are currently working?
LED control, motor control, serial communication, and basic gyro/accelerometer functionality are implemented.
What is still TODO?
Sensor fusion, radio receiver, and USB port support are listed as future work.
How do I flash an example?
Plug the board into your computer while holding down the BOOT button to enable bootloader mode, then run `./flash-example <example-name>`.
What license is this under?
Dual licensed under Apache-2.0 or MIT, at your option.