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 STM32F745
26 #define BOARD_NAME HGLRCF745
27 #define MANUFACTURER_ID HGLR
30 #define USE_GYRO_SPI_MPU6000
32 #define USE_ACC_SPI_MPU6000
33 #define USE_GYRO_SPI_ICM20689
34 #define USE_ACC_SPI_ICM20689
35 #define USE_GYRO_SPI_MPU6500
36 #define USE_ACC_SPI_MPU6500
37 #define USE_BARO_SPI_BMP280
38 #define USE_BARO_SPI_DPS310
42 #define BEEPER_PIN PD15
43 #define MOTOR1_PIN PB0
44 #define MOTOR2_PIN PB1
45 #define MOTOR3_PIN PE9
46 #define MOTOR4_PIN PE11
47 #define RX_PPM_PIN PA3
48 #define SONAR_TRIGGER_PIN PB10
49 #define SONAR_ECHO_PIN PB11
50 #define LED_STRIP_PIN PD12
51 #define UART1_TX_PIN PA9
52 #define UART3_TX_PIN PB10
53 #define UART6_TX_PIN PC6
54 #define UART1_RX_PIN PA10
55 #define UART2_RX_PIN PA3
56 #define UART3_RX_PIN PB11
57 #define UART6_RX_PIN PC7
58 #define UART7_RX_PIN PE7
60 #define SPI1_SCK_PIN PA5
61 #define SPI2_SCK_PIN PB13
62 #define SPI3_SCK_PIN PC10
63 #define SPI4_SCK_PIN PE2
64 #define SPI1_SDI_PIN PA6
65 #define SPI2_SDI_PIN PB14
66 #define SPI3_SDI_PIN PC11
67 #define SPI4_SDI_PIN PE5
68 #define SPI1_SDO_PIN PA7
69 #define SPI2_SDO_PIN PB15
70 #define SPI3_SDO_PIN PC12
71 #define SPI4_SDO_PIN PE6
72 #define ADC_VBAT_PIN PC3
73 #define ADC_RSSI_PIN PC5
74 #define ADC_CURR_PIN PC2
75 #define BARO_CS_PIN PA1
76 #define SDCARD_SPI_CS_PIN PE4
77 #define SDCARD_DETECT_PIN PE3
78 #define MAX7456_SPI_CS_PIN PB12
79 #define GYRO_1_EXTI_PIN PD0
80 #define GYRO_2_EXTI_PIN PE8
81 #define GYRO_1_CS_PIN PA15
82 #define GYRO_2_CS_PIN PA4
83 #define USB_DETECT_PIN PC4
85 #define TIMER_PIN_MAPPING \
86 TIMER_PIN_MAP( 0, PE13, 1, 1) \
87 TIMER_PIN_MAP( 1, PB0 , 2, 0) \
88 TIMER_PIN_MAP( 2, PB1 , 2, 0) \
89 TIMER_PIN_MAP( 3, PE9 , 1, 2) \
90 TIMER_PIN_MAP( 4, PE11, 1, 1) \
91 TIMER_PIN_MAP( 5, PD12, 1, 0) \
92 TIMER_PIN_MAP( 6, PB10, 1, 0) \
93 TIMER_PIN_MAP( 7, PB11, 1, 0) \
94 TIMER_PIN_MAP( 8, PC6 , 2, 0) \
95 TIMER_PIN_MAP( 9, PC7 , 2, 1) \
96 TIMER_PIN_MAP(10, PA3 , 1, 0) \
97 TIMER_PIN_MAP(11, PA2 , 3, -1)
100 #define SPI4_TX_DMA_OPT 0
101 #define ADC1_DMA_OPT 1
103 #define DEFAULT_GYRO_TO_USE GYRO_CONFIG_USE_GYRO_1
104 #define MAG_ALIGN DEFAULT
105 //TODO #define MAG_BUSTYPE I2C
106 #define MAG_I2C_INSTANCE (I2CDEV_2)
107 //TODO #define MAG_I2C_ADDRESS 0
108 //TODO #define MAG_SPI_DEVICE 0
111 #define BARO_SPI_INSTANCE SPI1
113 #define BARO_I2C_INSTANCE (I2CDEV_0)
115 #define ADC_INSTANCE ADC1
116 #define DEFAULT_BLACKBOX_DEVICE BLACKBOX_DEVICE_SDCARD
117 #define DEFAULT_DSHOT_BURST DSHOT_DMAR_OFF
118 #define DEFAULT_CURRENT_METER_SOURCE CURRENT_METER_ADC
119 #define DEFAULT_VOLTAGE_METER_SOURCE VOLTAGE_METER_ADC
120 #define DEFAULT_CURRENT_METER_SCALE 400
121 #define BEEPER_INVERTED
122 #define BEEPER_PWM_HZ 0
123 #define SDCARD_DETECT_INVERTED
124 #define USE_SDCARD_SPI
125 #define SDCARD_SPI_INSTANCE SPI4
126 //TODO #define MAX7456_CLOCK NOMINAL
127 #define MAX7456_SPI_INSTANCE SPI2
128 //TODO #define MAX7456_PREINIT_OPU OFF
129 //TODO #define LED_INVERSION 0
130 #define DASHBOARD_I2C_INSTANCE (I2CDEV_2)
131 //TODO #define DASHBOARD_I2C_ADDR 60
132 //TODO #define USB_MSC_PIN_PULLUP ON
133 #define FLASH_SPI_INSTANCE SPI0
135 #define GYRO_1_SPI_INSTANCE SPI3
136 #define GYRO_1_ALIGN CW90_DEG
138 #define GYRO_2_SPI_INSTANCE SPI1
139 #define GYRO_2_ALIGN DEFAULT
140 //TODO #define I2C1_PULLUP OFF
141 //TODO #define I2C1_OVERCLOCK ON
142 //TODO #define I2C2_PULLUP OFF
143 //TODO #define I2C2_OVERCLOCK ON
144 //TODO #define I2C3_PULLUP OFF
145 //TODO #define I2C3_OVERCLOCK ON
146 //TODO #define I2C4_PULLUP OFF
147 //TODO #define I2C4_OVERCLOCK ON
148 //TODO #define MCO2_ON_PC9 OFF