A flight controller for racing drones, designed according to my own needs, using the STM32F405 as the main control chip.
Main controller: STM32F405RGT6
; OSD: AT7456E
; Gyroscope: MPU6500;
Barometer: BMP280
; Black box: W25Q series.
47uF capacitors are a bit expensive; you can stack 22uF capacitors
. (Compared to common flight controllers, it adds dual-camera switching functionality and exposes all the main controller's I/O, allowing for flexible customization with BetaFlight firmware.
If dual-camera switching is not needed, do not solder the SGM3001; then short-circuit pins 45 or 56 of the SGM3001 pads according to your camera connection pads.
The ESC socket wiring sequence is based on the ESC I used; please check the wiring sequence before connecting your own ESC, otherwise it may cause problems.
It has been verified to function normally on a 4S battery with a 5-inch chassis using BetaFlight version 4.4.2; you can fly with confidence. It has not been actually tested on a 6S; the components have sufficient voltage resistance, but there is no guarantee against problems like excessive noise or other strange issues.
If the buzzer keeps beeping, enter `set beeper_inversion =` in the CLI.) For ON settings,
it's recommended to connect the ELRS receiver to UART1, as the USB provides power when the data cable is plugged in. Other UART ports only receive power when the battery is connected.
You can use a CC data cable for parameter tuning (I strongly condemn a certain brand of flight controller that uses a C port but still only supports traditional AC data cables).
After flashing the firmware, use the CLI commands in the attachment to set up basic port mappings for the flight controller. Then you can tune and use it like a brand new flight controller.
There are plenty of tutorials on flashing firmware; please search online for them.