diff --git a/.ci/Jenkinsfile-hardware b/.ci/Jenkinsfile-hardware index ff9747a2b7..eae4080920 100644 --- a/.ci/Jenkinsfile-hardware +++ b/.ci/Jenkinsfile-hardware @@ -102,6 +102,7 @@ pipeline { steps { // configure sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param save"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "px4io forceupdate 14662 /etc/extras/px4_io-v2_default.bin" || true' // force px4io update @@ -175,6 +176,7 @@ pipeline { steps { // configure sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 4001"' // generic multicopter sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param save"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "reboot" || true' // reboot to apply @@ -247,6 +249,7 @@ pipeline { steps { // configure sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param save"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "px4io forceupdate 14662 /etc/extras/px4_io-v2_default.bin" || true' // force px4io update @@ -320,6 +323,7 @@ pipeline { steps { // configure sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set IMU_GYRO_RATEMAX 2000"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param save"' @@ -471,6 +475,7 @@ pipeline { steps { // configure sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param save"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "reboot" || true' // reboot to apply @@ -620,6 +625,7 @@ pipeline { steps { // configure sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param set SYS_AUTOSTART 4001"' // generic vtol standardulticopter sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "param save"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-SEGGER_*` --cmd "reboot" || true' // reboot to apply @@ -694,6 +700,7 @@ pipeline { sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set DSHOT_CONFIG 600"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set IMU_GYRO_RATEMAX 4000"' + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_USE_IO 0"' // for dshot @@ -770,6 +777,7 @@ pipeline { steps { // configure sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOCONFIG 2"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param set SYS_AUTOSTART 4001"' // generic multicopter sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "param save"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-FTDI_*` --cmd "reboot" || true' // reboot to apply diff --git a/boards/av/x-v1/init/rc.board_defaults b/boards/av/x-v1/init/rc.board_defaults index 38040df7e3..1192c2f93e 100644 --- a/boards/av/x-v1/init/rc.board_defaults +++ b/boards/av/x-v1/init/rc.board_defaults @@ -8,7 +8,9 @@ param set CBRK_SUPPLY_CHK 894281 if [ $AUTOCNF = yes ] then - + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 fi set LOGGER_BUF 64 diff --git a/boards/cuav/nora/init/rc.board_defaults b/boards/cuav/nora/init/rc.board_defaults index 13542b348b..96ff8a2b4e 100644 --- a/boards/cuav/nora/init/rc.board_defaults +++ b/boards/cuav/nora/init/rc.board_defaults @@ -31,6 +31,12 @@ then param set BAT1_A_PER_V 24 param set BAT2_A_PER_V 24 + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 3 + param set SENS_MAG_MODE 0 + # Enable IMU thermal control param set SENS_EN_THERMAL 1 fi diff --git a/boards/cuav/x7pro/init/rc.board_defaults b/boards/cuav/x7pro/init/rc.board_defaults index 20725172f6..22938969b8 100644 --- a/boards/cuav/x7pro/init/rc.board_defaults +++ b/boards/cuav/x7pro/init/rc.board_defaults @@ -31,6 +31,12 @@ then param set BAT1_A_PER_V 24 param set BAT2_A_PER_V 24 + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 3 + param set SENS_MAG_MODE 0 + # Enable IMU thermal control param set SENS_EN_THERMAL 1 fi diff --git a/boards/cubepilot/cubeorange/init/rc.board_defaults b/boards/cubepilot/cubeorange/init/rc.board_defaults index f5d4f8bf57..174c75be77 100644 --- a/boards/cubepilot/cubeorange/init/rc.board_defaults +++ b/boards/cubepilot/cubeorange/init/rc.board_defaults @@ -31,6 +31,12 @@ then param set BAT1_A_PER_V 17 param set BAT2_A_PER_V 17 + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 3 + param set SENS_MAG_MODE 0 + # Disable IMU thermal control param set SENS_EN_THERMAL 0 fi diff --git a/boards/cubepilot/cubeyellow/init/rc.board_defaults b/boards/cubepilot/cubeyellow/init/rc.board_defaults index cffab7affe..efdda55dcf 100644 --- a/boards/cubepilot/cubeyellow/init/rc.board_defaults +++ b/boards/cubepilot/cubeyellow/init/rc.board_defaults @@ -14,6 +14,10 @@ then param set BAT1_A_PER_V 17 param set BAT2_A_PER_V 17 + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + # Disable IMU thermal control param set SENS_EN_THERMAL 0 fi diff --git a/boards/holybro/durandal-v1/init/rc.board_defaults b/boards/holybro/durandal-v1/init/rc.board_defaults index a4f505bbec..70c672815a 100644 --- a/boards/holybro/durandal-v1/init/rc.board_defaults +++ b/boards/holybro/durandal-v1/init/rc.board_defaults @@ -24,6 +24,12 @@ unset BL_FILE if [ $AUTOCNF = yes ] then + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 3 + param set SENS_MAG_MODE 0 + # Enable IMU thermal control param set SENS_EN_THERMAL 1 fi diff --git a/boards/holybro/pix32v5/init/rc.board_defaults b/boards/holybro/pix32v5/init/rc.board_defaults index 1c2544dba8..13c6667d22 100644 --- a/boards/holybro/pix32v5/init/rc.board_defaults +++ b/boards/holybro/pix32v5/init/rc.board_defaults @@ -6,7 +6,11 @@ if [ $AUTOCNF = yes ] then - + # Multi-EKF + param set EKF2_MULTI_IMU 2 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 2 + param set SENS_MAG_MODE 0 fi set LOGGER_BUF 64 diff --git a/boards/modalai/fc-v1/init/rc.board_defaults b/boards/modalai/fc-v1/init/rc.board_defaults index f37f85ff9c..0d912abdc9 100644 --- a/boards/modalai/fc-v1/init/rc.board_defaults +++ b/boards/modalai/fc-v1/init/rc.board_defaults @@ -26,6 +26,10 @@ then # V110 - J1011 pin 5 # param set CBRK_IO_SAFETY 22027 + + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 fi # diff --git a/boards/mro/ctrl-zero-f7/init/rc.board_defaults b/boards/mro/ctrl-zero-f7/init/rc.board_defaults index 2930b72d65..4027942d80 100644 --- a/boards/mro/ctrl-zero-f7/init/rc.board_defaults +++ b/boards/mro/ctrl-zero-f7/init/rc.board_defaults @@ -6,7 +6,9 @@ if [ $AUTOCNF = yes ] then - + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 fi set LOGGER_BUF 64 diff --git a/boards/mro/pixracerpro/init/rc.board_defaults b/boards/mro/pixracerpro/init/rc.board_defaults index 60202fe6b8..f19ec43192 100644 --- a/boards/mro/pixracerpro/init/rc.board_defaults +++ b/boards/mro/pixracerpro/init/rc.board_defaults @@ -29,6 +29,12 @@ then param set BAT_A_PER_V 17 param set BAT1_A_PER_V 17 + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 3 + param set SENS_MAG_MODE 0 + fi set LOGGER_BUF 64 diff --git a/boards/mro/x21-777/init/rc.board_defaults b/boards/mro/x21-777/init/rc.board_defaults index 0d6ac88425..c1b208f3ef 100644 --- a/boards/mro/x21-777/init/rc.board_defaults +++ b/boards/mro/x21-777/init/rc.board_defaults @@ -6,7 +6,11 @@ if [ $AUTOCNF = yes ] then - + # Multi-EKF + param set EKF2_MULTI_IMU 2 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 2 + param set SENS_MAG_MODE 0 fi set LOGGER_BUF 64 diff --git a/boards/px4/fmu-v4pro/init/rc.board_defaults b/boards/px4/fmu-v4pro/init/rc.board_defaults index 2e8322ae7e..703f414aa8 100644 --- a/boards/px4/fmu-v4pro/init/rc.board_defaults +++ b/boards/px4/fmu-v4pro/init/rc.board_defaults @@ -6,7 +6,9 @@ if [ $AUTOCNF = yes ] then - + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 fi set LOGGER_BUF 64 diff --git a/boards/px4/fmu-v5/init/rc.board_defaults b/boards/px4/fmu-v5/init/rc.board_defaults index a634600182..ddb8953c51 100644 --- a/boards/px4/fmu-v5/init/rc.board_defaults +++ b/boards/px4/fmu-v5/init/rc.board_defaults @@ -6,7 +6,19 @@ if [ $AUTOCNF = yes ] then - + if ver hwtypecmp V550 V560 + then + # CUAV V5+ (V550) and V5nano (V560) have 3 IMUs + # Multi-EKF (IMUs only) + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + else + # Multi-EKF + param set EKF2_MULTI_IMU 2 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 2 + param set SENS_MAG_MODE 0 + fi fi # disable px4io on HolyBro mini (V540) and CUAV V5nano (V560) diff --git a/boards/px4/fmu-v5x/init/rc.board_defaults b/boards/px4/fmu-v5x/init/rc.board_defaults index e818caaf97..4c4b84511e 100644 --- a/boards/px4/fmu-v5x/init/rc.board_defaults +++ b/boards/px4/fmu-v5x/init/rc.board_defaults @@ -6,7 +6,9 @@ if [ $AUTOCNF = yes ] then - + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 fi set LOGGER_BUF 64 diff --git a/boards/px4/fmu-v6x/init/rc.board_defaults b/boards/px4/fmu-v6x/init/rc.board_defaults index 85e3c4aeed..60582cd59f 100644 --- a/boards/px4/fmu-v6x/init/rc.board_defaults +++ b/boards/px4/fmu-v6x/init/rc.board_defaults @@ -6,7 +6,11 @@ if [ $AUTOCNF = yes ] then - + # Multi-EKF + param set EKF2_MULTI_IMU 3 + param set SENS_IMU_MODE 0 + param set EKF2_MULTI_MAG 3 + param set SENS_MAG_MODE 0 fi set LOGGER_BUF 64 diff --git a/posix-configs/rpi/pilotpi_mc.config b/posix-configs/rpi/pilotpi_mc.config index bbb05ef740..28f8211961 100644 --- a/posix-configs/rpi/pilotpi_mc.config +++ b/posix-configs/rpi/pilotpi_mc.config @@ -14,6 +14,12 @@ param set CBRK_SUPPLY_CHK 894281 param set MAV_BROADCAST 1 param set MAV_TYPE 2 +# Multi-EKF +param set EKF2_MULTI_IMU 2 +param set SENS_IMU_MODE 0 +param set EKF2_MULTI_MAG 3 +param set SENS_MAG_MODE 0 + dataman start load_mon start diff --git a/posix-configs/rpi/px4.config b/posix-configs/rpi/px4.config index 4be1589208..55bdb73284 100644 --- a/posix-configs/rpi/px4.config +++ b/posix-configs/rpi/px4.config @@ -17,6 +17,12 @@ param set MAV_BROADCAST 1 param set MAV_TYPE 2 param set IMU_GYRO_RATEMAX 400 +# Multi-EKF +param set EKF2_MULTI_IMU 2 +param set SENS_IMU_MODE 0 +param set EKF2_MULTI_MAG 3 +param set SENS_MAG_MODE 0 + dataman start load_mon start diff --git a/posix-configs/rpi/px4_fw.config b/posix-configs/rpi/px4_fw.config index 6952c3d802..7f2f5c228e 100644 --- a/posix-configs/rpi/px4_fw.config +++ b/posix-configs/rpi/px4_fw.config @@ -17,6 +17,12 @@ param set SYS_AUTOSTART 2100 param set MAV_TYPE 1 param set IMU_GYRO_RATEMAX 400 +# Multi-EKF +param set EKF2_MULTI_IMU 2 +param set SENS_IMU_MODE 0 +param set EKF2_MULTI_MAG 3 +param set SENS_MAG_MODE 0 + dataman start load_mon start diff --git a/posix-configs/rpi/px4_hil.config b/posix-configs/rpi/px4_hil.config index 58a4c2b126..b9d945d2bd 100644 --- a/posix-configs/rpi/px4_hil.config +++ b/posix-configs/rpi/px4_hil.config @@ -18,6 +18,12 @@ param set SYS_AUTOSTART 1001 param set MAV_BROADCAST 1 param set MAV_TYPE 2 +# Multi-EKF +param set EKF2_MULTI_IMU 2 +param set SENS_IMU_MODE 0 +param set EKF2_MULTI_MAG 3 +param set SENS_MAG_MODE 0 + dataman start load_mon start diff --git a/posix-configs/rpi/px4_test.config b/posix-configs/rpi/px4_test.config index 663ca8dce8..d31dc08ffe 100644 --- a/posix-configs/rpi/px4_test.config +++ b/posix-configs/rpi/px4_test.config @@ -17,6 +17,12 @@ param set MAV_BROADCAST 1 param set MAV_TYPE 2 param set IMU_GYRO_RATEMAX 400 +# Multi-EKF +param set EKF2_MULTI_IMU 2 +param set SENS_IMU_MODE 0 +param set EKF2_MULTI_MAG 3 +param set SENS_MAG_MODE 0 + dataman start load_mon start