# hw definition file for processing by chibios_pins.py # Sierra RM3100 & Airspeed common hwdef # MCU class and specific type MCU STM32L431 STM32L431xx # bootloader starts firmware at 36k + 4k (STORAGE_FLASH) FLASH_RESERVE_START_KB 40 # store parameters in pages 18 and 19 STORAGE_FLASH_PAGE 18 define HAL_STORAGE_SIZE 800 # ChibiOS system timer STM32_ST_USE_TIMER 15 define CH_CFG_ST_RESOLUTION 16 # board ID for firmware load APJ_BOARD_ID 1050 # setup build for a peripheral firmware env AP_PERIPH 1 # crystal frequency OSCILLATOR_HZ 16000000 # Flash available FLASH_SIZE_KB 256 define HAL_CAN_POOL_SIZE 6000 # LEDs PA15 LED OUTPUT LOW GPIO(1) STDOUT_SERIAL SD1 STDOUT_BAUDRATE 57600 # order of UARTs SERIAL_ORDER USART1 # USART1 PA9 USART1_TX USART1 SPEED_HIGH NODMA PA10 USART1_RX USART1 SPEED_HIGH NODMA define SERIAL_BUFFERS_SIZE 512 # SPI1 bus for RM3100 PA5 SPI1_SCK SPI1 PA6 SPI1_MISO SPI1 PA7 SPI1_MOSI SPI1 PB12 MAG_CS CS # compass SPIDEV rm3100 SPI1 DEVID1 MAG_CS MODE0 1*MHZ 1*MHZ COMPASS RM3100 SPI:rm3100 false ROTATION_NONE # MS4525DO Airspeed PB6 I2C1_SCL I2C1 PB7 I2C1_SDA I2C1 define HAL_I2C_CLEAR_ON_TIMEOUT 0 define HAL_I2C_INTERNAL_MASK 1 I2C_ORDER I2C1 # allow for reboot command for faster development define HAL_PERIPH_LISTEN_FOR_SERIAL_UART_REBOOT_CMD_PORT 0 # debugger support PA13 JTMS-SWDIO SWD PA14 JTCK-SWCLK SWD define HAL_NO_GPIO_IRQ define DMA_RESERVE_SIZE 0 # stack for fast interrupts define PORT_INT_REQUIRED_STACK 64 # MAIN_STACK is stack for ISR handlers MAIN_STACK 0x300 # PROCESS_STACK controls stack for main thread PROCESS_STACK 0xA00 define HAL_DISABLE_LOOP_DELAY # enable CAN support PA11 CAN1_RX CAN1 PA12 CAN1_TX CAN1 CAN_ORDER 1 define HAL_USE_ADC TRUE define STM32_ADC_USE_ADC1 TRUE PA0 VDD_5V_SENS ADC1 SCALE(2) define HAL_NO_MONITOR_THREAD define AP_PARAM_MAX_EMBEDDED_PARAM 512 define HAL_PERIPH_ENABLE_MAG define HAL_PERIPH_ENABLE_AIRSPEED define AIRSPEED_MAX_SENSORS 1 define HAL_AIRSPEED_TYPE_DEFAULT 1 # keep ROMFS uncompressed as we don't have enough RAM # to uncompress the bootloader at runtime env ROMFS_UNCOMPRESSED True