diff --git a/ROMFS/px4fmu_common/init.d-posix/airframes/4011_gz_r1_rover_mecanum b/ROMFS/px4fmu_common/init.d-posix/airframes/4011_gz_r1_rover_mecanum index 69c43165f3..3fdb047866 100644 --- a/ROMFS/px4fmu_common/init.d-posix/airframes/4011_gz_r1_rover_mecanum +++ b/ROMFS/px4fmu_common/init.d-posix/airframes/4011_gz_r1_rover_mecanum @@ -3,7 +3,7 @@ # @type Rover # @class Rover -. ${R}etc/init.d/rc.rover_differential_defaults +. ${R}etc/init.d/rc.rover_mecanum_defaults PX4_SIMULATOR=${PX4_SIMULATOR:=gz} PX4_GZ_WORLD=${PX4_GZ_WORLD:=default} diff --git a/ROMFS/px4fmu_common/init.d/CMakeLists.txt b/ROMFS/px4fmu_common/init.d/CMakeLists.txt index 4b45187ff5..96e05ba0a3 100644 --- a/ROMFS/px4fmu_common/init.d/CMakeLists.txt +++ b/ROMFS/px4fmu_common/init.d/CMakeLists.txt @@ -53,6 +53,8 @@ px4_add_romfs_files( rc.rover_defaults rc.rover_differential_apps rc.rover_differential_defaults + rc.rover_mecanum_apps + rc.rover_mecanum_defaults rc.uuv_apps rc.uuv_defaults rc.vehicle_setup diff --git a/ROMFS/px4fmu_common/init.d/rc.rover_differential_apps b/ROMFS/px4fmu_common/init.d/rc.rover_differential_apps index 1fb0b24857..848527a9e9 100644 --- a/ROMFS/px4fmu_common/init.d/rc.rover_differential_apps +++ b/ROMFS/px4fmu_common/init.d/rc.rover_differential_apps @@ -5,7 +5,7 @@ ekf2 start & # Start rover differential drive controller. -mecanum_drive start +differential_drive start # Start Land Detector. land_detector start rover diff --git a/ROMFS/px4fmu_common/init.d/rc.rover_differential_defaults b/ROMFS/px4fmu_common/init.d/rc.rover_differential_defaults index 995727a3d6..e0cace3a32 100644 --- a/ROMFS/px4fmu_common/init.d/rc.rover_differential_defaults +++ b/ROMFS/px4fmu_common/init.d/rc.rover_differential_defaults @@ -6,6 +6,6 @@ set VEHICLE_TYPE rover_differential param set-default MAV_TYPE 10 # MAV_TYPE_GROUND_ROVER param set-default CA_AIRFRAME 6 # Rover (Differential) -param set-default CA_R_REV 15 # Right and left motors reversible +param set-default CA_R_REV 3 # Right and left motors reversible param set-default EKF2_MAG_TYPE 1 # make sure magnetometer is fused even when not flying diff --git a/ROMFS/px4fmu_common/init.d/rc.rover_mecanum_apps b/ROMFS/px4fmu_common/init.d/rc.rover_mecanum_apps new file mode 100644 index 0000000000..f2a8ee8f1a --- /dev/null +++ b/ROMFS/px4fmu_common/init.d/rc.rover_mecanum_apps @@ -0,0 +1,11 @@ +#!/bin/sh +# Standard apps for a mecanum drive rover. + +# Start the attitude and position estimator. +ekf2 start & + +# Start rover mecanum drive controller. +mecanum_drive start + +# Start Land Detector. +land_detector start rover diff --git a/ROMFS/px4fmu_common/init.d/rc.rover_mecanum_defaults b/ROMFS/px4fmu_common/init.d/rc.rover_mecanum_defaults new file mode 100644 index 0000000000..3a9d81db2d --- /dev/null +++ b/ROMFS/px4fmu_common/init.d/rc.rover_mecanum_defaults @@ -0,0 +1,11 @@ +#!/bin/sh +# Mecanum rover parameters. + +set VEHICLE_TYPE rover_mecanum + +param set-default MAV_TYPE 10 # MAV_TYPE_GROUND_ROVER + +param set-default CA_AIRFRAME 13 # Rover (Mecanum) +param set-default CA_R_REV 15 # Right and left motors reversible + +param set-default EKF2_MAG_TYPE 1 # make sure magnetometer is fused even when not flying diff --git a/ROMFS/px4fmu_common/init.d/rc.vehicle_setup b/ROMFS/px4fmu_common/init.d/rc.vehicle_setup index 1b7ddee5a5..7ca1cac8f4 100644 --- a/ROMFS/px4fmu_common/init.d/rc.vehicle_setup +++ b/ROMFS/px4fmu_common/init.d/rc.vehicle_setup @@ -41,6 +41,15 @@ then . ${R}etc/init.d/rc.rover_differential_apps fi +# +# Mecanum Rover setup. +# +if [ $VEHICLE_TYPE = rover_mecanum ] +then + # Start mecanum drive rover apps. + . ${R}etc/init.d/rc.rover_mecanum_apps +fi + # # VTOL setup. #