diff --git a/cmake/configs/nuttx_aerocore2_default.cmake b/cmake/configs/nuttx_aerocore2_default.cmake index 06749f9cd75ace1d7af22ad2163bb9a42e3b693a..66cea65982d5ab07050119a5b9b96fc084a59f02 100644 --- a/cmake/configs/nuttx_aerocore2_default.cmake +++ b/cmake/configs/nuttx_aerocore2_default.cmake @@ -7,6 +7,10 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + #drivers/magnetometer + drivers/device drivers/stm32 drivers/stm32/adc @@ -20,8 +24,6 @@ set(config_module_list drivers/gps drivers/pwm_out_sim drivers/airspeed - drivers/differential_pressure - drivers/distance_sensor #drivers/frsky_telemetry modules/sensors #drivers/pwm_input diff --git a/cmake/configs/nuttx_aerofc-v1_default.cmake b/cmake/configs/nuttx_aerofc-v1_default.cmake index b3eee383a82bdb13c621ef6c67ae6e06dc301f08..a85ce27432996f3eb84cefa6ca63d77450df7a78 100644 --- a/cmake/configs/nuttx_aerofc-v1_default.cmake +++ b/cmake/configs/nuttx_aerofc-v1_default.cmake @@ -7,19 +7,19 @@ set(config_module_list # # Board support modules # + drivers/aerofc_adc + drivers/boards drivers/device - drivers/stm32 + drivers/distance_sensor + drivers/gps drivers/led - drivers/px4fmu - drivers/boards - drivers/tap_esc + drivers/magnetometer/hmc5883 + drivers/magnetometer/ist8310 drivers/mpu9250 drivers/ms5611 - drivers/hmc5883 - drivers/gps - drivers/ist8310 - drivers/distance_sensor - drivers/aerofc_adc + drivers/px4fmu + drivers/stm32 + drivers/tap_esc modules/sensors # diff --git a/cmake/configs/nuttx_auav-x21_default.cmake b/cmake/configs/nuttx_auav-x21_default.cmake index 7fd48329cc061485af75916efe96428fc05434c6..3eb03ebf6ed3907ee3f7caa02239226937331cea 100644 --- a/cmake/configs/nuttx_auav-x21_default.cmake +++ b/cmake/configs/nuttx_auav-x21_default.cmake @@ -7,6 +7,10 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + drivers/magnetometer + drivers/device drivers/stm32 drivers/stm32/adc @@ -18,9 +22,7 @@ set(config_module_list drivers/rgbled drivers/mpu6000 drivers/mpu9250 - drivers/hmc5883 drivers/ms5611 - drivers/distance_sensor drivers/gps drivers/pwm_out_sim drivers/hott @@ -28,7 +30,6 @@ set(config_module_list drivers/hott/hott_sensors drivers/blinkm drivers/airspeed - drivers/differential_pressure drivers/frsky_telemetry modules/sensors drivers/mkblctrl @@ -38,7 +39,6 @@ set(config_module_list drivers/pwm_input drivers/camera_trigger drivers/bst - drivers/lis3mdl # # System commands diff --git a/cmake/configs/nuttx_mindpx-v2_default.cmake b/cmake/configs/nuttx_mindpx-v2_default.cmake index 59e65cba281dbd285ea1189d2f98593d9f2e4a3d..cb92383cb8883d8f682a79362850601af6d55249 100644 --- a/cmake/configs/nuttx_mindpx-v2_default.cmake +++ b/cmake/configs/nuttx_mindpx-v2_default.cmake @@ -7,39 +7,40 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + + drivers/airspeed + drivers/blinkm + drivers/boards + drivers/bst + drivers/camera_trigger drivers/device - drivers/stm32 - drivers/stm32/adc - drivers/stm32/tone_alarm + drivers/frsky_telemetry + drivers/gps + #drivers/hott + #drivers/hott/hott_sensors + #drivers/hott/hott_telemetry + drivers/l3gd20 drivers/led - drivers/px4fmu - drivers/boards - drivers/rgbled - #drivers/rgbled_pwm + drivers/lsm303d + drivers/magnetometer/hmc5883 + #drivers/mkblctrl drivers/mpu6000 drivers/mpu9250 - drivers/lsm303d - drivers/l3gd20 - drivers/hmc5883 drivers/ms5611 - drivers/distance_sensor - drivers/gps + #drivers/oreoled + drivers/pwm_input drivers/pwm_out_sim - #drivers/hott - #drivers/hott/hott_telemetry - #drivers/hott/hott_sensors - drivers/blinkm - drivers/airspeed - drivers/differential_pressure - drivers/frsky_telemetry - modules/sensors - #drivers/mkblctrl drivers/px4flow - #drivers/oreoled + drivers/px4fmu + drivers/rgbled + #drivers/rgbled_pwm + drivers/stm32 + drivers/stm32/adc + drivers/stm32/tone_alarm drivers/vmount - drivers/pwm_input - drivers/camera_trigger - drivers/bst + modules/sensors # # System commands @@ -178,4 +179,4 @@ set(config_module_list # Hardware test #examples/hwtest -) \ No newline at end of file +) diff --git a/cmake/configs/nuttx_nxphlite-v3_default.cmake b/cmake/configs/nuttx_nxphlite-v3_default.cmake index b0d444be409411a5de1144fb31e432f7edaf92f2..c9e20f4a2ecb0cc4dfdcf712061631633dc2aa83 100644 --- a/cmake/configs/nuttx_nxphlite-v3_default.cmake +++ b/cmake/configs/nuttx_nxphlite-v3_default.cmake @@ -7,6 +7,10 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + drivers/magnetometer + drivers/airspeed drivers/blinkm #NOT Supported drivers/bma180 @@ -16,12 +20,10 @@ set(config_module_list drivers/bst drivers/camera_trigger drivers/device - drivers/differential_pressure drivers/frsky_telemetry drivers/fxos8701cq drivers/fxas21002c drivers/gps - drivers/hmc5883 drivers/hott drivers/hott/hott_sensors drivers/hott/hott_telemetry @@ -31,8 +33,6 @@ set(config_module_list drivers/kinetis/tone_alarm drivers/l3gd20 drivers/led - drivers/lis3mdl - drivers/distance_sensor drivers/mkblctrl drivers/mpl3115a2 drivers/mpu6000 diff --git a/cmake/configs/nuttx_px4-same70xplained-v1_default.cmake b/cmake/configs/nuttx_px4-same70xplained-v1_default.cmake index b865a192e5d3f237639f93f79c13bf2fea0d473d..bac5be85bddb3e6abc84d959274368da4e302536 100644 --- a/cmake/configs/nuttx_px4-same70xplained-v1_default.cmake +++ b/cmake/configs/nuttx_px4-same70xplained-v1_default.cmake @@ -7,6 +7,10 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + drivers/magnetometer + drivers/device drivers/samv7 #WIP drivers/samv7/adc @@ -17,12 +21,9 @@ set(config_module_list drivers/rgbled drivers/mpu6000 drivers/mpu9250 - drivers/differential_pressure drivers/lsm303d drivers/l3gd20 - drivers/hmc5883 drivers/ms5611 - drivers/distance_sensor drivers/gps #WIP drivers/pwm_out_sim drivers/hott @@ -39,8 +40,6 @@ set(config_module_list #WIP drivers/pwm_input #WIP drivers/camera_trigger drivers/bst - drivers/lis3mdl - # # System commands diff --git a/cmake/configs/nuttx_px4fmu-v2_default.cmake b/cmake/configs/nuttx_px4fmu-v2_default.cmake index 93fa930d1712e471b1c046d20bdca5f4318904f1..e05b47c015f4bbd65e80853b4b05f1712e154eb7 100644 --- a/cmake/configs/nuttx_px4fmu-v2_default.cmake +++ b/cmake/configs/nuttx_px4fmu-v2_default.cmake @@ -8,6 +8,7 @@ set(config_module_list # drivers/differential_pressure drivers/distance_sensor + #drivers/magnetometer #drivers/adis16448 drivers/airspeed @@ -20,16 +21,15 @@ set(config_module_list drivers/device #drivers/frsky_telemetry drivers/gps - drivers/hmc5883 + drivers/magnetometer/hmc5883 #drivers/hott #drivers/hott/hott_sensors #drivers/hott/hott_telemetry #drivers/iridiumsbd #drivers/irlock - #drivers/ist8310 drivers/l3gd20 drivers/led - drivers/lis3mdl + drivers/magnetometer/lis3mdl drivers/lsm303d #drivers/mb12xx #drivers/mkblctrl diff --git a/cmake/configs/nuttx_px4fmu-v3_default.cmake b/cmake/configs/nuttx_px4fmu-v3_default.cmake index fc0984917039f486bd8bf89a64bcae46787b6ae9..901b89bc8987c6a6bf0a53afb74948c39ef70b39 100644 --- a/cmake/configs/nuttx_px4fmu-v3_default.cmake +++ b/cmake/configs/nuttx_px4fmu-v3_default.cmake @@ -13,6 +13,10 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + drivers/magnetometer + drivers/adis16448 drivers/airspeed drivers/blinkm @@ -22,10 +26,8 @@ set(config_module_list drivers/bst drivers/camera_trigger drivers/device - drivers/differential_pressure drivers/frsky_telemetry drivers/gps - drivers/hmc5883 drivers/hott drivers/hott/hott_sensors drivers/hott/hott_telemetry @@ -33,9 +35,6 @@ set(config_module_list drivers/irlock drivers/l3gd20 drivers/led - drivers/lis3mdl - drivers/distance_sensor - drivers/lsm303d drivers/mkblctrl drivers/mpu6000 drivers/mpu9250 diff --git a/cmake/configs/nuttx_px4fmu-v4_default.cmake b/cmake/configs/nuttx_px4fmu-v4_default.cmake index 1f995bcbe62ceccc5d84b510c265c125e705cc39..d352f27a65dc328eb8203fee7ce8e9cbea8840bb 100644 --- a/cmake/configs/nuttx_px4fmu-v4_default.cmake +++ b/cmake/configs/nuttx_px4fmu-v4_default.cmake @@ -7,29 +7,28 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + drivers/magnetometer + drivers/airspeed drivers/blinkm drivers/bma180 drivers/bmi055 drivers/bmi160 - drivers/bmm150 drivers/bmp280 drivers/boards drivers/bst drivers/camera_trigger drivers/device - drivers/differential_pressure drivers/frsky_telemetry drivers/gps - drivers/hmc5883 drivers/hott drivers/hott/hott_sensors drivers/hott/hott_telemetry drivers/iridiumsbd drivers/irlock drivers/led - drivers/lis3mdl - drivers/distance_sensor drivers/mkblctrl drivers/mpu6000 drivers/mpu9250 diff --git a/cmake/configs/nuttx_px4fmu-v4pro_default.cmake b/cmake/configs/nuttx_px4fmu-v4pro_default.cmake index 46c267466396cb448bdc7d4cae3059c54e8d7342..d02c18f27eb9b5073573714a0d0ee93f4ef4eed5 100644 --- a/cmake/configs/nuttx_px4fmu-v4pro_default.cmake +++ b/cmake/configs/nuttx_px4fmu-v4pro_default.cmake @@ -7,6 +7,10 @@ set(config_module_list # # Board support modules # + drivers/distance_sensor + drivers/differential_pressure + drivers/magnetometer + drivers/airspeed drivers/blinkm drivers/bma180 @@ -18,7 +22,6 @@ set(config_module_list drivers/device drivers/frsky_telemetry drivers/gps - drivers/hmc5883 drivers/hott drivers/hott/hott_sensors drivers/hott/hott_telemetry @@ -26,13 +29,9 @@ set(config_module_list drivers/irlock drivers/l3gd20 drivers/led - drivers/lis3mdl - drivers/distance_sensor - drivers/lsm303d drivers/mkblctrl drivers/mpu6000 drivers/mpu9250 - drivers/differential_pressure drivers/ms5611 drivers/oreoled drivers/pwm_input diff --git a/cmake/configs/nuttx_px4fmu-v5_default.cmake b/cmake/configs/nuttx_px4fmu-v5_default.cmake index b64c734765fb21baca7b4e0c7b9031735ca2b3b8..ee1a63f77c3fdc0b9db88ad08b1cf0e3b5e0c093 100644 --- a/cmake/configs/nuttx_px4fmu-v5_default.cmake +++ b/cmake/configs/nuttx_px4fmu-v5_default.cmake @@ -7,10 +7,13 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + drivers/magnetometer + drivers/airspeed drivers/blinkm drivers/bma180 - drivers/bmi055 drivers/bmi160 drivers/bmp280 drivers/boards @@ -19,20 +22,15 @@ set(config_module_list drivers/device drivers/frsky_telemetry drivers/gps - drivers/hmc5883 drivers/hott drivers/hott/hott_sensors drivers/hott/hott_telemetry drivers/iridiumsbd drivers/irlock - drivers/ist8310 drivers/led - drivers/lis3mdl - drivers/distance_sensor drivers/mkblctrl drivers/mpu6000 drivers/mpu9250 - drivers/differential_pressure drivers/ms5611 drivers/oreoled drivers/pwm_input diff --git a/cmake/configs/nuttx_px4nucleoF767ZI-v1_default.cmake b/cmake/configs/nuttx_px4nucleoF767ZI-v1_default.cmake index 0b5e45dc5836915df9867580d7939a9e0ed84b36..7ac6b2fa70646fe3976539221e696dd3b415db8a 100644 --- a/cmake/configs/nuttx_px4nucleoF767ZI-v1_default.cmake +++ b/cmake/configs/nuttx_px4nucleoF767ZI-v1_default.cmake @@ -7,6 +7,11 @@ set(config_module_list # # Board support modules # + drivers/differential_pressure + drivers/distance_sensor + drivers/magnetometer + + drivers/adis16448 drivers/airspeed drivers/blinkm drivers/bma180 @@ -18,17 +23,13 @@ set(config_module_list drivers/device drivers/frsky_telemetry drivers/gps - drivers/hmc5883 drivers/hott drivers/hott/hott_sensors drivers/hott/hott_telemetry drivers/led - drivers/lis3mdl - drivers/distance_sensor drivers/mkblctrl drivers/mpu6000 drivers/mpu9250 - drivers/differential_pressure drivers/ms5611 drivers/oreoled drivers/pwm_input diff --git a/cmake/configs/nuttx_tap-v1_default.cmake b/cmake/configs/nuttx_tap-v1_default.cmake index 706210a0a5920174480b96aacb7aa5b5d720ffd3..0dfe11c3c823dfc7eae7bd70da311d2486ebd8d4 100644 --- a/cmake/configs/nuttx_tap-v1_default.cmake +++ b/cmake/configs/nuttx_tap-v1_default.cmake @@ -7,23 +7,23 @@ set(config_module_list # # Board support modules # + drivers/airspeed + drivers/boards drivers/device - drivers/stm32 - drivers/stm32/adc - drivers/stm32/tone_alarm + drivers/differential_pressure + drivers/gps drivers/led + drivers/magnetometer/hmc5883 + drivers/mpu6000 + drivers/ms5611 drivers/px4fmu - drivers/boards drivers/rgbled_pwm + drivers/stm32 + drivers/stm32/adc + drivers/stm32/tone_alarm drivers/tap_esc - drivers/mpu6000 - drivers/ms5611 - drivers/hmc5883 - drivers/gps - drivers/airspeed - drivers/differential_pressure - modules/sensors drivers/vmount + modules/sensors # # System commands @@ -105,4 +105,4 @@ set(config_module_list # had to add for cmake, not sure why wasn't in original config platforms/common platforms/nuttx/px4_layer -) \ No newline at end of file +) diff --git a/src/drivers/boards/px4fmu-v4/board_config.h b/src/drivers/boards/px4fmu-v4/board_config.h index 89904ddaa11511b1280f552c89b8a6425bc4f3ff..d524375896a9dcf51572f40e006acac9098dd937 100644 --- a/src/drivers/boards/px4fmu-v4/board_config.h +++ b/src/drivers/boards/px4fmu-v4/board_config.h @@ -165,7 +165,6 @@ #define PX4_I2C_OBDEV_LED 0x55 #define PX4_I2C_OBDEV_HMC5883 0x1e #define PX4_I2C_OBDEV_LIS3MDL 0x1e -#define PX4_I2C_OBDEV_BMM150 0x10 #define PX4_I2C_OBDEV_BMP280 0x76 /* diff --git a/src/drivers/magnetometer/CMakeLists.txt b/src/drivers/magnetometer/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..88c468c35aad5a833d5a8be91b256b842a33ad18 --- /dev/null +++ b/src/drivers/magnetometer/CMakeLists.txt @@ -0,0 +1,37 @@ +############################################################################ +# +# Copyright (c) 2017 PX4 Development Team. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name PX4 nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +add_subdirectory(bmm150) +add_subdirectory(hmc5883) +add_subdirectory(ist8310) +add_subdirectory(lis3mdl) diff --git a/src/drivers/bmm150/CMakeLists.txt b/src/drivers/magnetometer/bmm150/CMakeLists.txt similarity index 100% rename from src/drivers/bmm150/CMakeLists.txt rename to src/drivers/magnetometer/bmm150/CMakeLists.txt diff --git a/src/drivers/bmm150/bmm150.cpp b/src/drivers/magnetometer/bmm150/bmm150.cpp similarity index 100% rename from src/drivers/bmm150/bmm150.cpp rename to src/drivers/magnetometer/bmm150/bmm150.cpp diff --git a/src/drivers/bmm150/bmm150.hpp b/src/drivers/magnetometer/bmm150/bmm150.hpp similarity index 99% rename from src/drivers/bmm150/bmm150.hpp rename to src/drivers/magnetometer/bmm150/bmm150.hpp index 14cdb9da46dc8a220acefff17d791ae8684350c6..7dc0f6991850b3b840ea92a5d7310c09fd24d113 100644 --- a/src/drivers/bmm150/bmm150.hpp +++ b/src/drivers/magnetometer/bmm150/bmm150.hpp @@ -42,7 +42,7 @@ #define BMM150_DEVICE_PATH_MAG_EXT "/dev/bmm150_i2c_ext" -#define BMM150_SLAVE_ADDRESS PX4_I2C_OBDEV_BMM150 +#define BMM150_SLAVE_ADDRESS 0x10 #define BMM150_BUS_SPEED 1000*100 diff --git a/src/drivers/hmc5883/CMakeLists.txt b/src/drivers/magnetometer/hmc5883/CMakeLists.txt similarity index 100% rename from src/drivers/hmc5883/CMakeLists.txt rename to src/drivers/magnetometer/hmc5883/CMakeLists.txt diff --git a/src/drivers/hmc5883/hmc5883.cpp b/src/drivers/magnetometer/hmc5883/hmc5883.cpp similarity index 100% rename from src/drivers/hmc5883/hmc5883.cpp rename to src/drivers/magnetometer/hmc5883/hmc5883.cpp diff --git a/src/drivers/hmc5883/hmc5883.h b/src/drivers/magnetometer/hmc5883/hmc5883.h similarity index 100% rename from src/drivers/hmc5883/hmc5883.h rename to src/drivers/magnetometer/hmc5883/hmc5883.h diff --git a/src/drivers/hmc5883/hmc5883_i2c.cpp b/src/drivers/magnetometer/hmc5883/hmc5883_i2c.cpp similarity index 100% rename from src/drivers/hmc5883/hmc5883_i2c.cpp rename to src/drivers/magnetometer/hmc5883/hmc5883_i2c.cpp diff --git a/src/drivers/hmc5883/hmc5883_spi.cpp b/src/drivers/magnetometer/hmc5883/hmc5883_spi.cpp similarity index 100% rename from src/drivers/hmc5883/hmc5883_spi.cpp rename to src/drivers/magnetometer/hmc5883/hmc5883_spi.cpp diff --git a/src/drivers/ist8310/CMakeLists.txt b/src/drivers/magnetometer/ist8310/CMakeLists.txt similarity index 100% rename from src/drivers/ist8310/CMakeLists.txt rename to src/drivers/magnetometer/ist8310/CMakeLists.txt diff --git a/src/drivers/ist8310/ist8310.cpp b/src/drivers/magnetometer/ist8310/ist8310.cpp similarity index 100% rename from src/drivers/ist8310/ist8310.cpp rename to src/drivers/magnetometer/ist8310/ist8310.cpp diff --git a/src/drivers/lis3mdl/CMakeLists.txt b/src/drivers/magnetometer/lis3mdl/CMakeLists.txt similarity index 100% rename from src/drivers/lis3mdl/CMakeLists.txt rename to src/drivers/magnetometer/lis3mdl/CMakeLists.txt diff --git a/src/drivers/lis3mdl/lis3mdl.cpp b/src/drivers/magnetometer/lis3mdl/lis3mdl.cpp similarity index 100% rename from src/drivers/lis3mdl/lis3mdl.cpp rename to src/drivers/magnetometer/lis3mdl/lis3mdl.cpp diff --git a/src/drivers/lis3mdl/lis3mdl.h b/src/drivers/magnetometer/lis3mdl/lis3mdl.h similarity index 100% rename from src/drivers/lis3mdl/lis3mdl.h rename to src/drivers/magnetometer/lis3mdl/lis3mdl.h diff --git a/src/drivers/lis3mdl/lis3mdl_i2c.cpp b/src/drivers/magnetometer/lis3mdl/lis3mdl_i2c.cpp similarity index 100% rename from src/drivers/lis3mdl/lis3mdl_i2c.cpp rename to src/drivers/magnetometer/lis3mdl/lis3mdl_i2c.cpp diff --git a/src/drivers/lis3mdl/lis3mdl_spi.cpp b/src/drivers/magnetometer/lis3mdl/lis3mdl_spi.cpp similarity index 100% rename from src/drivers/lis3mdl/lis3mdl_spi.cpp rename to src/drivers/magnetometer/lis3mdl/lis3mdl_spi.cpp