diff --git a/conf/modules/AOA_adc.xml b/conf/modules/AOA_adc.xml
index d4e7b513bc..17c9274d4a 100644
--- a/conf/modules/AOA_adc.xml
+++ b/conf/modules/AOA_adc.xml
@@ -1,6 +1,6 @@
-
+
Angle of Attack using internal ADC
diff --git a/conf/modules/AOA_pwm.xml b/conf/modules/AOA_pwm.xml
index 9974dd0bd9..49dd0cf306 100644
--- a/conf/modules/AOA_pwm.xml
+++ b/conf/modules/AOA_pwm.xml
@@ -1,6 +1,6 @@
-
+
Angle of Attack sensor using PWM input
diff --git a/conf/modules/actuators.xml b/conf/modules/actuators.xml
new file mode 100644
index 0000000000..7c46f60656
--- /dev/null
+++ b/conf/modules/actuators.xml
@@ -0,0 +1,23 @@
+
+
+
+
+
+ Common actuators interface
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/modules/actuators_ardrone2.xml b/conf/modules/actuators_ardrone2.xml
index 39826e4818..f82241f8da 100644
--- a/conf/modules/actuators_ardrone2.xml
+++ b/conf/modules/actuators_ardrone2.xml
@@ -6,12 +6,15 @@
Actuators Driver for ARDrone2
+
+ actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_asctec_v2.xml b/conf/modules/actuators_asctec_v2.xml
index ef2fd7af44..ecabc320b1 100644
--- a/conf/modules/actuators_asctec_v2.xml
+++ b/conf/modules/actuators_asctec_v2.xml
@@ -11,13 +11,16 @@
+
+ i2c,actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_bebop.xml b/conf/modules/actuators_bebop.xml
index 7638f6a6fa..15574234c1 100644
--- a/conf/modules/actuators_bebop.xml
+++ b/conf/modules/actuators_bebop.xml
@@ -7,13 +7,16 @@
+
+ i2c,actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_disco.xml b/conf/modules/actuators_disco.xml
index 160ee61eac..6481e4feec 100644
--- a/conf/modules/actuators_disco.xml
+++ b/conf/modules/actuators_disco.xml
@@ -6,11 +6,14 @@
Actuators Driver for Disco plane
+
+ i2c,actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_dshot.xml b/conf/modules/actuators_dshot.xml
index 3d7b487aed..ae7b50a119 100644
--- a/conf/modules/actuators_dshot.xml
+++ b/conf/modules/actuators_dshot.xml
@@ -11,11 +11,14 @@
+
+ actuators,@commands
+ actuators
+
-
diff --git a/conf/modules/actuators_dualpwm.xml b/conf/modules/actuators_dualpwm.xml
index 2224812070..9f7a1ceb90 100644
--- a/conf/modules/actuators_dualpwm.xml
+++ b/conf/modules/actuators_dualpwm.xml
@@ -4,14 +4,16 @@
Actuators Driver for dual PWM output
- Only with stm32
+
+ actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_dummy.xml b/conf/modules/actuators_dummy.xml
index b52ca5037b..407a3fc87f 100644
--- a/conf/modules/actuators_dummy.xml
+++ b/conf/modules/actuators_dummy.xml
@@ -5,8 +5,13 @@
Dummy actuators driver
This module prevents autoloading of actuators by fixedwing firmware
+
+ FIXME: this as no effect anymore
+
+ actuators
+
diff --git a/conf/modules/actuators_esc32.xml b/conf/modules/actuators_esc32.xml
index b7899f990a..dce1035fb9 100644
--- a/conf/modules/actuators_esc32.xml
+++ b/conf/modules/actuators_esc32.xml
@@ -11,11 +11,14 @@
- command_laws section to map motor_mixing commands to servos
+
+ actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_md25.xml b/conf/modules/actuators_md25.xml
index 572a2ded80..c9a44dd51d 100644
--- a/conf/modules/actuators_md25.xml
+++ b/conf/modules/actuators_md25.xml
@@ -7,6 +7,10 @@
+
+ i2c,actuators
+ actuators
+
@@ -14,7 +18,6 @@
-
diff --git a/conf/modules/actuators_nps.xml b/conf/modules/actuators_nps.xml
index aff3544fdb..097b27580b 100644
--- a/conf/modules/actuators_nps.xml
+++ b/conf/modules/actuators_nps.xml
@@ -6,8 +6,11 @@
Actuators for NPS (dummy pwm)
+
+ actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_ostrich.xml b/conf/modules/actuators_ostrich.xml
index ce19a2293e..124e1be131 100644
--- a/conf/modules/actuators_ostrich.xml
+++ b/conf/modules/actuators_ostrich.xml
@@ -6,6 +6,10 @@
+
+ uart,actuators
+ actuators
+
diff --git a/conf/modules/actuators_ppm.xml b/conf/modules/actuators_ppm.xml
index 5b1eb9e46d..f5ddb4a392 100644
--- a/conf/modules/actuators_ppm.xml
+++ b/conf/modules/actuators_ppm.xml
@@ -11,11 +11,14 @@
Can be adjusted in the "servos_ppm_hw.h" file to suit your particular receiver.
+
+ actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_pwm.xml b/conf/modules/actuators_pwm.xml
index 00dcc61cec..ea77285e35 100644
--- a/conf/modules/actuators_pwm.xml
+++ b/conf/modules/actuators_pwm.xml
@@ -6,11 +6,14 @@
Actuators Driver using direct PWM output
+
+ actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_sbus.xml b/conf/modules/actuators_sbus.xml
index ea7ce490b0..90f77d7f6d 100644
--- a/conf/modules/actuators_sbus.xml
+++ b/conf/modules/actuators_sbus.xml
@@ -9,12 +9,15 @@
+
+ uart,actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_spektrum.xml b/conf/modules/actuators_spektrum.xml
index 55a27542c2..a367e6f0fa 100644
--- a/conf/modules/actuators_spektrum.xml
+++ b/conf/modules/actuators_spektrum.xml
@@ -12,13 +12,16 @@
+
+ uart,actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_swing.xml b/conf/modules/actuators_swing.xml
index 93f4c889f5..20e163ef45 100644
--- a/conf/modules/actuators_swing.xml
+++ b/conf/modules/actuators_swing.xml
@@ -6,11 +6,14 @@
Actuators Driver for Swing
+
+ actuators
+ actuators
+
-
diff --git a/conf/modules/actuators_uavcan.xml b/conf/modules/actuators_uavcan.xml
index 3b77e92119..4cd736bace 100644
--- a/conf/modules/actuators_uavcan.xml
+++ b/conf/modules/actuators_uavcan.xml
@@ -8,8 +8,10 @@
- uavcan
+ uavcan,actuators
+ actuators
+
diff --git a/conf/modules/adc.xml b/conf/modules/adc.xml
index abf4aaabd8..c19c796bd8 100644
--- a/conf/modules/adc.xml
+++ b/conf/modules/adc.xml
@@ -7,6 +7,9 @@
To activate a specific ADC input, define flag USE_ADC_X where X is your ADC input number
+
+ mcu
+
diff --git a/conf/modules/ahrs_chimu_spi.xml b/conf/modules/ahrs_chimu_spi.xml
index 9c171b2aa0..5ff851731c 100644
--- a/conf/modules/ahrs_chimu_spi.xml
+++ b/conf/modules/ahrs_chimu_spi.xml
@@ -1,15 +1,19 @@
-
+
CHimu (SPI)
+
+ spi_slave_hs
+ ahrs,imu
+
-
+
diff --git a/conf/modules/ahrs_chimu_uart.xml b/conf/modules/ahrs_chimu_uart.xml
index ff8cd591f3..1c2046e747 100644
--- a/conf/modules/ahrs_chimu_uart.xml
+++ b/conf/modules/ahrs_chimu_uart.xml
@@ -1,14 +1,19 @@
-
+
CHimu (UART)
+
+ uart
+ ahrs,imu
+
+
diff --git a/conf/modules/ahrs_common.xml b/conf/modules/ahrs_common.xml
new file mode 100644
index 0000000000..94377818dd
--- /dev/null
+++ b/conf/modules/ahrs_common.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+ Generic AHRS interface.
+ Still requires at least one module providing the actual AHRS implementation.
+
+
+
+
+ @ahrs
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/modules/ahrs_float_cmpl_quat.xml b/conf/modules/ahrs_float_cmpl_quat.xml
index 82ed9a0cb4..c91a680cf2 100644
--- a/conf/modules/ahrs_float_cmpl_quat.xml
+++ b/conf/modules/ahrs_float_cmpl_quat.xml
@@ -1,6 +1,6 @@
-
+
AHRS using complementary filter in floating point.
@@ -35,10 +35,11 @@
+
+ ahrs_common,@imu,@gps|@mag
+ ahrs
+
-
@@ -46,16 +47,8 @@
-
-
-
-
-
-
-
-
diff --git a/conf/modules/ahrs_float_cmpl_rmat.xml b/conf/modules/ahrs_float_cmpl_rmat.xml
index 301b04ef3f..f2d5b54340 100644
--- a/conf/modules/ahrs_float_cmpl_rmat.xml
+++ b/conf/modules/ahrs_float_cmpl_rmat.xml
@@ -1,6 +1,6 @@
-
+
AHRS using complementary filter in floating point.
@@ -31,10 +31,11 @@
+
+ ahrs_common,@imu,@gps|@mag
+ ahrs
+
-
@@ -42,16 +43,8 @@
-
-
-
-
-
-
-
-
diff --git a/conf/modules/ahrs_float_dcm.xml b/conf/modules/ahrs_float_dcm.xml
index 419da82a1d..58eb6d8500 100644
--- a/conf/modules/ahrs_float_dcm.xml
+++ b/conf/modules/ahrs_float_dcm.xml
@@ -1,6 +1,6 @@
-
+
AHRS using DCM filter.
@@ -15,7 +15,6 @@
But since people already know it under that name, we kept it.
-
@@ -31,21 +30,15 @@
+
+ ahrs_common,@imu,@gps
+ ahrs
+
-
-
-
-
-
-
-
-
diff --git a/conf/modules/ahrs_float_invariant.xml b/conf/modules/ahrs_float_invariant.xml
index 2360fc59ac..c1a5ef42e1 100644
--- a/conf/modules/ahrs_float_invariant.xml
+++ b/conf/modules/ahrs_float_invariant.xml
@@ -1,6 +1,6 @@
-
+
AHRS using invariant filter.
@@ -28,20 +28,13 @@
-
-
+
+ ahrs_common,@imu,@mag
+ ahrs
+
-
-
-
-
-
-
-
diff --git a/conf/modules/ahrs_float_mlkf.xml b/conf/modules/ahrs_float_mlkf.xml
index 68233b9bc4..e429823a5b 100644
--- a/conf/modules/ahrs_float_mlkf.xml
+++ b/conf/modules/ahrs_float_mlkf.xml
@@ -1,6 +1,6 @@
-
+
AHRS using MLKF filter.
@@ -25,21 +25,14 @@
+
+ ahrs_common,@imu,@mag
+ ahrs
+
-
-
-
-
-
-
-
-
-
diff --git a/conf/modules/ahrs_gx3.xml b/conf/modules/ahrs_gx3.xml
index e9dfe72bf8..2edc98a5bc 100644
--- a/conf/modules/ahrs_gx3.xml
+++ b/conf/modules/ahrs_gx3.xml
@@ -1,6 +1,6 @@
-
+
AHRS driver for GX3.
@@ -8,11 +8,15 @@
+
+ uart
+ ahrs,imu,mag
+
-
+
diff --git a/conf/modules/ahrs_int_cmpl_quat.xml b/conf/modules/ahrs_int_cmpl_quat.xml
index 445a4ccd47..a8c3953f82 100644
--- a/conf/modules/ahrs_int_cmpl_quat.xml
+++ b/conf/modules/ahrs_int_cmpl_quat.xml
@@ -1,6 +1,6 @@
-
+
AHRS using complementary filter in fixed point.
@@ -47,10 +47,11 @@
+
+ ahrs_common,@imu,@mag|@gps
+ ahrs
+
-
@@ -59,14 +60,7 @@
-
-
-
-
-
-
-
diff --git a/conf/modules/ahrs_madgwick.xml b/conf/modules/ahrs_madgwick.xml
index 6bcac206e9..f96b08ca4f 100644
--- a/conf/modules/ahrs_madgwick.xml
+++ b/conf/modules/ahrs_madgwick.xml
@@ -1,6 +1,6 @@
-
+
AHRS using IMU (accel, gyro) only with Madwick implementation.
@@ -17,20 +17,17 @@
+
+ ahrs_common,@imu
+ ahrs
+
-
-
-
-
-
-
-
diff --git a/conf/modules/ahrs_sim.xml b/conf/modules/ahrs_sim.xml
index a7f160b5e0..f9e12bdf59 100644
--- a/conf/modules/ahrs_sim.xml
+++ b/conf/modules/ahrs_sim.xml
@@ -1,20 +1,22 @@
-
+
Simple simulation of the AHRS result.
Only for the simple fixedwing sim.
+
+ ahrs_common
+ ahrs
+
-
+
-
-
diff --git a/conf/modules/ahrs_vectornav.xml b/conf/modules/ahrs_vectornav.xml
index e189948205..6412ef5674 100644
--- a/conf/modules/ahrs_vectornav.xml
+++ b/conf/modules/ahrs_vectornav.xml
@@ -1,6 +1,6 @@
-
+
Vectornav VN200 over uart used as AHRS.
@@ -8,10 +8,15 @@
+
+ uart
+ ahrs,imu
+
+
diff --git a/conf/modules/air_data.xml b/conf/modules/air_data.xml
index f2e4f8b4b3..67adf2dd90 100644
--- a/conf/modules/air_data.xml
+++ b/conf/modules/air_data.xml
@@ -1,6 +1,6 @@
-
+
AirData interface.
@@ -36,7 +36,7 @@
-
+
diff --git a/conf/modules/airspeed_adc.xml b/conf/modules/airspeed_adc.xml
index 2d06efa947..66577e3459 100644
--- a/conf/modules/airspeed_adc.xml
+++ b/conf/modules/airspeed_adc.xml
@@ -1,6 +1,6 @@
-
+
Airspeed sensor (ADC).
Using the internal ADC.
@@ -19,6 +19,10 @@
+
+ adc
+ airspeed
+
diff --git a/conf/modules/airspeed_ads1114.xml b/conf/modules/airspeed_ads1114.xml
index 7decfa81ca..ac9303d95a 100644
--- a/conf/modules/airspeed_ads1114.xml
+++ b/conf/modules/airspeed_ads1114.xml
@@ -1,12 +1,16 @@
-
+
ADS1114 airspeed sensor.
Module to extend the baro_board module with an airspeed sensor using ads1114 adc
+
+ i2c
+ airspeed
+
diff --git a/conf/modules/airspeed_amsys.xml b/conf/modules/airspeed_amsys.xml
index 45512e27d7..402964e185 100644
--- a/conf/modules/airspeed_amsys.xml
+++ b/conf/modules/airspeed_amsys.xml
@@ -1,6 +1,6 @@
-
+
Airspeed AMSYS (I2C)
@@ -25,6 +25,10 @@
+
+ i2c
+ airspeed
+
diff --git a/conf/modules/airspeed_ets.xml b/conf/modules/airspeed_ets.xml
index 3c1d676ff8..5643754a89 100644
--- a/conf/modules/airspeed_ets.xml
+++ b/conf/modules/airspeed_ets.xml
@@ -1,6 +1,6 @@
-
+
Airspeed ETS (I2C).
@@ -27,6 +27,10 @@
+
+ i2c
+ airspeed
+
diff --git a/conf/modules/airspeed_ms45xx_i2c.xml b/conf/modules/airspeed_ms45xx_i2c.xml
index ee743797cc..09b8923414 100644
--- a/conf/modules/airspeed_ms45xx_i2c.xml
+++ b/conf/modules/airspeed_ms45xx_i2c.xml
@@ -1,6 +1,6 @@
-
+
MS45XX differential or gauge type of pressure sensor for e.g measuring airspeed.
@@ -32,6 +32,10 @@
+
+ i2c
+ airspeed
+
diff --git a/conf/modules/airspeed_otf.xml b/conf/modules/airspeed_otf.xml
index 4c37037b06..b5faf4daa3 100644
--- a/conf/modules/airspeed_otf.xml
+++ b/conf/modules/airspeed_otf.xml
@@ -1,6 +1,6 @@
-
+
OTF! airspeed/flow angle sensor
@@ -14,6 +14,10 @@
+
+ uart
+ airspeed,aoa
+
diff --git a/conf/modules/airspeed_sdp3x.xml b/conf/modules/airspeed_sdp3x.xml
index 09abf49ab2..64c481c5ef 100644
--- a/conf/modules/airspeed_sdp3x.xml
+++ b/conf/modules/airspeed_sdp3x.xml
@@ -1,6 +1,6 @@
-
+
SDP3X differential pressure sensor for e.g measuring airspeed.
@@ -26,6 +26,10 @@
+
+ i2c
+ airspeed
+
diff --git a/conf/modules/airspeed_uADC.xml b/conf/modules/airspeed_uADC.xml
index a53ee2d9db..c90801bf07 100644
--- a/conf/modules/airspeed_uADC.xml
+++ b/conf/modules/airspeed_uADC.xml
@@ -1,6 +1,6 @@
-
+
Driver for the Aeroprobe uADC air data computer.
@@ -13,6 +13,10 @@
+
+ uart
+ airspeed,aoa
+
diff --git a/conf/modules/autopilot_gnc.xml b/conf/modules/autopilot_gnc.xml
new file mode 100644
index 0000000000..56298af4b7
--- /dev/null
+++ b/conf/modules/autopilot_gnc.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+ Autopilot Guidance Navigation anc Control
+
+
+
+ system_core,@guidance,@navigation,@commands
+ autopilot
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/modules/baro_MS5534A.xml b/conf/modules/baro_MS5534A.xml
index 9c6b65d4cb..0b6a197185 100644
--- a/conf/modules/baro_MS5534A.xml
+++ b/conf/modules/baro_MS5534A.xml
@@ -1,6 +1,6 @@
-
+
MS5534a barometer (SPI)
@@ -9,6 +9,7 @@
spi_master
+ baro
diff --git a/conf/modules/baro_amsys.xml b/conf/modules/baro_amsys.xml
index e080cf9944..79b7bb2cce 100644
--- a/conf/modules/baro_amsys.xml
+++ b/conf/modules/baro_amsys.xml
@@ -1,6 +1,6 @@
-
+
Baro AMSYS (I2C).
@@ -21,6 +21,10 @@
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_bmp.xml b/conf/modules/baro_bmp.xml
index f05b6cc48f..da19927ec4 100644
--- a/conf/modules/baro_bmp.xml
+++ b/conf/modules/baro_bmp.xml
@@ -1,11 +1,15 @@
-
+
Bosch BMP085 pressure sensor
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_bmp280_i2c.xml b/conf/modules/baro_bmp280_i2c.xml
index 3c71e5ecea..2d850bd3a8 100644
--- a/conf/modules/baro_bmp280_i2c.xml
+++ b/conf/modules/baro_bmp280_i2c.xml
@@ -1,6 +1,6 @@
-
+
Bosch-Sensortech BMP280xx pressure sensor
@@ -9,6 +9,10 @@
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_bmp3.xml b/conf/modules/baro_bmp3.xml
index f41e6f44b7..1b5e95e327 100644
--- a/conf/modules/baro_bmp3.xml
+++ b/conf/modules/baro_bmp3.xml
@@ -1,6 +1,6 @@
-
+
Bosch-Sensortech BMP3xx pressure sensor
@@ -10,6 +10,10 @@
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_board.xml b/conf/modules/baro_board.xml
new file mode 100644
index 0000000000..b61ed01659
--- /dev/null
+++ b/conf/modules/baro_board.xml
@@ -0,0 +1,263 @@
+
+
+
+
+
+ Magic module to load the proper baro for a board (if supported)
+
+ This module should be replaced by a proper loading of the correct module
+ in each board or airframe file
+
+
+
+
+ baro_board_common
+
+
+
+ifeq ($(USE_BARO_BOARD), TRUE)
+
+# Navstik baro
+ifeq ($(BOARD), navstik)
+ BARO_BOARD_CFLAGS += -DUSE_I2C3
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_BOARD_BMP085
+ BARO_BOARD_SRCS += peripherals/bmp085.c
+ BARO_BOARD_SRCS += $(SRC_BOARD)/baro_board.c
+
+
+# Lisa/M baro
+else ifeq ($(BOARD), lisa_m)
+ ifeq ($(BOARD_VERSION), 1.0)
+ # on lisa_m_1.0: defaults to i2c baro bmp085 on the board
+ LISA_M_BARO ?= BARO_BOARD_BMP085
+ else ifeq ($(BOARD_VERSION), 2.0)
+ # on lisa_m_2.0: defaults to MS5611 baro connected via SPI on Aspirin2.2
+ LISA_M_BARO ?= BARO_MS5611_SPI
+ else ifeq ($(BOARD_VERSION), 2.1)
+ # on lisa_m_2.1: defaults to MS5611 baro connected via SPI on the integrated Aspirin2.2
+ LISA_M_BARO ?= BARO_MS5611_SPI
+ endif
+ ifeq ($(LISA_M_BARO), BARO_MS5611_SPI)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_SPI
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE3
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+ else ifeq ($(LISA_M_BARO), BARO_MS5611_I2C)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c2
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+ else ifeq ($(LISA_M_BARO), BARO_BOARD_BMP085)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_BOARD_BMP085
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_SRCS += peripherals/bmp085.c
+ BARO_BOARD_SRCS += $(SRC_BOARD)/baro_board.c
+ endif
+
+else ifeq ($(BOARD), lisa_mx)
+# defaults to MS5611 via SPI on Aspirin
+LISA_MX_BARO ?= BARO_MS5611_SPI
+ ifeq ($(LISA_MX_BARO), BARO_MS5611_SPI)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_SPI
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE3
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+ else ifeq ($(LISA_MX_BARO), BARO_MS5611_I2C)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c2
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+ else ifeq ($(LISA_MX_BARO), BARO_BOARD_BMP085)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_BOARD_BMP085
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_SRCS += peripherals/bmp085.c
+ BARO_BOARD_SRCS += $(SRC_BOARD)/baro_board.c
+ endif
+
+ else ifeq ($(BOARD), lisa_mxs)
+# defaults to MS5611 via SPI on Aspirin
+LISA_MXS_BARO ?= BARO_MS5611_SPI
+ ifeq ($(LISA_MXS_BARO), BARO_MS5611_SPI)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_SPI
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE3
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+ else ifeq ($(LISA_MXS_BARO), BARO_MS5611_I2C)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c2
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+ else ifeq ($(LISA_MXS_BARO), BARO_BOARD_BMP085)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_BOARD_BMP085
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_SRCS += peripherals/bmp085.c
+ BARO_BOARD_SRCS += $(SRC_BOARD)/baro_board.c
+ endif
+
+# Lisa/S baro
+else ifeq ($(BOARD), lisa_s)
+# defaults to SPI baro MS5611 on the board
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_CFLAGS += -DUSE_SPI1 -DUSE_SPI_SLAVE1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE1
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+
+# ELLE0 baro
+else ifeq ($(BOARD), elle0)
+
+# defaults to SPI baro MS5611 on the board
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_CFLAGS += -DUSE_SPI1 -DUSE_SPI_SLAVE1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE1
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+
+# Lia baro (no bmp onboard)
+else ifeq ($(BOARD), lia)
+# fixme, reuse the baro drivers in lisa_m dir
+LIA_BARO ?= BARO_MS5611_SPI
+ ifeq ($(LIA_BARO), BARO_MS5611_SPI)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_SPI
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE3
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+ else ifeq ($(LIA_BARO), BARO_MS5611_I2C)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c2
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+ endif
+
+
+# krooz baro
+else ifeq ($(BOARD), krooz)
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_ADDR=0xEC
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+
+# PX4FMU
+else ifeq ($(BOARD),$(filter $(BOARD),px4fmu))
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+ ifeq ($(BOARD_VERSION), 1.7)
+ # PX4FMU 1.7
+ BARO_BOARD_CFLAGS += -DUSE_SPI1 -DUSE_SPI_SLAVE3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE3
+ else ifeq ($(BOARD_VERSION), 2.4)
+ # PX4FMU 2.4 a.k.a. PIXHAWK
+ BARO_BOARD_CFLAGS += -DUSE_SPI1 -DUSE_SPI_SLAVE3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE3
+ else ifeq ($(BOARD_VERSION), 4.0)
+ # PX4FMU 4.0 a.k.a. PX4_PIXRACER
+ BARO_BOARD_CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE3
+ else ifeq ($(BOARD_VERSION), 5.0)
+ # PX4FMU 5.0
+ BARO_BOARD_CFLAGS += -DUSE_SPI4 -DUSE_SPI_SLAVE4
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi4
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE4
+ endif
+# apogee baro
+else ifeq ($(BOARD), apogee)
+ BARO_BOARD_CFLAGS += -DUSE_I2C1
+ BARO_BOARD_SRCS += peripherals/mpl3115.c
+ BARO_BOARD_SRCS += $(SRC_BOARD)/baro_board.c
+
+# Umarim
+else ifeq ($(BOARD), umarim)
+ ifeq ($(BOARD_VERSION), 1.0)
+ BARO_BOARD_CFLAGS += -DUSE_I2C1 -DUSE_ADS1114_1
+ BARO_BOARD_CFLAGS += -DADS1114_I2C_DEV=i2c1
+ BARO_BOARD_SRCS += peripherals/ads1114.c
+ BARO_BOARD_SRCS += boards/umarim/baro_board.c
+ endif
+
+# Naze32
+else ifeq ($(BOARD), naze32)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C
+ BARO_BOARD_CFLAGS += -DUSE_I2C2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c2
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+
+# OPA (AP)
+else ifeq ($(BOARD), opa_ap)
+ include $(CFG_SHARED)/spi_master.makefile
+ BARO_BOARD_CFLAGS += -DUSE_SPI2 -DUSE_SPI_SLAVE2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SPI_DEV=spi2
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_IDX=SPI_SLAVE2
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_spi.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_spi.c
+
+# OpenPilot Revo
+else ifeq ($(BOARD), openpilot_revo)
+ ifeq ($(BOARD_VERSION), nano)
+ BARO_BOARD_CFLAGS += -DUSE_I2C3
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c3
+ #BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_ADDR=0xEC
+ else
+ BARO_BOARD_CFLAGS += -DUSE_I2C1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c1
+ endif
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+
+else ifeq ($(BOARD), chimera)
+ BARO_BOARD_CFLAGS += -DBARO_BOARD=BARO_MS5611_I2C
+ BARO_BOARD_CFLAGS += -DUSE_I2C1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_I2C_DEV=i2c1
+ BARO_BOARD_CFLAGS += -DBB_MS5611_SLAVE_ADDR=MS5611_I2C_SLAVE_ADDR_ALT
+ BARO_BOARD_SRCS += peripherals/ms5611.c
+ BARO_BOARD_SRCS += peripherals/ms5611_i2c.c
+ BARO_BOARD_SRCS += boards/baro_board_ms5611_i2c.c
+
+endif # check board
+
+ap.CFLAGS += $(BARO_BOARD_CFLAGS)
+ap.srcs += $(BARO_BOARD_SRCS)
+
+endif # check USE_BARO_BOARD
+
+
+
+
diff --git a/conf/modules/baro_board_common.xml b/conf/modules/baro_board_common.xml
new file mode 100644
index 0000000000..40c4d0bf62
--- /dev/null
+++ b/conf/modules/baro_board_common.xml
@@ -0,0 +1,29 @@
+
+
+
+
+
+ Baro module calling internal barometer functions for boards supporting them
+
+
+
+
+ baro
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/modules/baro_ets.xml b/conf/modules/baro_ets.xml
index 27c2647525..9e0fd29215 100644
--- a/conf/modules/baro_ets.xml
+++ b/conf/modules/baro_ets.xml
@@ -1,6 +1,6 @@
-
+
Baro ETS (I2C).
@@ -25,6 +25,10 @@
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_hca.xml b/conf/modules/baro_hca.xml
index 4728733c50..2bb120d6b2 100644
--- a/conf/modules/baro_hca.xml
+++ b/conf/modules/baro_hca.xml
@@ -1,6 +1,6 @@
-
+
Baro sensortechnics HCA (I2C)
@@ -9,6 +9,10 @@
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_mpl3115.xml b/conf/modules/baro_mpl3115.xml
index 13225e56c0..605c8c5df7 100644
--- a/conf/modules/baro_mpl3115.xml
+++ b/conf/modules/baro_mpl3115.xml
@@ -1,6 +1,6 @@
-
+
Baro MPL3115A2 (I2C)
@@ -8,6 +8,10 @@
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_ms5611_i2c.xml b/conf/modules/baro_ms5611_i2c.xml
index 45a01b83b3..b89c551c0c 100644
--- a/conf/modules/baro_ms5611_i2c.xml
+++ b/conf/modules/baro_ms5611_i2c.xml
@@ -1,6 +1,6 @@
-
+
Baro MS5611 (I2C)
@@ -9,15 +9,20 @@
+
+ i2c
+ baro
+
-
-
+
+
+
diff --git a/conf/modules/baro_ms5611_spi.xml b/conf/modules/baro_ms5611_spi.xml
index 651f38f32b..46c3e21b14 100644
--- a/conf/modules/baro_ms5611_spi.xml
+++ b/conf/modules/baro_ms5611_spi.xml
@@ -1,6 +1,6 @@
-
+
Baro MS5611 (SPI)
@@ -12,6 +12,7 @@
spi_master
+ baro
diff --git a/conf/modules/baro_scp_i2c.xml b/conf/modules/baro_scp_i2c.xml
index 4320efb88a..873137f42e 100644
--- a/conf/modules/baro_scp_i2c.xml
+++ b/conf/modules/baro_scp_i2c.xml
@@ -1,11 +1,15 @@
-
+
VTI SCP1000 pressure sensor (I2C)
+
+ i2c
+ baro
+
diff --git a/conf/modules/baro_sim.xml b/conf/modules/baro_sim.xml
index 84e359d8de..20c4662b14 100644
--- a/conf/modules/baro_sim.xml
+++ b/conf/modules/baro_sim.xml
@@ -1,12 +1,15 @@
-
+
Simulated barometer.
Sends the BARO_ABS ABI message with gps.hmsl converted to absolute pressure.
+
+ baro
+
diff --git a/conf/modules/battery_monitor.xml b/conf/modules/battery_monitor.xml
index 216c0ca833..9e84b9cbee 100644
--- a/conf/modules/battery_monitor.xml
+++ b/conf/modules/battery_monitor.xml
@@ -34,6 +34,9 @@
+
+ i2c
+
diff --git a/conf/modules/bebop_cam.xml b/conf/modules/bebop_cam.xml
index a5fb77ec15..56b56e1d41 100644
--- a/conf/modules/bebop_cam.xml
+++ b/conf/modules/bebop_cam.xml
@@ -54,7 +54,7 @@
- video_thread
+ i2c,video_thread
diff --git a/conf/modules/control.xml b/conf/modules/control.xml
index 16a3f0ac3a..f32d888c49 100644
--- a/conf/modules/control.xml
+++ b/conf/modules/control.xml
@@ -1,6 +1,6 @@
-
+
Basic control for fixed-wing aircraft.
diff --git a/conf/modules/control_adaptive.xml b/conf/modules/control_adaptive.xml
index a3a8945a82..74a926103c 100644
--- a/conf/modules/control_adaptive.xml
+++ b/conf/modules/control_adaptive.xml
@@ -1,6 +1,6 @@
-
+
Adaptive control for fixed-wing aircraft.
diff --git a/conf/modules/control_energy.xml b/conf/modules/control_energy.xml
index 72cd54096c..6b8e21ddf9 100644
--- a/conf/modules/control_energy.xml
+++ b/conf/modules/control_energy.xml
@@ -1,6 +1,6 @@
-
+
Energy control for fixed-wing aircraft.
diff --git a/conf/modules/control_energyadaptive.xml b/conf/modules/control_energyadaptive.xml
index 801b8130f3..d3caf5dc65 100644
--- a/conf/modules/control_energyadaptive.xml
+++ b/conf/modules/control_energyadaptive.xml
@@ -1,6 +1,6 @@
-
+
Energy control for fixed-wing aircraft with adaptive stabilization.
diff --git a/conf/modules/control_new.xml b/conf/modules/control_new.xml
index 080950e92f..d709025996 100644
--- a/conf/modules/control_new.xml
+++ b/conf/modules/control_new.xml
@@ -1,6 +1,6 @@
-
+
Full PID control for fixed-wing aircraft.
diff --git a/conf/modules/dac.xml b/conf/modules/dac.xml
index a495c8f5dd..69f2d1dd1e 100644
--- a/conf/modules/dac.xml
+++ b/conf/modules/dac.xml
@@ -7,6 +7,9 @@
To activate a specific DAC input, define flag USE_DACX where X is your DAC input number
+
+ mcu
+
diff --git a/conf/modules/datalink_common.xml b/conf/modules/datalink_common.xml
new file mode 100644
index 0000000000..ea550ed838
--- /dev/null
+++ b/conf/modules/datalink_common.xml
@@ -0,0 +1,59 @@
+
+
+
+
+
+ Common datalink interface for telemetry, downlink and uplink
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/modules/electrical.xml b/conf/modules/electrical.xml
new file mode 100644
index 0000000000..d1bfa18228
--- /dev/null
+++ b/conf/modules/electrical.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+ General electrical interface
+
+
+
+ adc
+ electrical
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/conf/modules/fdm_jsbsim.xml b/conf/modules/fdm_jsbsim.xml
index a0a3ce1982..20b1258f55 100644
--- a/conf/modules/fdm_jsbsim.xml
+++ b/conf/modules/fdm_jsbsim.xml
@@ -16,6 +16,9 @@
+
+ baro
+
@@ -25,18 +28,18 @@
ifeq ($(FIND_JSBSIM_VIA_PKG_CONFIG), yes)
- nps.CFLAGS += $(shell pkg-config JSBSim --cflags)
- nps.LDFLAGS += $(shell pkg-config JSBSim --libs)
+ $(TARGET).CFLAGS += $(shell pkg-config JSBSim --cflags)
+ $(TARGET).LDFLAGS += $(shell pkg-config JSBSim --libs)
ifeq ($(shell pkg-config JSBSim --modversion), 1.0)
- nps.CFLAGS += -DNPS_JSBSIM_USE_SGPATH=FALSE
+ $(TARGET).CFLAGS += -DNPS_JSBSIM_USE_SGPATH=FALSE
else
- nps.CFLAGS += -DNPS_JSBSIM_USE_SGPATH=$(JSBSIM_USE_SGPATH)
+ $(TARGET).CFLAGS += -DNPS_JSBSIM_USE_SGPATH=$(JSBSIM_USE_SGPATH)
endif
else
FIND_JSBSIM_VIA_PKG_CONFIG = no
- nps.CFLAGS += -I$(JSBSIM_INC)
- nps.LDFLAGS += -L$(JSBSIM_LIB) -lJSBSim
- nps.CFLAGS += -DNPS_JSBSIM_USE_SGPATH=$(JSBSIM_USE_SGPATH)
+ $(TARGET).CFLAGS += -I$(JSBSIM_INC)
+ $(TARGET).LDFLAGS += -L$(JSBSIM_LIB) -lJSBSim
+ $(TARGET).CFLAGS += -DNPS_JSBSIM_USE_SGPATH=$(JSBSIM_USE_SGPATH)
endif
diff --git a/conf/modules/filter_1euro_imu.xml b/conf/modules/filter_1euro_imu.xml
index 5139909615..0aed978428 100644
--- a/conf/modules/filter_1euro_imu.xml
+++ b/conf/modules/filter_1euro_imu.xml
@@ -40,6 +40,9 @@
+
+ @imu
+
diff --git a/conf/modules/flight_recorder.xml b/conf/modules/flight_recorder.xml
index bdf9879134..51670983d2 100644
--- a/conf/modules/flight_recorder.xml
+++ b/conf/modules/flight_recorder.xml
@@ -1,6 +1,6 @@
-
+
Record flight data according to your telemetry file.
diff --git a/conf/modules/gpio_ext_common.xml b/conf/modules/gpio_ext_common.xml
index a06ded1d77..84845f4308 100644
--- a/conf/modules/gpio_ext_common.xml
+++ b/conf/modules/gpio_ext_common.xml
@@ -10,6 +10,9 @@ redirects calls with port GPIOEXTx to modules.
See gpio_ext_pca95xx as an example implementation.
+
+ mcu
+
diff --git a/conf/modules/gps.xml b/conf/modules/gps.xml
index ad355560ed..9059ee81bf 100644
--- a/conf/modules/gps.xml
+++ b/conf/modules/gps.xml
@@ -1,6 +1,6 @@
-
+
Generic GPS functions.
diff --git a/conf/modules/gps_datalink.xml b/conf/modules/gps_datalink.xml
index 7ff95bee85..f918ac7f41 100644
--- a/conf/modules/gps_datalink.xml
+++ b/conf/modules/gps_datalink.xml
@@ -1,13 +1,16 @@
-
+
Remote GPS via datalink.
Parses the REMOTE_GPS and REMOTE_GPS_SMALL datalink messages and publishes it onboard via ABI.
-
+
+ gps,@datalink
+ gps
+
diff --git a/conf/modules/gps_furuno.xml b/conf/modules/gps_furuno.xml
index a8798a9b33..0a91393075 100644
--- a/conf/modules/gps_furuno.xml
+++ b/conf/modules/gps_furuno.xml
@@ -1,6 +1,6 @@
-
+
Furuno GPS (UART)
@@ -9,7 +9,10 @@
-
+
+ uart,gps
+ gps
+
diff --git a/conf/modules/gps_mediatek_diy.xml b/conf/modules/gps_mediatek_diy.xml
index 020bf5436e..f69ea5fad4 100644
--- a/conf/modules/gps_mediatek_diy.xml
+++ b/conf/modules/gps_mediatek_diy.xml
@@ -1,6 +1,6 @@
-
+
Mediatek MT3329 GPS (UART)
@@ -9,7 +9,10 @@
-
+
+ uart,gps
+ gps
+
diff --git a/conf/modules/gps_nmea.xml b/conf/modules/gps_nmea.xml
index 4cf997fd05..32c055df69 100644
--- a/conf/modules/gps_nmea.xml
+++ b/conf/modules/gps_nmea.xml
@@ -1,6 +1,6 @@
-
+
NMEA GPS (UART)
@@ -9,7 +9,10 @@
-
+
+ uart,gps
+ gps
+
diff --git a/conf/modules/gps_nps.xml b/conf/modules/gps_nps.xml
index 5617b17650..90ce0cab03 100644
--- a/conf/modules/gps_nps.xml
+++ b/conf/modules/gps_nps.xml
@@ -1,6 +1,6 @@
-
+
Simulated GPS for NPS.
@@ -8,7 +8,10 @@
The GPS sensor configuration is done in the header file referenced by NPS_SENSORS_PARAMS.
-
+
+ gps
+ gps
+
diff --git a/conf/modules/gps_optitrack.xml b/conf/modules/gps_optitrack.xml
index c487066886..5332321314 100644
--- a/conf/modules/gps_optitrack.xml
+++ b/conf/modules/gps_optitrack.xml
@@ -1,6 +1,6 @@
-
+
Optitrack used as indoor GPS.
@@ -9,8 +9,10 @@
So as a hack optitrack sends the heading in the GPS course field.
-
-
+
+ gps_datalink
+ gps
+
diff --git a/conf/modules/gps_piksi.xml b/conf/modules/gps_piksi.xml
index 45ead02506..70769ff0b4 100644
--- a/conf/modules/gps_piksi.xml
+++ b/conf/modules/gps_piksi.xml
@@ -1,6 +1,6 @@
-
+
Swift-Nav Piksi RTK GPS.
@@ -9,7 +9,10 @@
-
+
+ uart,gps
+ gps
+
diff --git a/conf/modules/gps_sim.xml b/conf/modules/gps_sim.xml
index fa9ed1ab9d..92e2ae8c08 100644
--- a/conf/modules/gps_sim.xml
+++ b/conf/modules/gps_sim.xml
@@ -1,13 +1,16 @@
-
+
Simulated GPS
For simple fixedwing OCaml simulator. Does not model any GPS inaccuracies/noise.
-
+
+ gps
+ gps
+
diff --git a/conf/modules/gps_sim_hitl.xml b/conf/modules/gps_sim_hitl.xml
index efbe4f5d9b..03139b3ebd 100644
--- a/conf/modules/gps_sim_hitl.xml
+++ b/conf/modules/gps_sim_hitl.xml
@@ -1,13 +1,16 @@
-
+
Sim HITL GPS
Simulate GPS for HITL (HardwareInTheLoop) from rotorcrafts horizontal/vertical reference system.
-
+
+ gps
+ gps
+
diff --git a/conf/modules/gps_sirf.xml b/conf/modules/gps_sirf.xml
index 8d71a9d8c7..5d92596fbc 100644
--- a/conf/modules/gps_sirf.xml
+++ b/conf/modules/gps_sirf.xml
@@ -1,6 +1,6 @@
-
+
Sirf GPS (UART)
@@ -9,7 +9,10 @@
-
+
+ uart,gps
+ gps
+
diff --git a/conf/modules/gps_skytraq.xml b/conf/modules/gps_skytraq.xml
index 3aa3d9b56a..5046b5b2e2 100644
--- a/conf/modules/gps_skytraq.xml
+++ b/conf/modules/gps_skytraq.xml
@@ -1,6 +1,6 @@
-
+
Skytraq GPS (UART)
@@ -9,7 +9,10 @@
-
+
+ uart,gps
+ gps
+
diff --git a/conf/modules/gps_ublox.xml b/conf/modules/gps_ublox.xml
index a1a69f4947..44ab97735a 100644
--- a/conf/modules/gps_ublox.xml
+++ b/conf/modules/gps_ublox.xml
@@ -1,6 +1,6 @@
-
+
U-blox GPS (UART)
@@ -9,7 +9,10 @@
-
+
+ uart,gps
+ gps
+
diff --git a/conf/modules/gps_ubx_i2c.xml b/conf/modules/gps_ubx_i2c.xml
index bfd7394a5a..7fc71b45c6 100644
--- a/conf/modules/gps_ubx_i2c.xml
+++ b/conf/modules/gps_ubx_i2c.xml
@@ -1,6 +1,6 @@
-
+
U-blox GPS (I2C)
@@ -10,9 +10,11 @@
- gps_ublox
+ i2c,gps_ublox
+ gps
-
+
+
diff --git a/conf/modules/gps_ubx_ucenter.xml b/conf/modules/gps_ubx_ucenter.xml
index 64262fbf1e..7cb9a965e4 100644
--- a/conf/modules/gps_ubx_ucenter.xml
+++ b/conf/modules/gps_ubx_ucenter.xml
@@ -1,6 +1,6 @@
-
+
Ublox GPS autoconfiguration.
diff --git a/conf/modules/gps_udp.xml b/conf/modules/gps_udp.xml
index be095fdd52..337d3894d0 100644
--- a/conf/modules/gps_udp.xml
+++ b/conf/modules/gps_udp.xml
@@ -1,6 +1,6 @@
-
+
GPS via UDP.
@@ -10,7 +10,10 @@
-
+
+ udp,gps
+ gps
+
diff --git a/conf/modules/guidance_basic_fw.xml b/conf/modules/guidance_basic_fw.xml
index c435a1f325..c2772b0f67 100644
--- a/conf/modules/guidance_basic_fw.xml
+++ b/conf/modules/guidance_basic_fw.xml
@@ -1,6 +1,6 @@
-
+
Legacy vertical control for fixedwing aircraft based on throttle (default) or pitch
@@ -45,6 +45,10 @@
+
+ @navigation
+ guidance,attitude_command
+
diff --git a/conf/modules/guidance_energy.xml b/conf/modules/guidance_energy.xml
index ff0a245976..169894982b 100644
--- a/conf/modules/guidance_energy.xml
+++ b/conf/modules/guidance_energy.xml
@@ -1,6 +1,6 @@
-
+
Energy based vertical control for fixedwing aircraft.
@@ -58,6 +58,10 @@
+
+ @navigation
+ guidance,attitude_command
+
diff --git a/conf/modules/guidance_full_pid_fw.xml b/conf/modules/guidance_full_pid_fw.xml
index 985c49c0aa..c88d3f3276 100644
--- a/conf/modules/guidance_full_pid_fw.xml
+++ b/conf/modules/guidance_full_pid_fw.xml
@@ -1,6 +1,6 @@
-
+
Vertical control for fixedwing aircraft based on PID
@@ -73,6 +73,10 @@
+
+ @navigation
+ guidance,attitude_command
+
diff --git a/conf/modules/guidance_hybrid.xml b/conf/modules/guidance_hybrid.xml
index 69d5650788..2e8de009c2 100644
--- a/conf/modules/guidance_hybrid.xml
+++ b/conf/modules/guidance_hybrid.xml
@@ -1,6 +1,6 @@
-
+
Guidance controller for hybrid vehicles
@@ -18,6 +18,10 @@
+
+ @navigation
+ guidance,attitude_command
+
diff --git a/conf/modules/guidance_indi.xml b/conf/modules/guidance_indi.xml
index c2c5988738..26fc8cef8c 100644
--- a/conf/modules/guidance_indi.xml
+++ b/conf/modules/guidance_indi.xml
@@ -1,6 +1,6 @@
-
+
Guidance controller for rotorcraft using INDI
@@ -15,6 +15,10 @@
+
+ @navigation
+ guidance,attitude_command
+
diff --git a/conf/modules/guidance_indi_hybrid.xml b/conf/modules/guidance_indi_hybrid.xml
index 106672d852..87211442ef 100644
--- a/conf/modules/guidance_indi_hybrid.xml
+++ b/conf/modules/guidance_indi_hybrid.xml
@@ -1,6 +1,6 @@
-
+
Guidance controller for hybrids using INDI
@@ -21,6 +21,10 @@
+
+ @navigation
+ guidance,attitude_command
+
diff --git a/conf/modules/guidance_rotorcraft.xml b/conf/modules/guidance_rotorcraft.xml
index fd3f42c44e..b9c03021bb 100644
--- a/conf/modules/guidance_rotorcraft.xml
+++ b/conf/modules/guidance_rotorcraft.xml
@@ -1,6 +1,6 @@
-
+
Base guidance code for rotorcraft
@@ -50,6 +50,10 @@
+
+ @navigation
+ guidance,attitude_command
+
diff --git a/conf/modules/guidance_rover.xml b/conf/modules/guidance_rover.xml
index 66ebc8cd16..88455e42b1 100644
--- a/conf/modules/guidance_rover.xml
+++ b/conf/modules/guidance_rover.xml
@@ -1,6 +1,6 @@
-
+
Base guidance code for rover
@@ -18,6 +18,10 @@
+
+ @navigation
+ guidance,commands
+
diff --git a/conf/modules/guidance_rover_holonomic.xml b/conf/modules/guidance_rover_holonomic.xml
index 0a00a56050..4f5496b824 100644
--- a/conf/modules/guidance_rover_holonomic.xml
+++ b/conf/modules/guidance_rover_holonomic.xml
@@ -1,6 +1,6 @@
-
+
Holonomic guidance for rover
@@ -18,6 +18,10 @@
+
+ @navigation
+ guidance,commands
+
diff --git a/conf/modules/imu_apogee.xml b/conf/modules/imu_apogee.xml
index 10d9e060ab..0d5274b7f8 100644
--- a/conf/modules/imu_apogee.xml
+++ b/conf/modules/imu_apogee.xml
@@ -1,14 +1,18 @@
-
+
Driver for IMU on Apogee board.
- Accelerometer/Gyroscope: MPU60x0 via I2C1
-
+
+ i2c,imu_common
+ imu
+
+
diff --git a/conf/modules/imu_apogee_mpu9150.xml b/conf/modules/imu_apogee_mpu9150.xml
index 91d20b41c8..f050277ce9 100644
--- a/conf/modules/imu_apogee_mpu9150.xml
+++ b/conf/modules/imu_apogee_mpu9150.xml
@@ -1,6 +1,6 @@
-
+
Driver for IMU on Apogee board.
@@ -16,6 +16,10 @@
+
+ i2c
+ imu,mag
+
diff --git a/conf/modules/imu_ardrone2.xml b/conf/modules/imu_ardrone2.xml
index 1b0889af5a..6b3b35c497 100644
--- a/conf/modules/imu_ardrone2.xml
+++ b/conf/modules/imu_ardrone2.xml
@@ -1,13 +1,17 @@
-
+
IMU on Parrot ARDrone2.
-
+
+ uart,imu_common
+ imu,mag,sonar
+
+
diff --git a/conf/modules/imu_aspirin_common.xml b/conf/modules/imu_aspirin_common.xml
index 6a4cea90b2..2e22fcda05 100644
--- a/conf/modules/imu_aspirin_common.xml
+++ b/conf/modules/imu_aspirin_common.xml
@@ -1,6 +1,6 @@
-
+
Common functionality of Aspirin IMUs.
@@ -22,10 +22,11 @@
- spi_master
+ spi_master,i2c,imu_common
+ imu,mag
-
+
diff --git a/conf/modules/imu_aspirin_i2c_common.xml b/conf/modules/imu_aspirin_i2c_common.xml
index 4851412595..cff6f697b5 100644
--- a/conf/modules/imu_aspirin_i2c_common.xml
+++ b/conf/modules/imu_aspirin_i2c_common.xml
@@ -1,6 +1,6 @@
-
+
Common functionality of Aspirin IMUs using I2C only.
@@ -19,8 +19,12 @@
-
+
+ i2c,imu_common
+ imu,mag
+
+
diff --git a/conf/modules/imu_aspirin_i2c_v1.0.xml b/conf/modules/imu_aspirin_i2c_v1.0.xml
index dbde1b20c4..a2cd6cc634 100644
--- a/conf/modules/imu_aspirin_i2c_v1.0.xml
+++ b/conf/modules/imu_aspirin_i2c_v1.0.xml
@@ -1,6 +1,6 @@
-
+
Aspirin v1.0 IMU using I2C only.
@@ -19,8 +19,12 @@
-
+
+ imu_aspirin_i2c_common
+ imu
+
+
diff --git a/conf/modules/imu_aspirin_i2c_v1.5.xml b/conf/modules/imu_aspirin_i2c_v1.5.xml
index 5d386d8630..b9cffe7079 100644
--- a/conf/modules/imu_aspirin_i2c_v1.5.xml
+++ b/conf/modules/imu_aspirin_i2c_v1.5.xml
@@ -1,6 +1,6 @@
-
+
Aspirin v1.5 IMU.
@@ -10,8 +10,12 @@
For configuration see the imu_aspirin_common module
-
+
+ imu_aspirin_i2c_common
+ imu
+
+
diff --git a/conf/modules/imu_aspirin_v1.0.xml b/conf/modules/imu_aspirin_v1.0.xml
index 42a739e909..69928486d5 100644
--- a/conf/modules/imu_aspirin_v1.0.xml
+++ b/conf/modules/imu_aspirin_v1.0.xml
@@ -1,6 +1,6 @@
-
+
Aspirin v1.0 IMU.
@@ -10,7 +10,12 @@
For configuration see the imu_aspirin_common module
-
+
+ imu_aspirin_common
+ imu
+
+
+
diff --git a/conf/modules/imu_aspirin_v1.5.xml b/conf/modules/imu_aspirin_v1.5.xml
index 41971534eb..24400c5e35 100644
--- a/conf/modules/imu_aspirin_v1.5.xml
+++ b/conf/modules/imu_aspirin_v1.5.xml
@@ -1,6 +1,6 @@
-
+
Aspirin v1.5 IMU.
diff --git a/conf/modules/imu_aspirin_v2.1.xml b/conf/modules/imu_aspirin_v2.1.xml
index d0b2f49958..a25629ff81 100644
--- a/conf/modules/imu_aspirin_v2.1.xml
+++ b/conf/modules/imu_aspirin_v2.1.xml
@@ -1,6 +1,6 @@
-
+
Aspirin v2.1 IMU.
@@ -9,7 +9,12 @@
For configuration see the imu_aspirin_v2_common module
-
+
+ imu_aspirin_v2_common
+ imu
+
+
+
diff --git a/conf/modules/imu_aspirin_v2.2.xml b/conf/modules/imu_aspirin_v2.2.xml
index cf647aea00..bdaa89b808 100644
--- a/conf/modules/imu_aspirin_v2.2.xml
+++ b/conf/modules/imu_aspirin_v2.2.xml
@@ -1,6 +1,6 @@
-
+
Aspirin v2.2 IMU.
@@ -10,8 +10,11 @@
For configuration see the imu_aspirin_v2_common module
-
-
+
+ imu_aspirin_v2_common
+ imu
+
+
diff --git a/conf/modules/imu_aspirin_v2_common.xml b/conf/modules/imu_aspirin_v2_common.xml
index 3868323d02..02d0c37ebe 100644
--- a/conf/modules/imu_aspirin_v2_common.xml
+++ b/conf/modules/imu_aspirin_v2_common.xml
@@ -1,6 +1,6 @@
-
+
Common functionality of Aspirin v2 IMUs.
@@ -21,10 +21,11 @@
- spi_master
+ spi_master,imu_common
+ imu,mag
-
+
diff --git a/conf/modules/imu_bebop.xml b/conf/modules/imu_bebop.xml
index 1238091d1c..d10e12d475 100644
--- a/conf/modules/imu_bebop.xml
+++ b/conf/modules/imu_bebop.xml
@@ -1,6 +1,6 @@
-
+
Driver for IMU on the Parrot Bebop drone.
@@ -17,8 +17,12 @@