mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-29 00:23:34 +08:00
Detects and configures it correctly for the Auterion INA226-based power modules.
120 lines
2.3 KiB
Bash
120 lines
2.3 KiB
Bash
#!/bin/sh
|
|
#
|
|
# PX4 FMUv5X specific board sensors init
|
|
#------------------------------------------------------------------------------
|
|
|
|
set HAVE_PM2 yes
|
|
|
|
if ver hwtypecmp V5X005000 V5X005001 V5X005002
|
|
then
|
|
set HAVE_PM2 no
|
|
fi
|
|
if param compare -s ADC_ADS1115_EN 1
|
|
then
|
|
ads1115 start -X
|
|
board_adc start -n
|
|
else
|
|
board_adc start
|
|
fi
|
|
|
|
|
|
if param compare SENS_EN_INA226 1
|
|
then
|
|
# Start Digital power monitors
|
|
ina226 -X -b 1 -t 1 -k start
|
|
|
|
if [ $HAVE_PM2 = yes ]
|
|
then
|
|
ina226 -X -b 2 -t 2 -k start
|
|
fi
|
|
fi
|
|
|
|
if param compare SENS_EN_INA228 1
|
|
then
|
|
# Start Digital power monitors
|
|
ina228 -X -b 1 -t 1 -k start
|
|
if [ $HAVE_PM2 = yes ]
|
|
then
|
|
ina228 -X -b 2 -t 2 -k start
|
|
fi
|
|
fi
|
|
|
|
if param compare SENS_EN_INA238 1
|
|
then
|
|
# Start Digital power monitors
|
|
ina238 -X -b 1 -t 1 -k start
|
|
if [ $HAVE_PM2 = yes ]
|
|
then
|
|
ina238 -X -b 2 -t 2 -k start
|
|
fi
|
|
fi
|
|
|
|
if ver hwtypecmp V5X000000 V5X000001 V5X000002 V5X001000 V5X004000 V5X004001 V5X004002 V5X005001 V5X005002
|
|
then
|
|
#FMUv5Xbase board orientation
|
|
|
|
if ver hwtypecmp V5X000000 V5X000001 V5X004000 V5X004001 V5X005001
|
|
then
|
|
# Internal SPI BMI088
|
|
bmi088 -A -R 4 -s start
|
|
bmi088 -G -R 4 -s start
|
|
else
|
|
# Internal SPI bus ICM20649
|
|
icm20649 -s -R 6 start
|
|
fi
|
|
|
|
# Internal SPI bus ICM42688p
|
|
icm42688p -R 6 -s start
|
|
|
|
# Internal SPI bus ICM-20602 (hard-mounted)
|
|
icm20602 -R 10 -s start
|
|
|
|
# Internal magnetometer on I2c
|
|
bmm150 -I start
|
|
|
|
else
|
|
#SKYNODE base fmu board orientation
|
|
|
|
if ver hwtypecmp V5X009000 V5X009001 V5X00a000 V5X00a001 V5X008000 V5X008001 V5X010001
|
|
then
|
|
# Internal SPI BMI088
|
|
bmi088 -A -R 2 -s start
|
|
bmi088 -G -R 2 -s start
|
|
else
|
|
# Internal SPI bus ICM20649
|
|
icm20649 -s -R 4 start
|
|
fi
|
|
|
|
# Internal SPI bus ICM42688p
|
|
icm42688p -R 4 -s start
|
|
|
|
# Internal SPI bus ICM-20602 (hard-mounted)
|
|
icm20602 -R 8 -s start
|
|
|
|
# Internal magnetometer on I2c
|
|
bmm150 -I -R 6 start
|
|
|
|
# Auto start power monitors
|
|
pm_selector_auterion start
|
|
|
|
fi
|
|
|
|
# External compass on GPS1/I2C1 (the 3rd external bus): standard Holybro Pixhawk 4 or CUAV V5 GPS/compass puck (with lights, safety button, and buzzer)
|
|
ist8310 -X -b 1 -R 10 start
|
|
|
|
# Possible internal Baro
|
|
|
|
# Disable startup of internal baros if param is set to false
|
|
if param compare SENS_INT_BARO_EN 1
|
|
then
|
|
bmp388 -I -a 0x77 start
|
|
if ver hwtypecmp V5X000000 V5X001000 V5X008000 V5X009000 V5X00a000
|
|
then
|
|
bmp388 -I start
|
|
else
|
|
bmp388 -X -b 2 start
|
|
fi
|
|
|
|
fi
|
|
unset HAVE_PM2
|