commit 8be006e00c9590e69535cfc101159a1ab942db18
Author: Thomas Schöpping <tschoepp@cit-ec.uni-bielefeld.de>
Date:   Tue Jan 8 15:24:11 2019 +0100

    PowerManagement: Introduced a configuration (board.h) to select the attached sensor ring module.

diff --git a/modules/PowerManagement_1-1/module.h b/modules/PowerManagement_1-1/module.h
index 3863dc3..4e858e1 100644
--- a/modules/PowerManagement_1-1/module.h
+++ b/modules/PowerManagement_1-1/module.h
@@ -92,24 +92,58 @@ extern ADCConversionGroup moduleHalAdcVsysConversionGroup;
 extern CANConfig moduleHalCanConfig;
 
 /**
- * @brief   I2C driver to access multiplexer, proximity sensors 1 to 4, power monitors for VIO1.8 and VIO 3.3, and fuel gauge (rear battery).
- */
-#define MODULE_HAL_I2C_PROX_PM18_PM33_GAUGEREAR I2CD1
-
-/**
- * @brief   Configuration for the multiplexer, proximity sensors 1 to 4, power monitors for VIO1.8 and VIO 3.3, and fuel gauge (rear battery) I2C driver.
- */
-extern I2CConfig moduleHalI2cProxPm18Pm33GaugeRearConfig;
-
-/**
- * @brief   I2C driver to access multiplexer, proximity sensors 5 to 8, power monitors for VSYS4.2, VIO 5.0 and VDD, EEPROM, touch sensor, and fuel gauge (front battery).
- */
-#define MODULE_HAL_I2C_PROX_PM42_PM50_PMVDD_EEPROM_TOUCH_GAUGEFRONT I2CD2
-
-/**
- * @brief   Configuration for the multiplexer, proximity sensors 1 to 4, power monitors for VIO1.8 and VIO 3.3, and fuel gauge (rear battery) I2C driver.
- */
-extern I2CConfig moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig;
+ * @brief   I2C driver to access the sensor ring, power monitors for VIO1.8 and VIO3.3, and fuel gauge (rear battery).
+ * @details Depending on the attached sensor ring, the devices connected to this bus vary:
+ *          ProximitySensor:
+ *            - I2C multiplexer (PCA9544A)
+ *            - proximity sensors (VCNL4020) #1 - #4
+ *          DistanceSensor (VL53L0X):
+ *            TODO
+ *          DistanceSensor (VL53L1X):
+ *            TODO
+ */
+#define MODULE_HAL_I2C_SR_PM18_PM33_GAUGEREAR   I2CD1
+
+/**
+ * @brief   Configuration for the sensor ring, power monitors for VIO1.8 and VIO3.3, and fuel gauge (rear battery) I2C driver.
+ * @details Depending on the attached sensor ring, the devices connected to this bus vary:
+ *          ProximitySensor:
+ *            - I2C multiplexer (PCA9544A)
+ *            - proximity sensors (VCNL4020) #1 - #4
+ *          DistanceSensor (VL53L0X):
+ *            TODO
+ *          DistanceSensor (VL53L1X):
+ *            TODO
+ */
+extern I2CConfig moduleHalI2cSrPm18Pm33GaugeRearConfig;
+
+/**
+ * @brief   I2C driver to access the sensor ring, power monitors for VSYS4.2, VIO5.0 and VDD, EEPROM, and fuel gauge (front battery).
+ * @details Depending on the attached sensor ring, the devices connected to this bus vary:
+ *          ProximitySensor:
+ *            - I2C multiplexer (PCA9544A)
+ *            - proximity sensors (VCNL4020) #1 - #4
+ *            - touch sensor (MPR121)
+ *          DistanceSensor (VL53L0X):
+ *            TODO
+ *          DistanceSensor (VL53L1X):
+ *            TODO
+ */
+#define MODULE_HAL_I2C_SR_PM42_PM50_PMVDD_EEPROM_GAUGEFRONT I2CD2
+
+/**
+ * @brief   Configuration for the sensor ring, power monitors for VSYS4.2, VIO5.0 and VDD, EEPROM, and fuel gauge (front battery) I2C driver.
+ * @details Depending on the attached sensor ring, the devices connected to this bus vary:
+ *          ProximitySensor:
+ *            - I2C multiplexer (PCA9544A)
+ *            - proximity sensors (VCNL4020) #1 - #4
+ *            - touch sensor (MPR121)
+ *          DistanceSensor (VL53L0X):
+ *            TODO
+ *          DistanceSensor (VL53L1X):
+ *            TODO
+ */
+extern I2CConfig moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig;
 
 /**
  * @brief   PWM driver for the buzzer.
@@ -149,7 +183,7 @@ extern SerialConfig moduleHalProgIfConfig;
  * @{
  */
 /*===========================================================================*/
-#include <amiro-lld.h>
+#include <periphALtypes.h>
 
 /**
  * @brief   SYS_REG_EN output signal GPIO.
@@ -405,36 +439,47 @@ extern ROMCONST char* moduleShellPrompt;
   aosShellAddCommand(&aos.shell, &moduleUtAlldBq27500.shellcmd);              \
   aosShellAddCommand(&aos.shell, &moduleUtAlldBq27500Bq24103a.shellcmd);      \
   aosShellAddCommand(&aos.shell, &moduleUtAlldIna219.shellcmd);               \
-  aosShellAddCommand(&aos.shell, &moduleUtAlldMpr121.shellcmd);               \
-  aosShellAddCommand(&aos.shell, &moduleUtAlldPca9544a.shellcmd);             \
   aosShellAddCommand(&aos.shell, &moduleUtAlldPklcs1212e4001.shellcmd);       \
   aosShellAddCommand(&aos.shell, &moduleUtAlldLed.shellcmd);                  \
   aosShellAddCommand(&aos.shell, &moduleUtAlldTps62113.shellcmd);             \
   aosShellAddCommand(&aos.shell, &moduleUtAlldTps62113Ina219.shellcmd);       \
-  aosShellAddCommand(&aos.shell, &moduleUtAlldVcnl4020.shellcmd);             \
+  MODULE_INIT_TEST_SENSORRING();                                              \
 }
+#if (BOARD_SENSORRING == BOARD_PROXIMITYSENSOR) || defined(__DOXYGEN__)
+  #define MODULE_INIT_TEST_SENSORRING() {                                     \
+    aosShellAddCommand(&aos.shell, &moduleUtAlldPca9544a.shellcmd);           \
+    aosShellAddCommand(&aos.shell, &moduleUtAlldMpr121.shellcmd);             \
+    aosShellAddCommand(&aos.shell, &moduleUtAlldVcnl4020.shellcmd);           \
+  }
+#elif (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L0X) || defined(__DOXYGEN__)
+  #define MODULE_INIT_TEST_SENSORRING() {                                     \
+    /* TODO */                                                                \
+  }
+#elif (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L1X) || defined(__DOXYGEN__)
+  #define MODULE_INIT_TEST_SENSORRING() {                                     \
+    /* TODO */                                                                \
+  }
+#else
+  #define MODULE_INIT_TEST_SENSORRING()         {}
+#endif
 
 /**
  * @brief   Periphery communication interfaces initialization hook.
  */
 #define MODULE_INIT_PERIPHERY_COMM() {                                        \
+  MODULE_INIT_PERIPHERY_COMM_SENSORRING();                                    \
   /* serial driver */                                                         \
   sdStart(&MODULE_HAL_PROGIF, &moduleHalProgIfConfig);                        \
   /* I2C */                                                                   \
-  moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed = (PCA9544A_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed) ? PCA9544A_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed;  \
-  moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed = (VCNL4020_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed) ? VCNL4020_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed;  \
-  moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed = (INA219_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed) ? INA219_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed;  \
-  moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed = (BQ27500_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed) ? BQ27500_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed;  \
-  moduleHalI2cProxPm18Pm33GaugeRearConfig.duty_cycle = (moduleHalI2cProxPm18Pm33GaugeRearConfig.clock_speed <= 100000) ? STD_DUTY_CYCLE : FAST_DUTY_CYCLE_2;  \
-  i2cStart(&MODULE_HAL_I2C_PROX_PM18_PM33_GAUGEREAR, &moduleHalI2cProxPm18Pm33GaugeRearConfig); \
-  moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed = (PCA9544A_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed) ? PCA9544A_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed; \
-  moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed = (VCNL4020_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed) ? VCNL4020_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed; \
-  moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed = (INA219_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed) ? INA219_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed; \
-  moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed = (AT24C01BN_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed) ? AT24C01BN_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed; \
-  moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed = (MPR121_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed) ? MPR121_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed; \
-  moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed = (BQ27500_LLD_I2C_MAXFREQUENCY < moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed) ? BQ27500_LLD_I2C_MAXFREQUENCY : moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed; \
-  moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.duty_cycle = (moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig.clock_speed <= 100000) ? STD_DUTY_CYCLE : FAST_DUTY_CYCLE_2;  \
-  i2cStart(&MODULE_HAL_I2C_PROX_PM42_PM50_PMVDD_EEPROM_TOUCH_GAUGEFRONT, &moduleHalI2cProxPm42Pm50PmVddEepromTouchGaugeFrontConfig);  \
+  moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed = (INA219_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed) ? INA219_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed;  \
+  moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed = (BQ27500_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed) ? BQ27500_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed;  \
+  moduleHalI2cSrPm18Pm33GaugeRearConfig.duty_cycle = (moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed <= 100000) ? STD_DUTY_CYCLE : FAST_DUTY_CYCLE_2;  \
+  i2cStart(&MODULE_HAL_I2C_SR_PM18_PM33_GAUGEREAR, &moduleHalI2cSrPm18Pm33GaugeRearConfig); \
+  moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed = (INA219_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed) ? INA219_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed; \
+  moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed = (AT24C01BN_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed) ? AT24C01BN_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed; \
+  moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed = (BQ27500_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed) ? BQ27500_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed; \
+  moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.duty_cycle = (moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed <= 100000) ? STD_DUTY_CYCLE : FAST_DUTY_CYCLE_2;  \
+  i2cStart(&MODULE_HAL_I2C_SR_PM42_PM50_PMVDD_EEPROM_GAUGEFRONT, &moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig);  \
   /* ADC */                                                                   \
   adcStart(&MODULE_HAL_ADC_VSYS, NULL);                                       \
   /* PWM */                                                                   \
@@ -444,6 +489,25 @@ extern ROMCONST char* moduleShellPrompt;
   moduleHalPwmBuzzerConfig.period = moduleHalPwmBuzzerConfig.frequency / PKLCS1212E4001_LLD_FREQUENCY_SPEC; \
   pwmStart(&MODULE_HAL_PWM_BUZZER, &moduleHalPwmBuzzerConfig);                \
 }
+#if (BOARD_SENSORRING == BOARD_PROXIMITYSENSOR) || defined(__DOXYGEN__)
+  #define MODULE_INIT_PERIPHERY_COMM_SENSORRING() {                           \
+    moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed = (PCA9544A_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed) ? PCA9544A_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed;  \
+    moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed = (VCNL4020_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed) ? VCNL4020_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm18Pm33GaugeRearConfig.clock_speed;  \
+    moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed = (PCA9544A_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed) ? PCA9544A_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed; \
+    moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed = (VCNL4020_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed) ? VCNL4020_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed; \
+    moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed = (MPR121_LLD_I2C_MAXFREQUENCY < moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed) ? MPR121_LLD_I2C_MAXFREQUENCY : moduleHalI2cSrPm42Pm50PmVddEepromGaugeFrontConfig.clock_speed; \
+  }
+#elif (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L0X) || defined(__DOXYGEN__)
+  #define MODULE_INIT_PERIPHERY_COMM_SENSORRING() {                           \
+    /* TODO */                                                                \
+  }
+#elif (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L1X) || defined(__DOXYGEN__)
+  #define MODULE_INIT_PERIPHERY_COMM_SENSORRING() {                           \
+    /* TODO */                                                                \
+  }
+#else
+  #define MODULE_INIT_PERIPHERY_COMM_SENSORRING() {}
+#endif
 
 /**
  * @brief   Periphery communication interface deinitialization hook.
@@ -454,8 +518,8 @@ extern ROMCONST char* moduleShellPrompt;
   /* ADC */                                                                   \
   adcStop(&MODULE_HAL_ADC_VSYS);                                              \
   /* I2C */                                                                   \
-  i2cStop(&MODULE_HAL_I2C_PROX_PM18_PM33_GAUGEREAR);                          \
-  i2cStop(&MODULE_HAL_I2C_PROX_PM42_PM50_PMVDD_EEPROM_TOUCH_GAUGEFRONT);      \
+  i2cStop(&MODULE_HAL_I2C_SR_PM18_PM33_GAUGEREAR);                            \
+  i2cStop(&MODULE_HAL_I2C_SR_PM42_PM50_PMVDD_EEPROM_GAUGEFRONT);              \
   /* don't stop the serial driver so messages can still be printed */         \
 }
 
@@ -521,11 +585,8 @@ extern ROMCONST char* moduleShellPrompt;
 #include <alld_bq27500.h>
 #include <alld_ina219.h>
 #include <alld_led.h>
-#include <alld_mpr121.h>
-#include <alld_pca9544a.h>
 #include <alld_pklcs1212e4001.h>
 #include <alld_tps62113.h>
-#include <alld_vcnl4020.h>
 
 /**
  * @brief   EEPROM driver.
@@ -583,36 +644,52 @@ extern INA219Driver moduleLldPowerMonitorVio50;
 extern LEDDriver moduleLldStatusLed;
 
 /**
+ * @brief   Step down converter driver.
+ * @note    Although there multiple TPS62113, those are completely identical from driver few (share the same signals).
+ */
+extern TPS62113Driver moduleLldStepDownConverter;
+
+#if (BOARD_SENSORRING == BOARD_PROXIMITYSENSOR) || defined(__DOXYGEN__)
+
+#include <alld_mpr121.h>
+#include <alld_pca9544a.h>
+#include <alld_vcnl4020.h>
+
+/**
  * @brief   Touch sensor driver.
  */
 extern MPR121Driver moduleLldTouch;
 
 /**
- * @brief   I2C multiplexer (I2C 1) driver.
+ * @brief   I2C multiplexer (I2C #1) driver.
  */
 extern PCA9544ADriver moduleLldI2cMultiplexer1;
 
 /**
- * @brief   I2C multiplexer (I2C 2) driver.
+ * @brief   I2C multiplexer (I2C #2) driver.
  */
 extern PCA9544ADriver moduleLldI2cMultiplexer2;
 
 /**
- * @brief   Step down converter driver.
- * @note    Although there multiple TPS62113, those are completely identical from driver few (share the same signals).
- */
-extern TPS62113Driver moduleLldStepDownConverter;
-
-/**
- * @brief   Proximity sensor (I2C 1) driver.
+ * @brief   Proximity sensor (I2C #1) driver.
  */
 extern VCNL4020Driver moduleLldProximity1;
 
 /**
- * @brief   Proximity sensor (I2C 2) driver.
+ * @brief   Proximity sensor (I2C #2) driver.
  */
 extern VCNL4020Driver moduleLldProximity2;
 
+#endif /* BOARD_SENSORRING == BOARD_PROXIMITYSENSOR */
+
+#if (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L0X) || defined(__DOXYGEN__)
+// TODO
+#endif /* BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L0X */
+
+#if (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L1X) || defined(__DOXYGEN__)
+// TODO
+#endif /* BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L1X */
+
 /** @} */
 
 /*===========================================================================*/
@@ -629,12 +706,9 @@ extern VCNL4020Driver moduleLldProximity2;
 #include <ut_alld_bq27500_bq24103a.h>
 #include <ut_alld_ina219.h>
 #include <ut_alld_led.h>
-#include <ut_alld_mpr121.h>
-#include <ut_alld_pca9544a.h>
 #include <ut_alld_pklcs1212e4001.h>
 #include <ut_alld_tps62113.h>
 #include <ut_alld_tps62113_ina219.h>
-#include <ut_alld_vcnl4020.h>
 
 /**
  * @brief   ADC unit test object.
@@ -672,16 +746,6 @@ extern aos_unittest_t moduleUtAlldIna219;
 extern aos_unittest_t moduleUtAlldLed;
 
 /**
- * @brief   MPR121 (touch sensor) unit test object.
- */
-extern aos_unittest_t moduleUtAlldMpr121;
-
-/**
- * @brief   PCA9544A (I2C multiplexer) unit test object.
- */
-extern aos_unittest_t moduleUtAlldPca9544a;
-
-/**
  * @brief   PKLCS1212E4001 (buzzer) unit test object.
  */
 extern aos_unittest_t moduleUtAlldPklcs1212e4001;
@@ -696,11 +760,37 @@ extern aos_unittest_t moduleUtAlldTps62113;
  */
 extern aos_unittest_t moduleUtAlldTps62113Ina219;
 
+#if (BOARD_SENSORRING == BOARD_PROXIMITYSENSOR) || defined(__DOXYGEN__)
+
+#include <ut_alld_mpr121.h>
+#include <ut_alld_pca9544a.h>
+#include <ut_alld_vcnl4020.h>
+
+/**
+ * @brief   MPR121 (touch sensor) unit test object.
+ */
+extern aos_unittest_t moduleUtAlldMpr121;
+
+/**
+ * @brief   PCA9544A (I2C multiplexer) unit test object.
+ */
+extern aos_unittest_t moduleUtAlldPca9544a;
+
 /**
  * @brief   VCNL4020 (proximity sensor) unit test object.
  */
 extern aos_unittest_t moduleUtAlldVcnl4020;
 
+#endif /* BOARD_SENSORRING == BOARD_PROXIMITYSENSOR */
+
+#if (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L0X) || defined(__DOXYGEN__)
+// TODO
+#endif /* BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L0X */
+
+#if (BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L1X) || defined(__DOXYGEN__)
+// TODO
+#endif /* BOARD_SENSORRING == BOARD_DISTANCESENSOR_VL53L1X */
+
 #endif /* AMIROOS_CFG_TESTS_ENABLE == true */
 
 /** @} */
