diff --git a/APMrover2/APMrover2.pde b/APMrover2/APMrover2.pde index b295e506b56854ddc25a565bfff4f4493e6765c0..7a78010ab3bac7f62cfe0460bcffefa3c66bc951 100644 --- a/APMrover2/APMrover2.pde +++ b/APMrover2/APMrover2.pde @@ -100,6 +100,7 @@ #include <AP_HAL_AVR.h> #include <AP_HAL_AVR_SITL.h> #include <AP_HAL_PX4.h> +#include <AP_HAL_VRBRAIN.h> #include <AP_HAL_FLYMAPLE.h> #include <AP_HAL_Linux.h> #include <AP_HAL_Empty.h> @@ -175,6 +176,8 @@ static DataFlash_File DataFlash("logs"); static DataFlash_File DataFlash("/fs/microsd/APM/LOGS"); #elif CONFIG_HAL_BOARD == HAL_BOARD_LINUX static DataFlash_File DataFlash("logs"); +#elif CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN +static DataFlash_File DataFlash("/fs/microsd/APM/LOGS"); #else DataFlash_Empty DataFlash; #endif @@ -206,6 +209,8 @@ static AP_ADC_ADS7844 adc; #if CONFIG_COMPASS == AP_COMPASS_PX4 static AP_Compass_PX4 compass; +#elif CONFIG_COMPASS == AP_COMPASS_VRBRAIN +static AP_Compass_VRBRAIN compass; #elif CONFIG_COMPASS == AP_COMPASS_HMC5843 static AP_Compass_HMC5843 compass; #elif CONFIG_COMPASS == AP_COMPASS_HIL @@ -218,6 +223,8 @@ static AP_Compass_HIL compass; AP_InertialSensor_MPU6000 ins; #elif CONFIG_INS_TYPE == CONFIG_INS_PX4 AP_InertialSensor_PX4 ins; +#elif CONFIG_INS_TYPE == CONFIG_INS_VRBRAIN +AP_InertialSensor_VRBRAIN ins; #elif CONFIG_INS_TYPE == CONFIG_INS_HIL AP_InertialSensor_HIL ins; #elif CONFIG_INS_TYPE == CONFIG_INS_FLYMAPLE @@ -235,6 +242,8 @@ AP_InertialSensor_Oilpan ins( &adc ); static AP_Baro_BMP085 barometer; #elif CONFIG_BARO == AP_BARO_PX4 static AP_Baro_PX4 barometer; +#elif CONFIG_BARO == AP_BARO_VRBRAIN +static AP_Baro_VRBRAIN barometer; #elif CONFIG_BARO == AP_BARO_HIL static AP_Baro_HIL barometer; #elif CONFIG_BARO == AP_BARO_MS5611 diff --git a/APMrover2/Parameters.h b/APMrover2/Parameters.h index 6be0b486ba2a7059ba99b1cd60d51b2ae4aa7d4a..6ecb53c5ea024f5d2b232b34b080e492f82991f2 100644 --- a/APMrover2/Parameters.h +++ b/APMrover2/Parameters.h @@ -236,14 +236,14 @@ public: RC_Channel_aux rc_6; RC_Channel_aux rc_7; RC_Channel_aux rc_8; -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN RC_Channel_aux rc_9; #endif -#if CONFIG_HAL_BOARD == HAL_BOARD_APM2 || CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_APM2 || CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN RC_Channel_aux rc_10; RC_Channel_aux rc_11; #endif -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN RC_Channel_aux rc_12; RC_Channel_aux rc_13; RC_Channel_aux rc_14; @@ -301,14 +301,14 @@ public: rc_6(CH_6), rc_7(CH_7), rc_8(CH_8), -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN rc_9 (CH_9), #endif -#if CONFIG_HAL_BOARD == HAL_BOARD_APM2 || CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_APM2 || CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN rc_10 (CH_10), rc_11 (CH_11), #endif -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN rc_12 (CH_12), rc_13 (CH_13), rc_14 (CH_14), diff --git a/APMrover2/Parameters.pde b/APMrover2/Parameters.pde index 24c1f364732e82418ed7bd36d0345457e2196b40..f372bca11b19ece6b5b166412362320cf1446f4c 100644 --- a/APMrover2/Parameters.pde +++ b/APMrover2/Parameters.pde @@ -211,13 +211,13 @@ const AP_Param::Info var_info[] PROGMEM = { // @Path: ../libraries/RC_Channel/RC_Channel.cpp,../libraries/RC_Channel/RC_Channel_aux.cpp GGROUP(rc_8, "RC8_", RC_Channel_aux), -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN // @Group: RC9_ // @Path: ../libraries/RC_Channel/RC_Channel.cpp,../libraries/RC_Channel/RC_Channel_aux.cpp GGROUP(rc_9, "RC9_", RC_Channel_aux), #endif -#if CONFIG_HAL_BOARD == HAL_BOARD_APM2 || CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_APM2 || CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN // @Group: RC10_ // @Path: ../libraries/RC_Channel/RC_Channel.cpp,../libraries/RC_Channel/RC_Channel_aux.cpp GGROUP(rc_10, "RC10_", RC_Channel_aux), @@ -227,7 +227,7 @@ const AP_Param::Info var_info[] PROGMEM = { GGROUP(rc_11, "RC11_", RC_Channel_aux), #endif -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN // @Group: RC12_ // @Path: ../libraries/RC_Channel/RC_Channel.cpp,../libraries/RC_Channel/RC_Channel_aux.cpp GGROUP(rc_12, "RC12_", RC_Channel_aux), diff --git a/APMrover2/config.h b/APMrover2/config.h index 0cdfa8170218201b07f5a8723174c1794903a357..e2ddbc1b2af81561655747de184300de4490602b 100644 --- a/APMrover2/config.h +++ b/APMrover2/config.h @@ -98,6 +98,12 @@ # define CONFIG_BARO AP_BARO_BMP085 # define BATTERY_PIN_1 -1 # define CURRENT_PIN_1 -1 +#elif CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN +# define CONFIG_INS_TYPE CONFIG_INS_VRBRAIN +# define CONFIG_COMPASS AP_COMPASS_VRBRAIN +# define CONFIG_BARO AP_BARO_VRBRAIN +# define BATTERY_PIN_1 -1 +# define CURRENT_PIN_1 -1 #endif ////////////////////////////////////////////////////////////////////////////// diff --git a/APMrover2/defines.h b/APMrover2/defines.h index 4bb27dbeda88a0c131161a6142b430e9a5077149..ad3c547903cb8aada062a96f05f0cfe53803a6d2 100644 --- a/APMrover2/defines.h +++ b/APMrover2/defines.h @@ -148,16 +148,19 @@ enum mode { #define CONFIG_INS_PX4 4 #define CONFIG_INS_FLYMAPLE 5 #define CONFIG_INS_L3G4200D 6 +#define CONFIG_INS_VRBRAIN 7 // barometer driver types #define AP_BARO_BMP085 1 #define AP_BARO_MS5611 2 #define AP_BARO_PX4 3 #define AP_BARO_HIL 4 +#define AP_BARO_VRBRAIN 5 // compass driver types #define AP_COMPASS_HMC5843 1 #define AP_COMPASS_PX4 2 #define AP_COMPASS_HIL 3 +#define AP_COMPASS_VRBRAIN 4 #endif // _DEFINES_H diff --git a/APMrover2/test.pde b/APMrover2/test.pde index f1f44fd436bf1c8ae8a52f039004cb19266aa6c0..c1a173f676b023af5e10f1aa326859fe9bbd67ce 100644 --- a/APMrover2/test.pde +++ b/APMrover2/test.pde @@ -16,7 +16,7 @@ static int8_t test_sonar(uint8_t argc, const Menu::arg *argv); static int8_t test_mag(uint8_t argc, const Menu::arg *argv); static int8_t test_modeswitch(uint8_t argc, const Menu::arg *argv); static int8_t test_logging(uint8_t argc, const Menu::arg *argv); -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN static int8_t test_shell(uint8_t argc, const Menu::arg *argv); #endif @@ -43,7 +43,7 @@ static const struct Menu::command test_menu_commands[] PROGMEM = { {"sonartest", test_sonar}, {"compass", test_mag}, {"logging", test_logging}, -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN {"shell", test_shell}, #endif }; @@ -519,7 +519,7 @@ test_sonar(uint8_t argc, const Menu::arg *argv) return (0); } -#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 +#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN /* * run a debug shell */