2022-12-15 17:11:55 -04:00
|
|
|
# MCU class and specific type
|
|
|
|
MCU STM32F4xx STM32F427xx
|
|
|
|
|
|
|
|
# USB setup
|
2023-01-09 22:13:28 -04:00
|
|
|
USB_VENDOR 0x35a7 # ONLY FOR USE BY ThePeach
|
2022-12-15 17:11:55 -04:00
|
|
|
USB_PRODUCT 0x0001
|
|
|
|
USB_STRING_MANUFACTURER "ThePeach"
|
|
|
|
USB_STRING_PRODUCT "FCC-K1 BL"
|
|
|
|
|
|
|
|
# board ID for firmware load
|
|
|
|
APJ_BOARD_ID 212
|
|
|
|
|
|
|
|
# crystal frequency
|
|
|
|
OSCILLATOR_HZ 24000000
|
|
|
|
|
|
|
|
# ChibiOS system timer
|
|
|
|
STM32_ST_USE_TIMER 5
|
|
|
|
|
|
|
|
# flash size
|
|
|
|
FLASH_SIZE_KB 2048
|
|
|
|
|
|
|
|
# location of application code
|
|
|
|
FLASH_BOOTLOADER_LOAD_KB 16
|
|
|
|
|
|
|
|
# bootloader loads at start of flash
|
|
|
|
FLASH_RESERVE_START_KB 0
|
|
|
|
|
|
|
|
# USB setup
|
|
|
|
USB_STRING_MANUFACTURER "ArduPilot"
|
|
|
|
|
|
|
|
# baudrate to run bootloader at on uarts
|
|
|
|
define BOOTLOADER_BAUDRATE 115200
|
|
|
|
|
|
|
|
# uarts and USB to run bootloader protocol on
|
|
|
|
SERIAL_ORDER OTG1 USART2 USART3 UART7
|
|
|
|
|
|
|
|
# this is the pin that senses USB being connected. It is an input pin
|
|
|
|
# setup as OPENDRAIN
|
|
|
|
PA9 VBUS INPUT OPENDRAIN
|
|
|
|
|
|
|
|
# now we define the pins that USB is connected on
|
|
|
|
PA11 OTG_FS_DM OTG1
|
|
|
|
PA12 OTG_FS_DP OTG1
|
|
|
|
|
|
|
|
# these are the pins for SWD debugging with a STlinkv2 or black-magic probe
|
|
|
|
PA13 JTMS-SWDIO SWD
|
|
|
|
PA14 JTCK-SWCLK SWD
|
|
|
|
|
|
|
|
# Another USART, this one for telem1
|
|
|
|
PD5 USART2_TX USART2
|
|
|
|
PD6 USART2_RX USART2
|
|
|
|
PD3 USART2_CTS USART2
|
|
|
|
PD4 USART2_RTS USART2
|
|
|
|
|
|
|
|
# the telem2 USART, also with RTS/CTS available
|
|
|
|
# USART3 serial3 telem2
|
|
|
|
PD8 USART3_TX USART3
|
|
|
|
PD9 USART3_RX USART3
|
|
|
|
PD11 USART3_CTS USART3
|
|
|
|
PD12 USART3_RTS USART3
|
|
|
|
|
|
|
|
# UART7 maps to uartF in the HAL (serial5 in SERIALn_ parameters)
|
|
|
|
PE7 UART7_RX UART7
|
|
|
|
PE8 UART7_TX UART7
|
|
|
|
|
|
|
|
# define a LED
|
|
|
|
PE12 LED_BOOTLOADER OUTPUT
|
|
|
|
define HAL_LED_ON 1
|
|
|
|
|
|
|
|
# this adds a C define which sets up the ArduPilot architecture
|
|
|
|
# define. Any line starting with 'define' is copied literally as
|
|
|
|
# a #define in the hwdef.h header
|
|
|
|
define HAL_CHIBIOS_ARCH_FMUV3 1
|
|
|
|
|
|
|
|
# we need to tell HAL_ChibiOS/Storage.cpp how much storage is
|
|
|
|
# available (in bytes)
|
|
|
|
|
|
|
|
# Add CS pins to ensure they are high in bootloader
|
|
|
|
PC2 MPU9250_CS CS
|
|
|
|
PC15 ICM20602_CS CS
|
|
|
|
PD7 MS5611_CS CS
|
|
|
|
PD10 FRAM_CS CS SPEED_VERYLOW
|
|
|
|
|
|
|
|
# default to all pins low to avoid ESD issues
|
|
|
|
DEFAULTGPIO OUTPUT LOW PULLDOWN
|