Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP]: add board specific airframe mechanism #12798

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions ROMFS/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -138,11 +138,10 @@ if(config_bl_file)
)
endif()

set(OPTIONAL_BOARD_RC)
list(APPEND OPTIONAL_BOARD_RC
rc.board_defaults
rc.board_sensors
rc.board_extras
# optional board RC files
file(GLOB_RECURSE OPTIONAL_BOARD_RC
RELATIVE ${PX4_BOARD_DIR}/init/
${PX4_BOARD_DIR}/init/*
)

foreach(board_rc_file ${OPTIONAL_BOARD_RC})
Expand Down
82 changes: 9 additions & 73 deletions ROMFS/px4fmu_common/init.d-posix/rcS
Original file line number Diff line number Diff line change
Expand Up @@ -90,81 +90,17 @@ udp_offboard_port_local=$((14580+px4_instance))
udp_offboard_port_remote=$((14540+px4_instance))
udp_gcs_port_local=$((14570+px4_instance))

if [ $AUTOCNF = yes ]
then
param set SYS_AUTOSTART $REQUESTED_AUTOSTART

param set BAT_N_CELLS 3

param set CAL_ACC0_ID 1311244
param set CAL_ACC_PRIME 1311244

param set CAL_GYRO0_ID 2294028
param set CAL_GYRO_PRIME 2294028

param set CAL_MAG0_ID 197388
param set CAL_MAG_PRIME 197388

param set CAL_BARO_PRIME 6620172

param set CBRK_AIRSPD_CHK 0

param set COM_DISARM_LAND 0.1
param set COM_OBL_ACT 2
param set COM_OBL_RC_ACT 0
param set COM_OF_LOSS_T 5
param set COM_RC_IN_MODE 1

param set EKF2_AID_MASK 1
param set EKF2_ANGERR_INIT 0.01
param set EKF2_HGT_MODE 0
param set EKF2_GBIAS_INIT 0.01
# Speedup SITL startup
param set EKF2_REQ_GPS_H 0.5

# LPE: GPS only mode
param set LPE_FUSION 145

param set MIS_TAKEOFF_ALT 2.5

param set MC_PITCH_P 6
param set MC_PITCHRATE_P 0.2
param set MC_ROLL_P 6
param set MC_ROLLRATE_P 0.2

param set MPC_ALT_MODE 0
param set MPC_HOLD_MAX_Z 2
param set MPC_Z_VEL_I 0.15
param set MPC_Z_VEL_P 0.6
param set MPC_XY_P 0.8
param set MPC_XY_VEL_P 0.2
param set MPC_XY_VEL_I 0.02
param set MPC_XY_VEL_D 0.016

param set MPC_JERK_MIN 10
param set MPC_JERK_MAX 20
param set MPC_ACC_HOR_MAX 3

param set NAV_ACC_RAD 2
param set NAV_DLL_ACT 2

param set RTL_DESCEND_ALT 5
param set RTL_LAND_DELAY 5
param set RTL_RETURN_ALT 30

# By default log from boot until first disarm.
param set SDLOG_MODE 1
# enable default, estimator replay and vision/avoidance logging profiles
param set SDLOG_PROFILE 131
param set SDLOG_DIRS_MAX 7
param set SENS_BOARD_ROT 0
param set SENS_BOARD_X_OFF 0.000001
param set SENS_DPRES_OFF 0.001
param set SYS_RESTART_TYPE 2

param set TRIG_INTERFACE 3

#
# Optional board defaults: rc.board_defaults
#
set BOARD_RC_DEFAULTS /etc/init.d/rc.board_defaults
if [ -f $BOARD_RC_DEFAULTS ]
then
echo "Board defaults: ${BOARD_RC_DEFAULTS}"
sh $BOARD_RC_DEFAULTS
fi
unset BOARD_RC_DEFAULTS

# Adapt timeout parameters if simulation runs faster or slower than realtime.
if [ ! -z $PX4_SIM_SPEED_FACTOR ]; then
Expand Down
13 changes: 2 additions & 11 deletions ROMFS/px4fmu_common/init.d/airframes/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ px4_add_romfs_files(
1001_rc_quad_x.hil
1002_standard_vtol.hil
1100_rc_quad_x_sih.hil

# [2000, 2999] Standard planes"
2100_standard_plane
2105_maja
Expand Down Expand Up @@ -67,34 +67,25 @@ px4_add_romfs_files(
4010_dji_f330
4011_dji_f450
4012_quad_x_can
4013_bebop
4014_s500
4015_holybro_s500
4020_hk_micro_pcb
4030_3dr_solo
4031_3dr_quad
4040_reaper
4041_beta75x
4050_generic_250
4051_s250aq
4052_holybro_qav250
4053_holybro_kopis2
4060_dji_matrice_100
4070_aerofc
4071_ifo
4072_draco
4080_zmr250
4090_nanomind
4100_tiltquadrotor
4250_teal
4900_crazyflie

# [5000, 5999] Quadrotor +"
5001_quad_+

# [6000, 6999] Hexarotor x"
6001_hexa_x
6002_draco_r

# [7000, 7999] Hexarotor +"
7001_hexa_+
Expand Down Expand Up @@ -140,7 +131,7 @@ px4_add_romfs_files(
15001_coax_heli

16001_helicopter

24001_dodeca_cox

50000_generic_ground_vehicle
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,6 @@
# @type Quadrotor x
# @class Copter
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
# @board intel_aerofc-v1 exclude
#
# @maintainer Henry Zhang <[email protected]>
#

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,6 @@
#
# @name Crazyflie 2
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
# @board intel_aerofc-v1 exclude
#
# @type Quadrotor x
# @class Copter
#
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@
#
# @maintainer Beat Kueng <[email protected]>
#
# @board px4_fmu-v2 exclude
#

sh /etc/init.d/rc.mc_defaults

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,6 @@
#
# @name Intel Aero Ready to Fly Drone
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
#
# @type Quadrotor x
# @class Copter
#
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,6 @@
# @type Quadrotor H
# @class Copter
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
# @board intel_aerofc-v1 exclude
#
# @output MAIN1 motor 1
# @output MAIN2 motor 2
# @output MAIN3 motor 3
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,6 @@
# @type Quadrotor x
# @class Copter
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
# @board intel_aerofc-v1 exclude
#
# @maintainer Michael Schaeuble
#

Expand Down
70 changes: 70 additions & 0 deletions boards/px4/sitl/init/rc.board_defaults
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
#!/bin/sh
#
# PX4 SITL specific board defaults
#------------------------------------------------------------------------------

if [ $AUTOCNF = yes ]
then
param set SYS_AUTOSTART $REQUESTED_AUTOSTART

param set BAT_N_CELLS 3

param set CBRK_AIRSPD_CHK 0

param set COM_DISARM_LAND 0.1
param set COM_OBL_ACT 2
param set COM_OBL_RC_ACT 0
param set COM_OF_LOSS_T 5
param set COM_RC_IN_MODE 1

param set EKF2_AID_MASK 1
param set EKF2_ANGERR_INIT 0.01
param set EKF2_HGT_MODE 0
param set EKF2_GBIAS_INIT 0.01
# Speedup SITL startup
param set EKF2_REQ_GPS_H 0.5

# LPE: GPS only mode
param set LPE_FUSION 145

param set MIS_TAKEOFF_ALT 2.5

param set MC_PITCH_P 6
param set MC_PITCHRATE_P 0.2
param set MC_ROLL_P 6
param set MC_ROLLRATE_P 0.2

param set MPC_ALT_MODE 0
param set MPC_HOLD_MAX_Z 2
param set MPC_Z_VEL_I 0.15
param set MPC_Z_VEL_P 0.6
param set MPC_XY_P 0.8
param set MPC_XY_VEL_P 0.2
param set MPC_XY_VEL_I 0.02
param set MPC_XY_VEL_D 0.016

param set MPC_JERK_MIN 10
param set MPC_JERK_MAX 20
param set MPC_ACC_HOR_MAX 3

param set NAV_ACC_RAD 2
param set NAV_DLL_ACT 2

param set RTL_DESCEND_ALT 5
param set RTL_LAND_DELAY 5
param set RTL_RETURN_ALT 30

# By default log from boot until first disarm.
param set SDLOG_MODE 1
# enable default, estimator replay and vision/avoidance logging profiles
param set SDLOG_PROFILE 131
param set SDLOG_DIRS_MAX 7
param set SENS_BOARD_ROT 0
param set SENS_BOARD_X_OFF 0.000001
param set SENS_DPRES_OFF 0.001
param set SYS_RESTART_TYPE 2

param set TRIG_INTERFACE 3

fi

15 changes: 15 additions & 0 deletions boards/px4/sitl/init/rc.board_sensors
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/sh
#
# PX4 SITL specific board sensors init
#------------------------------------------------------------------------------

param set CAL_ACC0_ID 1311244
param set CAL_ACC_PRIME 1311244

param set CAL_GYRO0_ID 2294028
param set CAL_GYRO_PRIME 2294028

param set CAL_MAG0_ID 197388
param set CAL_MAG_PRIME 197388

param set CAL_BARO_PRIME 6620172
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,6 @@
# @output MAIN3 motor 3
# @output MAIN4 motor 4
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
# @board intel_aerofc-v1 exclude
#
# @maintainer Hyon Lim <[email protected]>
#

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,6 @@
# @output MAIN3 motor 3
# @output MAIN4 motor 4
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
# @board intel_aerofc-v1 exclude
#
# @maintainer Hyon Lim <[email protected]>
#

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,6 @@
# @output MAIN5 motor 5
# @output MAIN6 motor 6
#
# @board px4_fmu-v2 exclude
# @board px4_fmu-v3 exclude
# @board px4_fmu-v4pro exclude
# @board px4_fmu-v5 exclude
# @board px4_fmu-v5x exclude
# @board intel_aerofc-v1 exclude
#
# @output AUX1 feed-through of RC AUX1 channel
# @output AUX2 feed-through of RC AUX2 channel
#
Expand Down