Matek f405 wing
Info
STM32F405, MPU6000, INAVOSD, BMP280, 6x UARTs, 1x Softserial, 2x I2C, 2x Motors & 7x Servos, 4x BEC & current sensor on board.
Substitute
- replaced by F405-wing V2.
Barometer
We have been starting to replace BMP280 with high precision and low noise barometer DPS310 in new batch of production.
Pls use ArduPilot/Plane 4.0.8 or higher, INAV3.0.1 or higher.
Gallery and info
Image:

Dimensions:

Specs:

Layout:

FC Specifications
| Hardware | Specifications |
|---|---|
| MCU | 168MHz STM32F405 |
| IMU | MPU6000 accelerometer/gyro (SPI) |
| Baro | BMP280 (I2C) or DPS310 |
| OSD | INAV OSD w/ AT7456E chip |
| Blackbox | MicroSD card slot (SD/SDHC) |
| VCP | 6x UARTs |
| Motors | 2x outputs |
| Servos | 7x outputs |
| I2C | 2x |
| LEDs | 3x for FC STATUS (Blue, Red) |
| SBUS input | 1x (UART2-RX) |
| PPM/UART Shared | UART2-RX |
| SoftSerial | TX2 pad |
| Battery Voltage Sensor | 1:10 (Scale 1100) |
| WS2812 Led Strip | Yes |
| Beeper | Yes |
| RSSI | Yes |
FC Firmware
| Firmware | Target |
|---|---|
| INAV | MATEKF405SE |
| Ardupilot | MATEKF405WING |
PDB
Input voltage range: 9~30V (3~6S LiPo) w/TVS protection
2x ESC power pads
Current Senor: 104A, 3.3V ADC, Scale 317
Sense resistor: 60A continuous, 104A Peak.
BEC 5V output
Designed for Flight controller, Receiver, OSD, Camera, Buzzer, 2812 LED_Strip, Buzzer, GPS module, AirSpeed
Continuous current: 2 Amps, Max.3A
BEC 9V /12V output
Designed for Video Transmitter, Camera, Gimbal ect.
Continuous current: 2 Amps, Max.3A
12V option with Jumper pad
BEC Vx output
Designed for Servos
Voltage adjustable, 5V Default, 6V or 7.2V via jumper
Continuous current: 5 Amps, Max.6A
Output Ripple: 50mV (VIn=24V, VOut=5V@5A load)
BEC 3.3V output
Designed for Baro / Compass module and Spektrum RX
Linear Regulator
Continuous current: 500mA
Physical
Mounting: 30.5 x 30.5mm, Φ4mm with Grommets Φ3mm
Dimensions: 56 x 36 x 13 mm
Weight: 25g
F405-wing general wiring
INAV wiring

INAV mapping
| INAV | Airplane | Multirotor | Timer |
|---|---|---|---|
| S1 | Motor1 | Motor1 | TIM4_CH2 |
| S2 | Motor2 | Motor2 | TIM4_CH1 |
| S3 | Servo | Motor3 | TIM3_CH3 |
| S4 | Servo | Motor4 | TIM3_CH4 |
| S5 | Servo | Motor5 | TIM8_CH3 |
| S6 | Servo | Motor6 | TIM8_CH4 |
| S7 | Servo | Servo | TIM12_CH1 |
| S8 | Servo | Servo | TIM12_CH2 |
| S9 | Servo | Servo | TIM1_CH1 |
| Devices | Pad/Hole | Note |
|---|---|---|
| GPS | UART2,3,4,5,6 | n/a |
| Bluetooth | UART1 | MSP & Baud 57600 |
| VTX control | Uart-TX2,3,4,5,6 | SA / TR |
| on board BMP280 | I2C1 | n/a |
| External Baro | I2C1(DA1, CL1) | BMP280/MS5611/BMP085 |
| OLED | I2C1(DA1, CL1) | 0.96″ |
| Magnetometer | I2C2(DA2, CL2) | HMC5883/MAG3110/QMC5883/IST8310 |
| AirSpeed Pitot | I2C2(DA2, CL2) | Pitot_MS4525 |
| Communication | Pad/Hole | Note |
|---|---|---|
| SBUS | SBUS pad | Built-in inverter on UART2-RX |
| Frsky Smartport | TX2 pad | footnote1 |
| PPM | RX2 pad | Enable PPM RX input |
| IBUS/SUMD | RX2 pad | n/a |
| Spektrum | RX2 pad | n/a |
| CRSF | TX2 & RX2 pad | Need to disable CPU based serial ports |
| CRSF | TX4/RX4 or TX6/RX6 | Any spare UART |
ArduPilot
Arduipilot wiring

Arduipilot mapping
PWM outputs:
| Pin | Output | Timer | GPIO |
|---|---|---|---|
| S1 | PB7 | TIM4_CH2 TIM4 PWM(1) | GPIO(50) |
| S2 | PB6 | TIM4_CH1 TIM4 PWM(2) | GPIO(51) |
| S3 | PB0 | TIM3_CH3 TIM3 PWM(3) | GPIO(52) |
| S4 | PB1 | TIM3_CH4 TIM3 PWM(4) | GPIO(53) |
| S5 | PC8 | TIM8_CH3 TIM8 PWM(5) | GPIO(54) |
| S6 | PC9 | TIM8_CH4 TIM8 PWM(6) | GPIO(55) |
| S7 | PB14 | TIM1_CH2N TIM1 PWM(7) | GPIO(56) |
| S8 | PB15 | TIM1_CH3N TIM1 PWM(8) | GPIO(57) |
| S9 | PA8 | TIM1_CH1 TIM1 PWM(9) | GPIO(58) |
| LED | PA15 | TIM2_CH1 TIM2 PWM(10) | GPIO(59) #on LED pin |
Obs.: S1~s9 are Dshot and PWM capable. However, mixing Dshot and normal PWM operation for outputs is restricted into groups, ie. enabling Dshot for an output in a group requires that ALL outputs in that group be configured and used as Dshot, rather than PWM outputs.
Voltage and current:
| Voltage | Current scale |
|---|---|
| BATT_AMP_PERVLT | 31.5 |
| BATT_CURR_PIN | 11 |
| BATT_MONITOR | 4 |
| BATT_VOLT_MULT | 11.0 |
| BATT_VOLT_PIN | 10 |
Default UART order:
| UART | Function | Name |
|---|---|---|
| SERIAL0 | console | USB |
| SERIAL1 | Telemetry1 | USART1 |
| SERIAL2 | empty | empty |
| SERIAL3 | GPS1 | USART3 |
| SERIAL4 | GPS2 | UART4 |
| SERIAL5 | USER | UART5 |
| SERIAL6 | USER | USART6 |
| SERIAL7 | USART2 | used for RCInput |
I2C communication:
| Function | BUS |
|---|---|
| ARSPD_BUS = 1 | I2C2 (CL2 DA2) |
Crossfire (CRSF) or Expresslrs (EXLRS)
| Function | Value |
|---|---|
| serial1_protocol | 23 |
| serial1_options | 0 |
About
Author
- Name: Frederico Sales
- link: https://assintotica.xyz
- e-mail: frederico@fredericosales.eng.br
- slug: matek-f405-wing
- date: 2024-11-24
-
Built in inverter on UART2-RX. Softserial-TX1 is enabled on TX2 pad by default; in 1.9.0, set telemetry_inversion = ON; in 1.9.1, set telemetry_inversion = OFF. ↩