mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-07-26 16:28:06 +08:00
boards/matek/h743: add fix to resolve no startup of imu for matek_h743 target (#20184)
* Add fix for matek_h743 target that resolves no startup of imu for h743-wing v3 and h743-wlite boards * Added imu driver according to spi bus (https://www.mateksys.com/?portfolio=h743-wing-v2#tab-id-7)
This commit is contained in:
@@ -15,6 +15,7 @@ CONFIG_DRIVERS_GPS=y
|
|||||||
CONFIG_DRIVERS_IMU_INVENSENSE_MPU6000=y
|
CONFIG_DRIVERS_IMU_INVENSENSE_MPU6000=y
|
||||||
CONFIG_DRIVERS_IMU_INVENSENSE_ICM20602=y
|
CONFIG_DRIVERS_IMU_INVENSENSE_ICM20602=y
|
||||||
CONFIG_DRIVERS_IMU_INVENSENSE_ICM42605=y
|
CONFIG_DRIVERS_IMU_INVENSENSE_ICM42605=y
|
||||||
|
CONFIG_DRIVERS_IMU_INVENSENSE_ICM42688P=y
|
||||||
CONFIG_COMMON_LIGHT=n
|
CONFIG_COMMON_LIGHT=n
|
||||||
CONFIG_COMMON_MAGNETOMETER=y
|
CONFIG_COMMON_MAGNETOMETER=y
|
||||||
CONFIG_COMMON_OPTICAL_FLOW=y
|
CONFIG_COMMON_OPTICAL_FLOW=y
|
||||||
|
|||||||
@@ -6,14 +6,18 @@
|
|||||||
board_adc start
|
board_adc start
|
||||||
|
|
||||||
# Internal SPI bus ICM-42605
|
# Internal SPI bus ICM-42605
|
||||||
if ! icm42605 -R 14 -s start
|
if ! mpu6000 -R 12 -b 1 -s start
|
||||||
then
|
then
|
||||||
# internal SPI bus ICM-20602
|
# Internal SPI bus ICM-42688P
|
||||||
icm20602 -R 12 -s start
|
icm42688p -R 12 -b 1 -s start
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Internal SPI bus MPU-6000
|
# internal SPI bus ICM-20602
|
||||||
mpu6000 -R 12 -s start
|
if ! icm20602 -R 12 -b 4 -s start
|
||||||
|
then
|
||||||
|
# Internal SPI bus ICM-42605
|
||||||
|
icm42605 -R 14 -b 4 -s start
|
||||||
|
fi
|
||||||
|
|
||||||
# Internal baro
|
# Internal baro
|
||||||
dps310 -I start -a 118
|
dps310 -I start -a 118
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
constexpr px4_spi_bus_t px4_spi_buses[SPI_BUS_MAX_BUS_ITEMS] = {
|
constexpr px4_spi_bus_t px4_spi_buses[SPI_BUS_MAX_BUS_ITEMS] = {
|
||||||
initSPIBus(SPI::Bus::SPI1, {
|
initSPIBus(SPI::Bus::SPI1, {
|
||||||
initSPIDevice(DRV_IMU_DEVTYPE_MPU6000, SPI::CS{GPIO::PortC, GPIO::Pin15}, SPI::DRDY{GPIO::PortB, GPIO::Pin2}),
|
initSPIDevice(DRV_IMU_DEVTYPE_MPU6000, SPI::CS{GPIO::PortC, GPIO::Pin15}, SPI::DRDY{GPIO::PortB, GPIO::Pin2}),
|
||||||
|
initSPIDevice(DRV_IMU_DEVTYPE_ICM42688P, SPI::CS{GPIO::PortC, GPIO::Pin15}, SPI::DRDY{GPIO::PortB, GPIO::Pin2}),
|
||||||
}),
|
}),
|
||||||
initSPIBus(SPI::Bus::SPI2, {
|
initSPIBus(SPI::Bus::SPI2, {
|
||||||
initSPIDevice(DRV_OSD_DEVTYPE_ATXXXX, SPI::CS{GPIO::PortB, GPIO::Pin12}),
|
initSPIDevice(DRV_OSD_DEVTYPE_ATXXXX, SPI::CS{GPIO::PortB, GPIO::Pin12}),
|
||||||
|
|||||||
Reference in New Issue
Block a user