

The SpeedyBee F405 V4 Flight Controller is a compact and powerful flight controller designed specifically for multirotors and drones. It features an advanced F4 processor, a built-in On-Screen Display (OSD), and support for a wide range of flight modes and sensors. This flight controller is ideal for both hobbyists and professionals looking to build high-performance drones with precise control and reliable operation.








The F405 V4 Flight Controller features a variety of pins for connecting peripherals. Below is the pinout description:
| Pin Name | Description |
|---|---|
| GND | Ground connection for power and peripherals. |
| VBAT | Voltage input for the flight controller (connect to LiPo battery). |
| 5V | 5V output for powering peripherals (e.g., receiver, GPS). |
| 9V | 9V output for powering FPV cameras or VTX (Video Transmitter). |
| RX1/TX1 | UART1 for connecting receivers or telemetry modules. |
| RX2/TX2 | UART2 for GPS or other peripherals. |
| RX3/TX3 | UART3 for additional peripherals. |
| RX4/TX4 | UART4 for peripherals like smart audio or ESC telemetry. |
| RX5/TX5 | UART5 for additional devices. |
| M1–M4 | Motor outputs for ESCs (Electronic Speed Controllers). |
| LED | Addressable LED strip output (e.g., WS2812). |
| Buzzer | Buzzer output for audible alerts. |
| Boot | Bootloader pin for firmware flashing. |
| RSSI | Analog input for receiver signal strength indication. |
| Current | Current sensor input for monitoring power consumption. |
| SCL/SDA | I2C interface for external sensors (e.g., barometer, magnetometer). |
Powering the Flight Controller:
Connecting Motors and ESCs:
Connecting Peripherals:
Flashing Firmware:
Configuring the Flight Controller:
The F405 V4 can communicate with an Arduino UNO via UART for custom applications. Below is an example Arduino sketch to read telemetry data:
#include <SoftwareSerial.h>
// Define RX and TX pins for SoftwareSerial
#define RX_PIN 10 // Connect to TX pin of F405 V4
#define TX_PIN 11 // Connect to RX pin of F405 V4
SoftwareSerial flightControllerSerial(RX_PIN, TX_PIN);
void setup() {
// Initialize serial communication
Serial.begin(9600); // For debugging via Serial Monitor
flightControllerSerial.begin(115200); // Match the baud rate of the F405 V4
Serial.println("Arduino connected to F405 V4 Flight Controller");
}
void loop() {
// Check if data is available from the flight controller
if (flightControllerSerial.available()) {
String telemetryData = flightControllerSerial.readString();
Serial.println("Telemetry Data: " + telemetryData);
}
// Optional: Send commands to the flight controller
// flightControllerSerial.println("Example Command");
}
Flight Controller Not Powering On:
No Communication with Betaflight Configurator:
Motors Not Spinning:
OSD Not Displaying:
Receiver Not Detected:
Q: Can I use a 2S LiPo battery with the F405 V4?
A: No, the minimum supported voltage is 9V (3S LiPo).
Q: Does the F405 V4 support GPS modules?
A: Yes, GPS modules can be connected via UART ports (e.g., RX2/TX2).
Q: How do I reset the flight controller to factory settings?
A: Use the "Reset Settings" option in Betaflight Configurator or type defaults in the CLI.
Q: Can I use this flight controller for fixed-wing aircraft?
A: Yes, the F405 V4 supports fixed-wing configurations in Betaflight.
This concludes the documentation for the SpeedyBee F405 V4 Flight Controller.