|
| 1 | +# hw definition file for processing by chibios_hwdef.py |
| 2 | +# for the artosynH743 hardware |
| 3 | + |
| 4 | +# MCU class and specific type |
| 5 | +MCU STM32H7xx STM32H743xx |
| 6 | + |
| 7 | +# board ID. See Tools/AP_Bootloader/board_types.txt |
| 8 | +APJ_BOARD_ID AP_HW_ArtosynH743 |
| 9 | + |
| 10 | +# crystal frequency |
| 11 | +OSCILLATOR_HZ 8000000 |
| 12 | + |
| 13 | +# ChibiOS system timer |
| 14 | +STM32_ST_USE_TIMER 12 |
| 15 | +define CH_CFG_ST_RESOLUTION 16 |
| 16 | + |
| 17 | +# flash size |
| 18 | +FLASH_SIZE_KB 2048 |
| 19 | +FLASH_RESERVE_START_KB 128 |
| 20 | + |
| 21 | +define HAL_STORAGE_SIZE 32768 |
| 22 | +STORAGE_FLASH_PAGE 14 |
| 23 | + |
| 24 | +# default to all pins low to avoid ESD issues |
| 25 | +DEFAULTGPIO OUTPUT LOW PULLDOWN |
| 26 | + |
| 27 | +# order of UARTs (and USB) |
| 28 | +SERIAL_ORDER OTG1 USART1 USART2 USART3 UART4 UART5 USART6 UART7 UART8 |
| 29 | + |
| 30 | +# USB |
| 31 | +PA11 OTG_FS_DM OTG1 |
| 32 | +PA12 OTG_FS_DP OTG1 |
| 33 | + |
| 34 | +# UARTs |
| 35 | +PA9 USART1_TX USART1 |
| 36 | +PA10 USART1_RX USART1 |
| 37 | +PA2 USART2_TX USART2 |
| 38 | +PA3 USART2_RX USART2 |
| 39 | +PD8 USART3_TX USART3 |
| 40 | +PD9 USART3_RX USART3 |
| 41 | +PA0 UART4_TX UART4 |
| 42 | +PA1 UART4_RX UART4 |
| 43 | +PB6 UART5_TX UART5 |
| 44 | +PB5 UART5_RX UART5 |
| 45 | +PC6 USART6_TX USART6 |
| 46 | +PC7 USART6_RX USART6 |
| 47 | +PE8 UART7_TX UART7 |
| 48 | +PE7 UART7_RX UART7 |
| 49 | +PE1 UART8_TX UART8 |
| 50 | +PE0 UART8_RX UART8 |
| 51 | + |
| 52 | +# SWD |
| 53 | +PA13 JTMS-SWDIO SWD |
| 54 | +PA14 JTCK-SWCLK SWD |
| 55 | + |
| 56 | +# order of I2C |
| 57 | +I2C_ORDER I2C2 I2C1 |
| 58 | + |
| 59 | +# I2C |
| 60 | +PB8 I2C1_SCL I2C1 |
| 61 | +PB9 I2C1_SDA I2C1 |
| 62 | +PB10 I2C2_SCL I2C2 |
| 63 | +PB11 I2C2_SDA I2C2 |
| 64 | + |
| 65 | +# PWM |
| 66 | +PE14 TIM1_CH4 TIM1 PWM(1) GPIO(50) BIDIR |
| 67 | +PE13 TIM1_CH3 TIM1 PWM(2) GPIO(51) |
| 68 | +PE11 TIM1_CH2 TIM1 PWM(3) GPIO(52) BIDIR |
| 69 | +PE9 TIM1_CH1 TIM1 PWM(4) GPIO(53) |
| 70 | +PB1 TIM3_CH4 TIM3 PWM(5) GPIO(54) BIDIR |
| 71 | +PB0 TIM3_CH3 TIM3 PWM(6) GPIO(55) |
| 72 | +PD12 TIM4_CH1 TIM4 PWM(7) GPIO(56) BIDIR |
| 73 | +PD13 TIM4_CH2 TIM4 PWM(8) GPIO(57) |
| 74 | +PE5 TIM15_CH1 TIM15 PWM(9) GPIO(58) |
| 75 | +PE6 TIM15_CH2 TIM15 PWM(10) GPIO(59) |
| 76 | + |
| 77 | +# LED-pad |
| 78 | +PD14 TIM4_CH3 TIM4 PWM(11) GPIO(60) #M11 |
| 79 | + |
| 80 | +# BUZZER |
| 81 | +PD15 BUZZER OUTPUT GPIO(61) LOW |
| 82 | +define HAL_BUZZER_PIN 61 |
| 83 | + |
| 84 | +# LEDs |
| 85 | +PE3 LED_RED OUTPUT LOW GPIO(0) |
| 86 | +PE2 LED_GREEN OUTPUT LOW GPIO(1) |
| 87 | +PE4 LED_BLUE OUTPUT LOW GPIO(2) |
| 88 | + |
| 89 | +define AP_NOTIFY_GPIO_LED_RGB_RED_PIN 0 |
| 90 | +define AP_NOTIFY_GPIO_LED_RGB_GREEN_PIN 1 |
| 91 | +define AP_NOTIFY_GPIO_LED_RGB_BLUE_PIN 2 |
| 92 | + |
| 93 | +define AP_NOTIFY_GPIO_LED_RGB_ENABLED 1 |
| 94 | + |
| 95 | +# ADC for Power |
| 96 | +PC0 BATT_VOLTAGE_SENS ADC1 SCALE(1) |
| 97 | +PC1 BATT_CURRENT_SENS ADC1 SCALE(1) |
| 98 | + |
| 99 | +# setup for battery |
| 100 | +define HAL_BATT_MONITOR_DEFAULT 4 |
| 101 | +define HAL_BATT_VOLT_PIN 10 |
| 102 | +define HAL_BATT_CURR_PIN 11 |
| 103 | +define HAL_BATT_VOLT_SCALE 21.12 |
| 104 | +define HAL_BATT_CURR_SCALE 40.2 |
| 105 | + |
| 106 | +# compass |
| 107 | +define HAL_COMPASS_DISABLE_QMC5883L_INTERNAL_PROBE |
| 108 | +define AP_COMPASS_PROBING_ENABLED 1 |
| 109 | +COMPASS QMC5883L I2C:ALL_EXTERNAL:0x0D true ROTATION_NONE |
| 110 | +COMPASS QMC5883L I2C:ALL_INTERNAL:0x0D false ROTATION_NONE |
| 111 | + |
| 112 | +# microSD support |
| 113 | +PC12 SDMMC1_CK SDMMC1 |
| 114 | +PD2 SDMMC1_CMD SDMMC1 |
| 115 | +PC8 SDMMC1_D0 SDMMC1 |
| 116 | +PC9 SDMMC1_D1 SDMMC1 |
| 117 | +PC10 SDMMC1_D2 SDMMC1 |
| 118 | +PC11 SDMMC1_D3 SDMMC1 |
| 119 | +define FATFS_HAL_DEVICE SDCD1 |
| 120 | + |
| 121 | +# SPI1 - OSD |
| 122 | +PA5 SPI1_SCK SPI1 |
| 123 | +PA6 SPI1_MISO SPI1 |
| 124 | +PA7 SPI1_MOSI SPI1 |
| 125 | +PB12 AT7456E_CS CS |
| 126 | + |
| 127 | +# SPI2 - ICM-42688P (IMU1) |
| 128 | +PD3 SPI2_SCK SPI2 |
| 129 | +PC2 SPI2_MISO SPI2 |
| 130 | +PC3 SPI2_MOSI SPI2 |
| 131 | +PD5 ICM42688_1_CS CS |
| 132 | +PC15 DRDY1_ICM42688 INPUT |
| 133 | + |
| 134 | +# SPI3 - ICM-42688P (IMU2) |
| 135 | +PB3 SPI3_SCK SPI3 |
| 136 | +PB4 SPI3_MISO SPI3 |
| 137 | +PD6 SPI3_MOSI SPI3 |
| 138 | +PA15 ICM42688_2_CS CS |
| 139 | +PB7 DRDY2_ICM42688 INPUT |
| 140 | + |
| 141 | +# SPI devices |
| 142 | +SPIDEV icm42688_1 SPI2 DEVID1 ICM42688_1_CS MODE3 1*MHZ 24*MHZ |
| 143 | +SPIDEV icm42688_2 SPI3 DEVID2 ICM42688_2_CS MODE3 1*MHZ 24*MHZ |
| 144 | +SPIDEV osd SPI1 DEVID4 AT7456E_CS MODE0 10*MHZ 10*MHZ |
| 145 | + |
| 146 | +# 2 IMUs - ICM-42688P |
| 147 | +# ROTATION_ROLL_180_YAW_90 matches typical FC mounting; adjust per board layout |
| 148 | +IMU Invensensev3 SPI:icm42688_1 ROTATION_ROLL_180_YAW_90 |
| 149 | +IMU Invensensev3 SPI:icm42688_2 ROTATION_ROLL_180 |
| 150 | + |
| 151 | +# barometer - BMP390 on I2C bus 0 (I2C2), default address 0x77 |
| 152 | +# SDO pin low = 0x76, SDO pin high = 0x77 |
| 153 | +BARO BMP390 I2C:0:0x77 |
| 154 | + |
| 155 | +# Camera switch via PinIO1 on PD4 (formerly BMI088_A_CS, now repurposed) |
| 156 | +PD4 PINIO1 OUTPUT GPIO(70) LOW |
| 157 | +define HAL_PINIO_PIN_COUNT 1 |
| 158 | +define HAL_PINIO1_PIN 70 |
| 159 | +define HAL_PINIO1_PARAMS 0 |
| 160 | + |
| 161 | +# enable FAT filesystem support (needs a microSD defined via SDMMC) |
| 162 | +define HAL_OS_FATFS_IO 1 |
| 163 | + |
| 164 | +# setup for serial ports |
| 165 | +define DEFAULT_SERIAL2_PROTOCOL SerialProtocol_MSP_DisplayPort |
| 166 | +define DEFAULT_SERIAL4_PROTOCOL SerialProtocol_MAVLink2 |
| 167 | +define DEFAULT_SERIAL6_PROTOCOL SerialProtocol_RCIN |
| 168 | +define DEFAULT_SERIAL7_PROTOCOL SerialProtocol_ESCTelemetry |
| 169 | +define DEFAULT_SERIAL8_PROTOCOL SerialProtocol_MAVLink2 |
| 170 | +define DEFAULT_SERIAL8_BAUD 115 |
| 171 | + |
| 172 | +# setup for OSD |
| 173 | +define OSD_ENABLED 1 |
| 174 | +define HAL_OSD_TYPE_DEFAULT 1 |
| 175 | +ROMFS_WILDCARD libraries/AP_OSD/fonts/font*.bin |
| 176 | + |
| 177 | +# setup for BF migration |
| 178 | +define HAL_FRAME_TYPE 12 |
0 commit comments