//////////////////////////////////////////////////////////////////////////// // // This file is part of RTIMULib-Arduino // // Copyright (c) 2014-2015, richards-tech // // Permission is hereby granted, free of charge, to any person obtaining a copy of // this software and associated documentation files (the "Software"), to deal in // the Software without restriction, including without limitation the rights to use, // copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the // Software, and to permit persons to whom the Software is furnished to do so, // subject to the following conditions: // // The above copyright notice and this permission notice shall be included in all // copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, // INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A // PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #ifndef _RTIMULIBDEFS_H #define _RTIMULIBDEFS_H #include "RTMath.h" #include "RTPressureDefs.h" // IMU enable defs - only one should be enabled, the rest commented out //#define MPU9150_68 // MPU9150 at address 0x68 //#define MPU9250_68 // MPU9250 at address 0x68 #define GD20M303DLHC_6b // GD20 + M303DLHC at address 0x6b //#define MPU9150_68 // MPU9150 at address 0x68 //#define MPU9150_69 // MPU9150 at address 0x69 //#define MPU9250_68 // MPU9250 at address 0x68 //#define MPU9250_69 // MPU9250 at address 0x69 //#define LSM9DS0_6a // LSM9DS0 at address 0x6a //#define LSM9DS0_6b // LSM9DS0 at address 0x6b //#define GD20HM303D_6a // GD20H + M303D at address 0x6a //#define GD20HM303D_6b // GD20H + M303D at address 0x6b //#define GD20HM303DLHC_6a // GD20H + M303DLHC at address 0x6a //#define GD20HM303DLHC_6b // GD20H + M303DLHC at address 0x6b //#define GD20M303DLHC_6a // GD20 + M303DLHC at address 0x6a //#define GD20M303DLHC_6b // GD20 + M303DLHC at address 0x6b //#define BNO055_28 // BNO055 at address 0x28 //#define BNO055_29 // BNO055 at address 0x29 // IMU type codes #define RTIMU_TYPE_MPU9150 1 // InvenSense MPU9150 #define RTIMU_TYPE_LSM9DS0 2 // STM LSM9DS0 (eg Sparkfun IMU) #define RTIMU_TYPE_GD20HM303D 3 // STM L3GD20H/LSM303D (Pololu Altimu) #define RTIMU_TYPE_GD20M303DLHC 4 // STM L3GD20/LSM303DHLC (old Adafruit IMU) #define RTIMU_TYPE_MPU9250 5 // InvenSense MPU9250 #define RTIMU_TYPE_GD20HM303DLHC 6 // STM L3GD20H/LSM303DHLC (new Adafruit IMU) #define RTIMU_TYPE_BNO055 7 // BNO055 // Pressure enable defs - only one should be enabled, the rest commented out //#define BMP180 // BMP180 //#define LPS25H_5c // LPS25H at standard address //#define LPS25H_5d // LPS25H at option address //#define MS5611_76 // MS5611 at standard address //#define MS5611_77 // MS5611 at option address // IMU Axis rotation defs // // These allow the IMU to be virtually repositioned if it is in a non-standard configuration // Standard configuration is X pointing at north, Y pointing east and Z pointing down // with the IMU horizontal. There are 24 different possible orientations as defined // below. Setting the axis rotation code to non-zero values performs the repositioning. // // Uncomment the one required #define RTIMU_XNORTH_YEAST 0 // this is the default identity matrix //#define RTIMU_XEAST_YSOUTH 1 //#define RTIMU_XSOUTH_YWEST 2 //#define RTIMU_XWEST_YNORTH 3 //#define RTIMU_XNORTH_YWEST 4 //#define RTIMU_XEAST_YNORTH 5 //#define RTIMU_XSOUTH_YEAST 6 //#define RTIMU_XWEST_YSOUTH 7 //#define RTIMU_XUP_YNORTH 8 //#define RTIMU_XUP_YEAST 9 //#define RTIMU_XUP_YSOUTH 10 //#define RTIMU_XUP_YWEST 11 //#define RTIMU_XDOWN_YNORTH 12 //#define RTIMU_XDOWN_YEAST 13 //#define RTIMU_XDOWN_YSOUTH 14 //#define RTIMU_XDOWN_YWEST 15 //#define RTIMU_XNORTH_YUP 16 //#define RTIMU_XEAST_YUP 17 //#define RTIMU_XSOUTH_YUP 18 //#define RTIMU_XWEST_YUP 19 //#define RTIMU_XNORTH_YDOWN 20 //#define RTIMU_XEAST_YDOWN 21 //#define RTIMU_XSOUTH_YDOWN 22 //#define RTIMU_XWEST_YDOWN 23 #endif // _RTIMULIBDEFS_H