2 * This file is part of Betaflight.
4 * Betaflight is free software. You can redistribute this software
5 * and/or modify this software under the terms of the GNU General
6 * Public License as published by the Free Software Foundation,
7 * either version 3 of the License, or (at your option) any later
10 * Betaflight is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14 * See the GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public
17 * License along with this software.
19 * If not, see <http://www.gnu.org/licenses/>.
24 #define FC_TARGET_MCU STM32F405
26 #define BOARD_NAME MATEKF405TE
27 #define MANUFACTURER_ID MTKS
30 #define USE_GYRO_SPI_ICM42688P
32 #define USE_ACC_SPI_ICM42688P
33 #define USE_BARO_DPS310
37 #define BEEPER_PIN PB9
38 #define MOTOR1_PIN PC9
39 #define MOTOR2_PIN PC8
40 #define MOTOR3_PIN PB15
41 #define MOTOR4_PIN PA8
42 #define MOTOR5_PIN PB11
43 #define MOTOR6_PIN PB10
44 #define MOTOR7_PIN PB3
45 #define MOTOR8_PIN PA15
46 #define SERVO1_PIN PB14
47 #define SERVO2_PIN PA6
48 #define SERVO3_PIN PB6
49 #define RX_PPM_PIN PA3
50 #define LED_STRIP_PIN PB1
51 #define UART1_TX_PIN PA9
52 #define UART2_TX_PIN PA2
53 #define UART3_TX_PIN PC10
54 #define UART4_TX_PIN PA0
55 #define UART5_TX_PIN PC12
56 #define UART6_TX_PIN PC6
57 #define UART1_RX_PIN PA10
58 #define UART2_RX_PIN PA3
59 #define UART3_RX_PIN PC11
60 #define UART4_RX_PIN PA1
61 #define UART5_RX_PIN PD2
62 #define UART6_RX_PIN PC7
63 #define I2C1_SCL_PIN PB8
64 #define I2C1_SDA_PIN PB7
67 #define SPI1_SCK_PIN PA5
68 #define SPI2_SCK_PIN PB13
69 #define SPI1_SDI_PIN PB4
70 #define SPI2_SDI_PIN PC2
71 #define SPI1_SDO_PIN PA7
72 #define SPI2_SDO_PIN PC3
73 #define ADC_VBAT_PIN PC4
74 #define ADC_RSSI_PIN PB0
75 #define ADC_CURR_PIN PC5
76 #define ADC_EXTERNAL1_PIN PC0
77 #define SDCARD_SPI_CS_PIN PC1
78 #define PINIO1_PIN PA4
79 #define PINIO2_PIN PB5
80 #define FLASH_CS_PIN PC13
81 #define MAX7456_SPI_CS_PIN PB12
82 #define GYRO_1_EXTI_PIN PC15
83 #define GYRO_1_CS_PIN PC14
85 #define TIMER_PIN_MAPPING \
86 TIMER_PIN_MAP( 0, MOTOR1_PIN, 2, 0) \
87 TIMER_PIN_MAP( 1, MOTOR2_PIN, 2, 0) \
88 TIMER_PIN_MAP( 2, MOTOR3_PIN, 1, 1) \
89 TIMER_PIN_MAP( 3, MOTOR4_PIN, 1, 1) \
90 TIMER_PIN_MAP( 4, MOTOR5_PIN, 1, 0) \
91 TIMER_PIN_MAP( 5, MOTOR6_PIN, 1, 0) \
92 TIMER_PIN_MAP( 6, MOTOR7_PIN, 1, 0) \
93 TIMER_PIN_MAP( 7, MOTOR8_PIN, 1, 0) \
94 TIMER_PIN_MAP( 8, SERVO1_PIN, 3, -1) \
95 TIMER_PIN_MAP( 9, SERVO2_PIN, 2, -1) \
96 TIMER_PIN_MAP(10, SERVO3_PIN, 1, 0) \
97 TIMER_PIN_MAP(11, LED_STRIP_PIN, 2, 0) \
98 TIMER_PIN_MAP(12, BEEPER_PIN, 2, -1) \
99 TIMER_PIN_MAP(13, RX_PPM_PIN, 3, -1) \
100 TIMER_PIN_MAP(14, UART2_TX_PIN, 2, 0)
102 #define ADC1_DMA_OPT 1
104 //TODO #define MAG_BUSTYPE I2C
105 #define MAG_I2C_INSTANCE (I2CDEV_1)
106 //TODO #define MAG_HARDWARE AUTO
108 #define BARO_I2C_INSTANCE (I2CDEV_1)
109 #define DEFAULT_CURRENT_METER_SOURCE CURRENT_METER_ADC
110 #define DEFAULT_VOLTAGE_METER_SOURCE VOLTAGE_METER_ADC
111 #define DEFAULT_VOLTAGE_METER_SCALE 210
112 #define DEFAULT_CURRENT_METER_SCALE 150
113 #define BEEPER_INVERTED
114 #define PINIO1_BOX 40
115 #define PINIO2_BOX 41
116 #define SYSTEM_HSE_MHZ 8
117 #define DEFAULT_BLACKBOX_DEVICE BLACKBOX_DEVICE_SDCARD
118 #define MAX7456_SPI_INSTANCE SPI1
119 #define USE_SDCARD_SPI
120 #define SDCARD_SPI_INSTANCE SPI2
123 #define GYRO_1_SPI_INSTANCE SPI1
124 #define GYRO_1_ALIGN CW270_DEG_FLIP
125 #define GYRO_1_ALIGN_PITCH 1800
126 #define GYRO_1_ALIGN_YAW 2700
128 #define SERIALRX_UART SERIAL_PORT_USART2
129 #define DEFAULT_RX_FEATURE FEATURE_RX_SERIAL
130 #define SERIALRX_PROVIDER SERIALRX_CRSF