

The SPEEDYBEE F405 WING is a versatile flight controller designed for fixed-wing and VTOL (Vertical Take-Off and Landing) drones. It is equipped with advanced features such as an F4 processor, multiple UARTs, and integrated Bluetooth for wireless configuration. This board is ideal for hobbyists and professionals looking to build high-performance drones with reliable and efficient control systems.








The SPEEDYBEE F405 WING features a variety of pins for connecting peripherals. Below is the pinout description:
| Pin Name | Function | Description |
|---|---|---|
| GND | Ground | Connect to the ground of the power source or peripherals. |
| VBAT | Battery Voltage Input | Connect to the positive terminal of the LiPo battery (7V–36V). |
| 5V | 5V Output | Provides 5V power for peripherals (max 2A). |
| 9V | 9V Output | Provides 9V power for peripherals (max 2A). |
| UART1 (TX/RX) | UART1 Serial Communication | For connecting GPS, telemetry, or other serial devices. |
| UART2 (TX/RX) | UART2 Serial Communication | Additional UART for peripherals. |
| PWM1–PWM8 | PWM Outputs | For connecting ESCs or servos (supports up to 8 channels). |
| SCL/SDA | I2C Communication | For connecting I2C devices like airspeed sensors. |
| BOOT | Bootloader Mode | Used for firmware flashing or recovery. |
| LED | Status LED Output | Connect to an external LED for status indication. |
Powering the Board:
Connecting Peripherals:
Configuring the Board:
Flashing Firmware:
Although the SPEEDYBEE F405 WING is primarily used in drones, it can communicate with an Arduino UNO via UART. Below is an example code snippet for reading data from the board:
#include <SoftwareSerial.h>
// Define RX and TX pins for SoftwareSerial
SoftwareSerial speedyBeeSerial(10, 11); // RX = pin 10, TX = pin 11
void setup() {
// Initialize serial communication
Serial.begin(9600); // For debugging via Serial Monitor
speedyBeeSerial.begin(115200); // Communication with SPEEDYBEE F405 WING
Serial.println("Starting communication with SPEEDYBEE F405 WING...");
}
void loop() {
// Check if data is available from the SPEEDYBEE F405 WING
if (speedyBeeSerial.available()) {
String data = speedyBeeSerial.readString(); // Read incoming data
Serial.println("Data from SPEEDYBEE: " + data); // Print data to Serial Monitor
}
// Send a test command to the SPEEDYBEE F405 WING
speedyBeeSerial.println("Test Command");
delay(1000); // Wait for 1 second before sending the next command
}
Board Not Powering On:
Bluetooth Not Connecting:
ESCs or Servos Not Responding:
Firmware Flashing Fails: