From 15e7286078cf5c67e54ab3f5e95e9122894fa7da Mon Sep 17 00:00:00 2001 From: Alessio Morale Date: Thu, 4 Dec 2014 21:34:42 +0100 Subject: [PATCH] MPU9K - merge 9k and 6k settings into a single uavo --- flight/pios/inc/pios_mpu6000_config.h | 38 +++++++++--------- flight/pios/inc/pios_mpu9250_config.h | 40 +++++++++---------- .../discoveryf4bare/firmware/UAVObjects.inc | 2 +- .../boards/revolution/firmware/UAVObjects.inc | 2 +- .../boards/revoproto/firmware/UAVObjects.inc | 2 +- .../src/plugins/uavobjects/uavobjects.pro | 6 +-- .../uavobjectdefinition/mpu9250settings.xml | 38 ------------------ ...0settings.xml => mpugyroaccelsettings.xml} | 5 +-- 8 files changed, 46 insertions(+), 87 deletions(-) delete mode 100644 shared/uavobjectdefinition/mpu9250settings.xml rename shared/uavobjectdefinition/{mpu6000settings.xml => mpugyroaccelsettings.xml} (84%) diff --git a/flight/pios/inc/pios_mpu6000_config.h b/flight/pios/inc/pios_mpu6000_config.h index 9594d9394..0c9e0ffb1 100644 --- a/flight/pios/inc/pios_mpu6000_config.h +++ b/flight/pios/inc/pios_mpu6000_config.h @@ -32,28 +32,28 @@ #ifndef PIOS_MPU6000_CONFIG_H #define PIOS_MPU6000_CONFIG_H -#include "mpu6000settings.h" +#include "mpugyroaccelsettings.h" #include "pios_mpu6000.h" #define PIOS_MPU6000_CONFIG_MAP_GYROSCALE(x) \ - (x == MPU6000SETTINGS_GYROSCALE_SCALE_250 ? PIOS_MPU6000_SCALE_250_DEG : \ - x == MPU6000SETTINGS_GYROSCALE_SCALE_500 ? PIOS_MPU6000_SCALE_500_DEG : \ - x == MPU6000SETTINGS_GYROSCALE_SCALE_1000 ? PIOS_MPU6000_SCALE_1000_DEG : \ + (x == MPUGYROACCELSETTINGS_GYROSCALE_SCALE_250 ? PIOS_MPU6000_SCALE_250_DEG : \ + x == MPUGYROACCELSETTINGS_GYROSCALE_SCALE_500 ? PIOS_MPU6000_SCALE_500_DEG : \ + x == MPUGYROACCELSETTINGS_GYROSCALE_SCALE_1000 ? PIOS_MPU6000_SCALE_1000_DEG : \ PIOS_MPU6000_SCALE_2000_DEG) #define PIOS_MPU6000_CONFIG_MAP_ACCELSCALE(x) \ - (x == MPU6000SETTINGS_ACCELSCALE_SCALE_2G ? PIOS_MPU6000_ACCEL_2G : \ - x == MPU6000SETTINGS_ACCELSCALE_SCALE_4G ? PIOS_MPU6000_ACCEL_4G : \ - x == MPU6000SETTINGS_ACCELSCALE_SCALE_16G ? PIOS_MPU6000_ACCEL_16G : \ + (x == MPUGYROACCELSETTINGS_ACCELSCALE_SCALE_2G ? PIOS_MPU6000_ACCEL_2G : \ + x == MPUGYROACCELSETTINGS_ACCELSCALE_SCALE_4G ? PIOS_MPU6000_ACCEL_4G : \ + x == MPUGYROACCELSETTINGS_ACCELSCALE_SCALE_16G ? PIOS_MPU6000_ACCEL_16G : \ PIOS_MPU6000_ACCEL_8G) #define PIOS_MPU6000_CONFIG_MAP_FILTERSETTING(x) \ - (x == MPU6000SETTINGS_FILTERSETTING_LOWPASS_188_HZ ? PIOS_MPU6000_LOWPASS_188_HZ : \ - x == MPU6000SETTINGS_FILTERSETTING_LOWPASS_98_HZ ? PIOS_MPU6000_LOWPASS_98_HZ : \ - x == MPU6000SETTINGS_FILTERSETTING_LOWPASS_42_HZ ? PIOS_MPU6000_LOWPASS_42_HZ : \ - x == MPU6000SETTINGS_FILTERSETTING_LOWPASS_20_HZ ? PIOS_MPU6000_LOWPASS_20_HZ : \ - x == MPU6000SETTINGS_FILTERSETTING_LOWPASS_10_HZ ? PIOS_MPU6000_LOWPASS_10_HZ : \ - x == MPU6000SETTINGS_FILTERSETTING_LOWPASS_5_HZ ? PIOS_MPU6000_LOWPASS_5_HZ : \ + (x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_188_HZ ? PIOS_MPU6000_LOWPASS_188_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_98_HZ ? PIOS_MPU6000_LOWPASS_98_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_42_HZ ? PIOS_MPU6000_LOWPASS_42_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_20_HZ ? PIOS_MPU6000_LOWPASS_20_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_10_HZ ? PIOS_MPU6000_LOWPASS_10_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_5_HZ ? PIOS_MPU6000_LOWPASS_5_HZ : \ PIOS_MPU6000_LOWPASS_256_HZ) /** * @brief Updates MPU6000 config based on Mpu6000Settings UAVO @@ -61,13 +61,13 @@ */ int32_t PIOS_MPU6000_CONFIG_Configure() { - Mpu6000SettingsInitialize(); - Mpu6000SettingsData mpu6000settings; - Mpu6000SettingsGet(&mpu6000settings); + MPUGyroAccelSettingsInitialize(); + MPUGyroAccelSettingsData mpuSettings; + MPUGyroAccelSettingsGet(&mpuSettings); return PIOS_MPU6000_ConfigureRanges( - PIOS_MPU6000_CONFIG_MAP_GYROSCALE(mpu6000settings.GyroScale), - PIOS_MPU6000_CONFIG_MAP_ACCELSCALE(mpu6000settings.AccelScale), - PIOS_MPU6000_CONFIG_MAP_FILTERSETTING(mpu6000settings.FilterSetting) + PIOS_MPU6000_CONFIG_MAP_GYROSCALE(mpuSettings.GyroScale), + PIOS_MPU6000_CONFIG_MAP_ACCELSCALE(mpuSettings.AccelScale), + PIOS_MPU6000_CONFIG_MAP_FILTERSETTING(mpuSettings.FilterSetting) ); } diff --git a/flight/pios/inc/pios_mpu9250_config.h b/flight/pios/inc/pios_mpu9250_config.h index b354ec6cf..fff4868cf 100644 --- a/flight/pios/inc/pios_mpu9250_config.h +++ b/flight/pios/inc/pios_mpu9250_config.h @@ -32,42 +32,42 @@ #ifndef PIOS_MPU9250_CONFIG_H #define PIOS_MPU9250_CONFIG_H -#include "mpu9250settings.h" +#include "mpugyroaccelsettings.h" #include "pios_mpu9250.h" #define PIOS_MPU9250_CONFIG_MAP_GYROSCALE(x) \ - (x == MPU9250SETTINGS_GYROSCALE_SCALE_250 ? PIOS_MPU9250_SCALE_250_DEG : \ - x == MPU9250SETTINGS_GYROSCALE_SCALE_500 ? PIOS_MPU9250_SCALE_500_DEG : \ - x == MPU9250SETTINGS_GYROSCALE_SCALE_1000 ? PIOS_MPU9250_SCALE_1000_DEG : \ + (x == MPUGYROACCELSETTINGS_GYROSCALE_SCALE_250 ? PIOS_MPU9250_SCALE_250_DEG : \ + x == MPUGYROACCELSETTINGS_GYROSCALE_SCALE_500 ? PIOS_MPU9250_SCALE_500_DEG : \ + x == MPUGYROACCELSETTINGS_GYROSCALE_SCALE_1000 ? PIOS_MPU9250_SCALE_1000_DEG : \ PIOS_MPU9250_SCALE_2000_DEG) #define PIOS_MPU9250_CONFIG_MAP_ACCELSCALE(x) \ - (x == MPU9250SETTINGS_ACCELSCALE_SCALE_2G ? PIOS_MPU9250_ACCEL_2G : \ - x == MPU9250SETTINGS_ACCELSCALE_SCALE_4G ? PIOS_MPU9250_ACCEL_4G : \ - x == MPU9250SETTINGS_ACCELSCALE_SCALE_16G ? PIOS_MPU9250_ACCEL_16G : \ + (x == MPUGYROACCELSETTINGS_ACCELSCALE_SCALE_2G ? PIOS_MPU9250_ACCEL_2G : \ + x == MPUGYROACCELSETTINGS_ACCELSCALE_SCALE_4G ? PIOS_MPU9250_ACCEL_4G : \ + x == MPUGYROACCELSETTINGS_ACCELSCALE_SCALE_16G ? PIOS_MPU9250_ACCEL_16G : \ PIOS_MPU9250_ACCEL_8G) #define PIOS_MPU9250_CONFIG_MAP_FILTERSETTING(x) \ - (x == MPU9250SETTINGS_FILTERSETTING_LOWPASS_188_HZ ? PIOS_MPU9250_LOWPASS_188_HZ : \ - x == MPU9250SETTINGS_FILTERSETTING_LOWPASS_98_HZ ? PIOS_MPU9250_LOWPASS_98_HZ : \ - x == MPU9250SETTINGS_FILTERSETTING_LOWPASS_42_HZ ? PIOS_MPU9250_LOWPASS_42_HZ : \ - x == MPU9250SETTINGS_FILTERSETTING_LOWPASS_20_HZ ? PIOS_MPU9250_LOWPASS_20_HZ : \ - x == MPU9250SETTINGS_FILTERSETTING_LOWPASS_10_HZ ? PIOS_MPU9250_LOWPASS_10_HZ : \ - x == MPU9250SETTINGS_FILTERSETTING_LOWPASS_5_HZ ? PIOS_MPU9250_LOWPASS_5_HZ : \ + (x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_188_HZ ? PIOS_MPU9250_LOWPASS_188_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_98_HZ ? PIOS_MPU9250_LOWPASS_98_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_42_HZ ? PIOS_MPU9250_LOWPASS_42_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_20_HZ ? PIOS_MPU9250_LOWPASS_20_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_10_HZ ? PIOS_MPU9250_LOWPASS_10_HZ : \ + x == MPUGYROACCELSETTINGS_FILTERSETTING_LOWPASS_5_HZ ? PIOS_MPU9250_LOWPASS_5_HZ : \ PIOS_MPU9250_LOWPASS_256_HZ) /** - * @brief Updates MPU9250 config based on Mpu9250Settings UAVO + * @brief Updates MPU9250 config based on MPUGyroAccelSettings UAVO * @returns 0 if succeed or -1 otherwise */ int32_t PIOS_MPU9250_CONFIG_Configure() { - Mpu9250SettingsInitialize(); - Mpu9250SettingsData mpu9250settings; - Mpu9250SettingsGet(&mpu9250settings); + MPUGyroAccelSettingsInitialize(); + MPUGyroAccelSettingsData mpuSettings; + MPUGyroAccelSettingsGet(&mpuSettings); return PIOS_MPU9250_ConfigureRanges( - PIOS_MPU9250_CONFIG_MAP_GYROSCALE(mpu9250settings.GyroScale), - PIOS_MPU9250_CONFIG_MAP_ACCELSCALE(mpu9250settings.AccelScale), - PIOS_MPU9250_CONFIG_MAP_FILTERSETTING(mpu9250settings.FilterSetting) + PIOS_MPU9250_CONFIG_MAP_GYROSCALE(mpuSettings.GyroScale), + PIOS_MPU9250_CONFIG_MAP_ACCELSCALE(mpuSettings.AccelScale), + PIOS_MPU9250_CONFIG_MAP_FILTERSETTING(mpuSettings.FilterSetting) ); } diff --git a/flight/targets/boards/discoveryf4bare/firmware/UAVObjects.inc b/flight/targets/boards/discoveryf4bare/firmware/UAVObjects.inc index c51c98393..804a6aa41 100644 --- a/flight/targets/boards/discoveryf4bare/firmware/UAVObjects.inc +++ b/flight/targets/boards/discoveryf4bare/firmware/UAVObjects.inc @@ -120,7 +120,7 @@ UAVOBJSRCFILENAMES += waypoint UAVOBJSRCFILENAMES += waypointactive UAVOBJSRCFILENAMES += poilocation UAVOBJSRCFILENAMES += poilearnsettings -UAVOBJSRCFILENAMES += mpu6000settings +UAVOBJSRCFILENAMES += mpugyroaccelsettings UAVOBJSRCFILENAMES += txpidsettings UAVOBJSRCFILENAMES += takeofflocation UAVOBJSRCFILENAMES += perfcounter diff --git a/flight/targets/boards/revolution/firmware/UAVObjects.inc b/flight/targets/boards/revolution/firmware/UAVObjects.inc index 587bf0601..1746f3a38 100644 --- a/flight/targets/boards/revolution/firmware/UAVObjects.inc +++ b/flight/targets/boards/revolution/firmware/UAVObjects.inc @@ -120,7 +120,7 @@ UAVOBJSRCFILENAMES += waypoint UAVOBJSRCFILENAMES += waypointactive UAVOBJSRCFILENAMES += poilocation UAVOBJSRCFILENAMES += poilearnsettings -UAVOBJSRCFILENAMES += mpu6000settings +UAVOBJSRCFILENAMES += mpugyroaccelsettings UAVOBJSRCFILENAMES += txpidsettings UAVOBJSRCFILENAMES += takeofflocation UAVOBJSRCFILENAMES += perfcounter diff --git a/flight/targets/boards/revoproto/firmware/UAVObjects.inc b/flight/targets/boards/revoproto/firmware/UAVObjects.inc index e0931a700..8f515e30c 100644 --- a/flight/targets/boards/revoproto/firmware/UAVObjects.inc +++ b/flight/targets/boards/revoproto/firmware/UAVObjects.inc @@ -120,7 +120,7 @@ UAVOBJSRCFILENAMES += waypoint UAVOBJSRCFILENAMES += waypointactive UAVOBJSRCFILENAMES += poilocation UAVOBJSRCFILENAMES += poilearnsettings -UAVOBJSRCFILENAMES += mpu6000settings +UAVOBJSRCFILENAMES += mpugyroaccelsettings UAVOBJSRCFILENAMES += txpidsettings UAVOBJSRCFILENAMES += takeofflocation diff --git a/ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro b/ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro index 6248db679..d6136077c 100644 --- a/ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro +++ b/ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro @@ -131,8 +131,7 @@ HEADERS += \ $$UAVOBJECT_SYNTHETICS/osdsettings.h \ $$UAVOBJECT_SYNTHETICS/waypoint.h \ $$UAVOBJECT_SYNTHETICS/waypointactive.h \ - $$UAVOBJECT_SYNTHETICS/mpu6000settings.h \ - $$UAVOBJECT_SYNTHETICS/mpu9250settings.h \ + $$UAVOBJECT_SYNTHETICS/mpugyroaccelsettings.h \ $$UAVOBJECT_SYNTHETICS/takeofflocation.h \ $$UAVOBJECT_SYNTHETICS/auxmagsensor.h \ $$UAVOBJECT_SYNTHETICS/auxmagsettings.h \ @@ -245,8 +244,7 @@ SOURCES += \ $$UAVOBJECT_SYNTHETICS/osdsettings.cpp \ $$UAVOBJECT_SYNTHETICS/waypoint.cpp \ $$UAVOBJECT_SYNTHETICS/waypointactive.cpp \ - $$UAVOBJECT_SYNTHETICS/mpu6000settings.cpp \ - $$UAVOBJECT_SYNTHETICS/mpu9250settings.cpp \ + $$UAVOBJECT_SYNTHETICS/mpugyroaccelsettings.cpp \ $$UAVOBJECT_SYNTHETICS/takeofflocation.cpp \ $$UAVOBJECT_SYNTHETICS/auxmagsensor.cpp \ $$UAVOBJECT_SYNTHETICS/auxmagsettings.cpp \ diff --git a/shared/uavobjectdefinition/mpu9250settings.xml b/shared/uavobjectdefinition/mpu9250settings.xml deleted file mode 100644 index 199e4e020..000000000 --- a/shared/uavobjectdefinition/mpu9250settings.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - Settings for the @ref MPU9250 sensor used on revobone. Reboot the board for this to takes effect - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/shared/uavobjectdefinition/mpu6000settings.xml b/shared/uavobjectdefinition/mpugyroaccelsettings.xml similarity index 84% rename from shared/uavobjectdefinition/mpu6000settings.xml rename to shared/uavobjectdefinition/mpugyroaccelsettings.xml index 4813a9c71..2652579d8 100644 --- a/shared/uavobjectdefinition/mpu6000settings.xml +++ b/shared/uavobjectdefinition/mpugyroaccelsettings.xml @@ -1,6 +1,6 @@ - - Settings for the @ref MPU6000 sensor used on CC3D and Revolution. Reboot the board for this to takes effect + + Settings for the @ref MPU6000 and MPU9000 sensor series. Used in CC3D, Revolution and RevoBone. Reboot the board for this to takes effect @@ -29,7 +29,6 @@ -