diff --git a/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk6C/hwdef.dat b/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk6C/hwdef.dat index 78eacecfd4..f0a16789bf 100644 --- a/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk6C/hwdef.dat +++ b/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk6C/hwdef.dat @@ -144,6 +144,12 @@ PD13 I2C4_SDA I2C4 I2C_ORDER I2C4 I2C1 I2C2 define HAL_I2C_INTERNAL_MASK 1 +# this board is tight on DMA channels. To allow for more UART DMA we +# disable DMA on I2C. This also prevents a problem with DMA on I2C +# interfering with IMUs +NODMA I2C* +define STM32_I2C_USE_DMA FALSE + # heater PB9 HEATER_EN OUTPUT LOW GPIO(80) define HAL_HEATER_GPIO_PIN 80 @@ -215,9 +221,14 @@ define HAL_BARO_ALLOW_INIT_NO_BARO 1 define HAL_PROBE_EXTERNAL_I2C_COMPASSES COMPASS IST8310 I2C:0:0x0C false ROTATION_NONE +# compensate for magnetic field generated by the heater on 6C IST8310 +define HAL_HEATER_MAG_OFFSET {AP_HAL::Device::make_bus_id(AP_HAL::Device::BUS_TYPE_I2C,0,0xc,0xa),Vector3f(17,14,0)} + + # we need to stop the probe of an IST8310 as an internal compass with PITCH_180 define HAL_COMPASS_DISABLE_IST8310_INTERNAL_PROBE + # SPI devices SPIDEV bmi055_g SPI1 DEVID1 BMI055_G_CS MODE3 10*MHZ 10*MHZ SPIDEV bmi055_a SPI1 DEVID2 BMI055_A_CS MODE3 10*MHZ 10*MHZ