diff --git a/boards/chronos/board_init.c b/boards/chronos/board_init.c
index 0a24e48e16c76160e96bc1e15c78e75d49926c50..da2ad5ef6c0de94503e7e804a42a6f9885edc1be 100644
--- a/boards/chronos/board_init.c
+++ b/boards/chronos/board_init.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup chronos
+ * @ingroup boards_chronos
  * @{
  */
 
diff --git a/boards/chronos/drivers/battery.c b/boards/chronos/drivers/battery.c
index 2e954d075c03f9cab7f50586bd286ca3ea0db957..6c4ec88b5b8fccb821431f02610f7feb5ced0180 100644
--- a/boards/chronos/drivers/battery.c
+++ b/boards/chronos/drivers/battery.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup chronos
+ * @ingroup boards_chronos
  * @{
  */
 
diff --git a/boards/chronos/drivers/buzzer.c b/boards/chronos/drivers/buzzer.c
index 86d139039d34931380a01ddb9a1450a1dfcf5fa1..120e07a3b531e3e9d5049dcfe93ccc998174a404 100644
--- a/boards/chronos/drivers/buzzer.c
+++ b/boards/chronos/drivers/buzzer.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup chronos
+ * @ingroup boards_chronos
  * @{
  */
 
diff --git a/boards/chronos/drivers/display.c b/boards/chronos/drivers/display.c
index 88f1d977adfe8c458ba1c7b6b405d9484d193a7c..a0071ddc4c8e71d0a33c90f4c490d611b6b6aaae 100644
--- a/boards/chronos/drivers/display.c
+++ b/boards/chronos/drivers/display.c
@@ -34,7 +34,7 @@
  */
 
 /**
- * @ingroup chronos
+ * @ingroup boards_chronos
  * @{
  */
 
diff --git a/boards/chronos/drivers/display_putchar.c b/boards/chronos/drivers/display_putchar.c
index 25a1cd58e0e8a684a466c6a997bb2bf65c836e60..f3f904551b24d9f3f643e3910b5fcc3fe57b3a4b 100644
--- a/boards/chronos/drivers/display_putchar.c
+++ b/boards/chronos/drivers/display_putchar.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup chronos
+ * @ingroup boards_chronos
  * @{
  */
 
diff --git a/boards/chronos/stdio.c b/boards/chronos/stdio.c
index 0de7f23a288aebb34dad4795a0e583551f577e32..f94b9875aaf6071b7216f8ee74344e418cf7e8e0 100644
--- a/boards/chronos/stdio.c
+++ b/boards/chronos/stdio.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup chronos
+ * @ingroup boards_chronos
  * @{
  */
 
diff --git a/boards/common/arduino-mkr/board.c b/boards/common/arduino-mkr/board.c
index c78e8836814c93b1b2e3e077b74bcb40442304f5..35ec380a96ccbdc2153e69727d863bcb2c9adc06 100644
--- a/boards/common/arduino-mkr/board.c
+++ b/boards/common/arduino-mkr/board.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     boards_arduino-mkr-common
+ * @ingroup     boards_common_arduino-mkr
  * @{
  * @file
  * @brief       Board common implementations for the Arduino MKR boards
diff --git a/boards/common/atmega/board.c b/boards/common/atmega/board.c
index 01c58b31ddc336933e02d52924e420c180ae144e..40605c4c2e090ab08c1ecbd0db343b058da44bf4 100644
--- a/boards/common/atmega/board.c
+++ b/boards/common/atmega/board.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     boards_common_atmega
+ * @ingroup     boards_common
  * @{
  *
  * @file
diff --git a/boards/common/msba2/drivers/include/sht11-board.h b/boards/common/msba2/drivers/include/sht11-board.h
index 4ab9808a469e1b978bec436255bb729ca25570fd..7ee0009965815089280778938f45db381b052104 100644
--- a/boards/common/msba2/drivers/include/sht11-board.h
+++ b/boards/common/msba2/drivers/include/sht11-board.h
@@ -10,7 +10,7 @@
 #define SHT11_BOARD_H
 
 /**
- * @ingroup     lpc2387
+ * @ingroup     boards_common_msba2
  * @{
  */
 
diff --git a/boards/common/nrf52xxxdk/board.c b/boards/common/nrf52xxxdk/board.c
index 05dc074ddd56d07efcc179b705a7232fef956060..ceccba5c1a39fff2c429108be52def91f19a2b02 100644
--- a/boards/common/nrf52xxxdk/board.c
+++ b/boards/common/nrf52xxxdk/board.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     boards_common_nrf52xxxdk
+ * @ingroup     boards_common_nrf52
  * @{
  *
  * @file
diff --git a/boards/common/stm32f103c8/include/periph_conf.h b/boards/common/stm32f103c8/include/periph_conf.h
index a151cee375ffea9108f5a45836d6bd18cbb7bbac..08bfaedaba69438ea294f90f2cebf428df10ba0c 100644
--- a/boards/common/stm32f103c8/include/periph_conf.h
+++ b/boards/common/stm32f103c8/include/periph_conf.h
@@ -8,7 +8,9 @@
  */
 
 /**
- * @ingroup     boards_common_stm32f103c8
+ * @defgroup    boards_common_stm32f103c8 STM32F103C8 based boards common
+ * @ingroup     boards_common
+ * @brief       Shared files and configuration for STM32F103C8 based boards
  * @{
  *
  * @file
@@ -260,3 +262,4 @@ static const spi_conf_t spi_config[] = {
 #endif
 
 #endif /* PERIPH_CONF_H */
+/** @} */
diff --git a/boards/frdm-k22f/include/gpio_params.h b/boards/frdm-k22f/include/gpio_params.h
index 65481c1f47741081cd53e8b2ea77ffd827ae3779..8a8f5d6dabc9afc3942b14bbd1d4e9afa5fc2da9 100644
--- a/boards/frdm-k22f/include/gpio_params.h
+++ b/boards/frdm-k22f/include/gpio_params.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup   boards_frdm_k22f
+ * @ingroup   boards_frdm-k22f
  * @{
  *
  * @file
diff --git a/boards/frdm-kw41z/include/adc_params.h b/boards/frdm-kw41z/include/adc_params.h
index 0c4a109e2eb846215d07d84f749b883ee108eb22..3fe2783a3d62789c72a3a9980ebe3d2f1ca235bf 100644
--- a/boards/frdm-kw41z/include/adc_params.h
+++ b/boards/frdm-kw41z/include/adc_params.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup   boards_frdm_kw41z
+ * @ingroup   boards_frdm-kw41z
  * @{
  *
  * @file
diff --git a/boards/frdm-kw41z/include/gpio_params.h b/boards/frdm-kw41z/include/gpio_params.h
index b5c717cd6c506726611fc7e92a9ccb432bfd6206..d02434ac331cf00a6c39763e88b03c6306a16278 100644
--- a/boards/frdm-kw41z/include/gpio_params.h
+++ b/boards/frdm-kw41z/include/gpio_params.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup   boards_frdm_kw41z
+ * @ingroup   boards_frdm-kw41z
  * @{
  *
  * @file
diff --git a/boards/msba2/board_init.c b/boards/msba2/board_init.c
index 4075240712e31d1ea48cb6bbd7d4afe136311a6a..a386a9984c7cca48ea436ce4637f899c161feaca 100644
--- a/boards/msba2/board_init.c
+++ b/boards/msba2/board_init.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup msba2
+ * @ingroup     boards_msba2
  * @{
  */
 
diff --git a/boards/native/board_init.c b/boards/native/board_init.c
index 52cb9aef98e5cd7baabff2c87e2476c91274d715..7b331f08c07ac76f11a08ddb9ee91c148cb9c162 100644
--- a/boards/native/board_init.c
+++ b/boards/native/board_init.c
@@ -7,7 +7,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup native_board
+ * @ingroup boards_native
  * @{
  * @file
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
diff --git a/boards/native/drivers/native-led.c b/boards/native/drivers/native-led.c
index 1b6e5c09c6e5113e1a3cfcafddce1e9a04979657..2bc0e1d6865d1fc600014515aa3273d3f4ad1af8 100644
--- a/boards/native/drivers/native-led.c
+++ b/boards/native/drivers/native-led.c
@@ -9,7 +9,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup native_board
+ * @ingroup boards_native
  * @{
  * @file
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
diff --git a/boards/pba-d-01-kw2x/board.c b/boards/pba-d-01-kw2x/board.c
index 923e6658330077accbeed1c736c518458ed91413..3baf0eb36d8dfba29eff07c38b4a843cbca1250f 100644
--- a/boards/pba-d-01-kw2x/board.c
+++ b/boards/pba-d-01-kw2x/board.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     board_pba-d-01
+ * @ingroup     boards_pba-d-01-kw2x
  * @{
  *
  * @file
diff --git a/boards/remote-pa/board.c b/boards/remote-pa/board.c
index 3f2807d1710aaca79441f66364c961d377cdc39b..879e0816271577279c1ef54303395e1282a1f4ef 100644
--- a/boards/remote-pa/board.c
+++ b/boards/remote-pa/board.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     board_remote-pa
+ * @ingroup     boards_remote-pa
  * @{
  *
  * @file
diff --git a/core/include/rmutex.h b/core/include/rmutex.h
index 880bbf0ea28adbde828639adbbd9e78cec755cd4..6bf99efd7e8ac171f72975e7879dd1a9196a3bae 100644
--- a/core/include/rmutex.h
+++ b/core/include/rmutex.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     core_sync Synchronization
+ * @ingroup     core_sync
  * @brief       Recursive Mutex for thread synchronization
  * @{
  *
diff --git a/core/include/thread.h b/core/include/thread.h
index d59cabb2bff471aca1b1ea5f5652d1afcdd4507f..79ca817a1709a17a4028ba638e6214edb92800f4 100644
--- a/core/include/thread.h
+++ b/core/include/thread.h
@@ -241,7 +241,6 @@ struct _thread {
 
 /**
  * @def THREAD_EXTRA_STACKSIZE_PRINTF
- * @ingroup conf
  * @brief Size of the task's printf stack in bytes
  *
  * @note This value must be defined by the CPU specific implementation, please
diff --git a/core/rmutex.c b/core/rmutex.c
index 983ec83434261f2b05ad7b46d7fb1c82eb87f69f..9438f74f8a65c71d519fe800a7d02beebf2fa671 100644
--- a/core/rmutex.c
+++ b/core/rmutex.c
@@ -7,8 +7,7 @@
  */
 
 /**
- * @ingroup     core_sync Synchronization
- * @brief       Recursive Mutex for thread synchronization
+ * @ingroup     core_sync
  * @{
  *
  * @file
diff --git a/cpu/cc2538/periph/hwrng.c b/cpu/cc2538/periph/hwrng.c
index bc606e19252dee6fa7bedcaee900740cca2692fc..6d0d9a850b7b0e059bc8ecc615e2370919672599 100644
--- a/cpu/cc2538/periph/hwrng.c
+++ b/cpu/cc2538/periph/hwrng.c
@@ -9,7 +9,7 @@
 
 /**
  * @ingroup     cpu_cc2538
- * @ingroup     drivers_periph_hwng
+ * @ingroup     drivers_periph_hwrng
  * @{
  *
  * @file
diff --git a/cpu/cc26x0/include/cc26x0_i2c.h b/cpu/cc26x0/include/cc26x0_i2c.h
index 2dc2e466d588fccb3f39838e23b372c6833e5a9f..60d84a0b24ceaf75cb0c66759b6b1a4643191d97 100644
--- a/cpu/cc26x0/include/cc26x0_i2c.h
+++ b/cpu/cc26x0/include/cc26x0_i2c.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup         cpu_cc26x0_i2c_definitions
+ * @ingroup         cpu_cc26x0_definitions
  * @{
  *
  * @file
diff --git a/cpu/cc26x0/include/cc26x0_ioc.h b/cpu/cc26x0/include/cc26x0_ioc.h
index e481a7b0233b3d0a8e0daad05ec2f1f4c4e1b29c..2a2e5dec6bdba83965f0dede6949d004cf5cc500 100644
--- a/cpu/cc26x0/include/cc26x0_ioc.h
+++ b/cpu/cc26x0/include/cc26x0_ioc.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup         cpu_cc26x0_ioc_definitions
+ * @ingroup         cpu_cc26x0_definitions
  * @{
  *
  * @file
diff --git a/cpu/cc430/cc430-adc.c b/cpu/cc430/cc430-adc.c
index f1a55a7f49da92e183b11db8dadee3de1aa8b697..3f2aa71c1e5b230fe9c6432baa740f622e7eaa9c 100644
--- a/cpu/cc430/cc430-adc.c
+++ b/cpu/cc430/cc430-adc.c
@@ -34,7 +34,7 @@
  * ************************************************************************************************/
 
 /**
- * @ingroup cc430
+ * @ingroup cpu_cc430
  * @{
  */
 
diff --git a/cpu/cc430/doc.txt b/cpu/cc430/doc.txt
index 42c7a50a1bb0bc4c747fcc31faa3dc75747b5d9c..dcce291c4ad8d78b57ee3038ab93fd35a50332d3 100644
--- a/cpu/cc430/doc.txt
+++ b/cpu/cc430/doc.txt
@@ -7,7 +7,7 @@
  */
 
 /**
- * @defgroup    cc430 TI CC430
+ * @defgroup    cpu_cc430 TI CC430
  * @brief       Texas Instruments CC430 specific code
  * @ingroup     cpu
  */
diff --git a/cpu/cc430/include/cc430-rtc.h b/cpu/cc430/include/cc430-rtc.h
index bbe715334634a5021fff1d949f24c861bca509ff..39fb5a58c6f44426a0a688b44254e2718c63e6a9 100644
--- a/cpu/cc430/include/cc430-rtc.h
+++ b/cpu/cc430/include/cc430-rtc.h
@@ -16,7 +16,7 @@ extern "C" {
 #endif
 
 /**
- * @ingroup     cc430
+ * @ingroup     cpu_cc430
  */
 
 /**
diff --git a/cpu/cc430/periph/rtc.c b/cpu/cc430/periph/rtc.c
index 5337c4bf53b2051c5959b6bdfc2b0522c24c9e82..f1efc891f37e8fa0620420168390b6b76a041dce 100644
--- a/cpu/cc430/periph/rtc.c
+++ b/cpu/cc430/periph/rtc.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     cc430
+ * @ingroup     cpu_cc430
  * @ingroup     drivers_periph_rtc
  * @{
  *
diff --git a/cpu/cc430/periph/timer.c b/cpu/cc430/periph/timer.c
index 58f79a8468ce1b300b63144c81579a471234bfa0..9c96c9faeed2d3e5872f2746ab9b991ea4800e3f 100644
--- a/cpu/cc430/periph/timer.c
+++ b/cpu/cc430/periph/timer.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     cc430
+ * @ingroup     cpu_cc430
  * @ingroup     drivers_periph_timer
  * @{
  *
diff --git a/cpu/cortexm_common/panic.c b/cpu/cortexm_common/panic.c
index af158b3de2a59950298e1963d87689560f5862db..f7aa9c6b193f78c36ba2fdccae97788d010ba110 100644
--- a/cpu/cortexm_common/panic.c
+++ b/cpu/cortexm_common/panic.c
@@ -9,7 +9,7 @@
  */
 
 /**
- * @ingroup     cortex-m_common
+ * @ingroup     cpu_cortexm_common
  * @{
  *
  * @file
diff --git a/cpu/efm32/doc.txt b/cpu/efm32/doc.txt
index 86b70aa47d0276f680b83ac61529e09f13a73bec..2983ba3fb97d7b35e76e20fe27ba235b6dda665f 100644
--- a/cpu/efm32/doc.txt
+++ b/cpu/efm32/doc.txt
@@ -1,7 +1,7 @@
 /**
  * @defgroup        cpu_efm32 Silicon Labs EFM32/EFR32/EZR32
  * @ingroup         cpu
- * @brief           Implementation of Silicon Labs's EFM32/EFR32/EZR32 MCUs
+ * @brief           Silicon Labs's EFM32/EFR32/EZR32 MCUs implementation
  *
  * This module contains all code and definitions for the Silicon Labs
  * EFM32/EFR32/EZR32 MCUs. It uses the Gecko SDK (vendor library) for the
@@ -64,3 +64,39 @@
  * The EFM32/EFR32/EZR32 MCUs have support for low-power peripherals. Support
  * is enabled by default, but can be disabled by setting LOW_POWER_ENABLED=0.
  */
+
+/**
+ * @defgroup        cpu_efm32gg Silicon Labs EFM32GG family
+ * @ingroup         cpu_efm32
+ * @brief           Silicon Labs's EFM32GG MCUs family implementation
+ */
+
+/**
+ * @defgroup        cpu_efm32lg Silicon Labs EFM32LG family
+ * @ingroup         cpu_efm32
+ * @brief           Silicon Labs's EFM32LG MCUs family implementation
+ */
+
+/**
+ * @defgroup        cpu_efm32pg1b Silicon Labs EFM32PG1B family
+ * @ingroup         cpu_efm32
+ * @brief           Silicon Labs's EFM32PG1B MCUs family implementation
+ */
+
+/**
+ * @defgroup        cpu_efm32pg12b Silicon Labs EFM32PG12B family
+ * @ingroup         cpu_efm32
+ * @brief           Silicon Labs's EFM32PG12B MCUs family implementation
+ */
+
+/**
+ * @defgroup        cpu_efr32mg1p Silicon Labs EFR32MG1P family
+ * @ingroup         cpu_efm32
+ * @brief           Silicon Labs's EFR32MG1P MCUs family implementation
+ */
+
+/**
+ * @defgroup        cpu_efr32mg12p Silicon Labs EFR32MG12P family
+ * @ingroup         cpu_efm32
+ * @brief           Silicon Labs's EFR32MG12P MCUs family implementation
+ */
\ No newline at end of file
diff --git a/cpu/kinetis/include/vectors_kinetis.h b/cpu/kinetis/include/vectors_kinetis.h
index e546372cbeee25a88a19439850ca9454e09621ac..c14ca73356a45a71a524cfde40c0cd22d490bf2f 100644
--- a/cpu/kinetis/include/vectors_kinetis.h
+++ b/cpu/kinetis/include/vectors_kinetis.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     cpu_k22f
+ * @ingroup     cpu_kinetis
  * @{
  *
  * @file
diff --git a/cpu/kinetis/periph/hwrng.c b/cpu/kinetis/periph/hwrng.c
index 3e409e040eddb180b7ae1162b2121975c3042882..573a80b92c588ae46ec98ebc197b1caa0ef19673 100644
--- a/cpu/kinetis/periph/hwrng.c
+++ b/cpu/kinetis/periph/hwrng.c
@@ -9,7 +9,7 @@
 
 /**
  * @ingroup     cpu_kinetis
- * @ingroup     drivers_periph_hwng
+ * @ingroup     drivers_periph_hwrng
  *
  * @{
  *
diff --git a/cpu/kinetis/periph/i2c.c b/cpu/kinetis/periph/i2c.c
index 4afc994f5858644406e00f3816ead6fad8e43c9b..4470d228f34c7c56cf91b20a2258966af972d044 100644
--- a/cpu/kinetis/periph/i2c.c
+++ b/cpu/kinetis/periph/i2c.c
@@ -9,7 +9,7 @@
  */
 
 /**
- * @ingroup     cpu_kinetis_commo
+ * @ingroup     cpu_kinetis
  * @ingroup     drivers_periph_i2c
  *
  * @note        This driver only implements the 7-bit addressing master mode.
diff --git a/cpu/kinetis/periph/mcg.c b/cpu/kinetis/periph/mcg.c
index 89544fdccaa81d1ab1ed9e89ff8fd38ae6ccdcf5..e8c66f434396bf6040748c1004836f95cf42000b 100644
--- a/cpu/kinetis/periph/mcg.c
+++ b/cpu/kinetis/periph/mcg.c
@@ -9,7 +9,7 @@
 
 /**
  * @ingroup     cpu_kinetis
- * @ingroup     drivers_periph_mcg
+ * @ingroup     cpu_kinetis_mcg
  * @{
  *
  * @file
diff --git a/cpu/kinetis/periph/wdog.c b/cpu/kinetis/periph/wdog.c
index e0c995678a893eb16bac30543f6f9c01330f619a..816b5bd7669cda93000ee2cff3affce41afc50e2 100644
--- a/cpu/kinetis/periph/wdog.c
+++ b/cpu/kinetis/periph/wdog.c
@@ -9,7 +9,7 @@
 
 /**
  * @ingroup     cpu_kinetis
- * @ingroup     drivers_periph_watchdog
+ * @ingroup     cpu_kinetis_wdog
  *
  * @{
  *
diff --git a/cpu/lpc2387/cpu.c b/cpu/lpc2387/cpu.c
index 930fbe03904ae0b0cf9731072fc371bf51a19a98..91e61e58b48bf4cfc2b75f2120d6eb00e106c748 100644
--- a/cpu/lpc2387/cpu.c
+++ b/cpu/lpc2387/cpu.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     lpc2387
+ * @ingroup     cpu_lpc2387
  * @{
  */
 
diff --git a/cpu/lpc2387/doc/lpc2387.doc b/cpu/lpc2387/doc/lpc2387.doc
index 7a7a7de59ecf00219b0c58d382f795bf1347cb7a..0fc952868f7688eb45a34ce18a3e7775708f1fbf 100644
--- a/cpu/lpc2387/doc/lpc2387.doc
+++ b/cpu/lpc2387/doc/lpc2387.doc
@@ -1,6 +1,6 @@
 /**
  * @defgroup lpc2387_intro LPC2387 Introduction
- * @ingroup lpc2387
+ * @ingroup cpu_lpc2387
 
 <h2>First steps</h2>
 \li See the manual for toolchain and ide setup
diff --git a/cpu/lpc2387/include/cpu.h b/cpu/lpc2387/include/cpu.h
index 289dc14b139b79228be11044c439d501bc767858..7a063cfb4b822e089c150c079af0f9fc69237135 100644
--- a/cpu/lpc2387/include/cpu.h
+++ b/cpu/lpc2387/include/cpu.h
@@ -10,7 +10,7 @@
 #define CPU_H
 
 /**
- * @defgroup    lpc2387     NXP LPC2387
+ * @defgroup    cpu_lpc2387     NXP LPC2387
  * @ingroup     cpu
  * @brief       NXP LPC2387 specific code
  * @{
diff --git a/cpu/lpc2387/include/cpu_conf.h b/cpu/lpc2387/include/cpu_conf.h
index 15696ef3a2ce3f2217972921107b1d9425136505..02b22435cf942e3f089df76f2d45efde6a44963f 100644
--- a/cpu/lpc2387/include/cpu_conf.h
+++ b/cpu/lpc2387/include/cpu_conf.h
@@ -15,8 +15,7 @@ extern "C" {
 #endif
 
 /**
- * @ingroup     conf
- * @ingroup     lpc2387
+ * @ingroup     cpu_lpc2387
  *
  * @{
  */
diff --git a/cpu/lpc2387/lpc23xx-iap.c b/cpu/lpc2387/lpc23xx-iap.c
index 6bd41dce6a222adc91896859254b7517369028ed..7f7a8921433ea9d9894783dfd679e2252bea89b7 100644
--- a/cpu/lpc2387/lpc23xx-iap.c
+++ b/cpu/lpc2387/lpc23xx-iap.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup lpc2387
+ * @ingroup cpu_lpc2387
  * @{
  */
 
diff --git a/cpu/mips32r2_common/include/eic_irq.h b/cpu/mips32r2_common/include/eic_irq.h
index dfb5b6e4944e6819d444261909dde03b25ccdb02..27c606def435feec8c37d74b84c5bab24df6540a 100644
--- a/cpu/mips32r2_common/include/eic_irq.h
+++ b/cpu/mips32r2_common/include/eic_irq.h
@@ -7,7 +7,9 @@
  */
 
 /**
- * @ingroup     cpu_mips32r2_commom
+ * @defgroup        cpu_mips32r2_common Imagination Technologies MIPS32R2 Common
+ * @ingroup         cpu
+ * @brief           Imagination Technologies MIPS32R2 Common implementation
  * @{
  *
  * @file
diff --git a/cpu/mips32r2_common/newlib_syscalls_mips_uhi/syscalls.c b/cpu/mips32r2_common/newlib_syscalls_mips_uhi/syscalls.c
index 4e724bb92b7fea6e770d2816caf1c8c04ca947a1..3f0d7e49a6b0670e628223a0d3975039581fe5e2 100644
--- a/cpu/mips32r2_common/newlib_syscalls_mips_uhi/syscalls.c
+++ b/cpu/mips32r2_common/newlib_syscalls_mips_uhi/syscalls.c
@@ -7,7 +7,7 @@
  */
 
 /**
-  * @ingroup sys_newlib
+  * @ingroup    sys_newlib
   * @{
   *
   * @file
diff --git a/cpu/mips32r2_generic/include/cpu.h b/cpu/mips32r2_generic/include/cpu.h
index 6c039938ff2c88d896fd74f477d11bd7c40bc224..8b910ba5850c41486d3d08bcf10aa11df4b965f0 100644
--- a/cpu/mips32r2_generic/include/cpu.h
+++ b/cpu/mips32r2_generic/include/cpu.h
@@ -7,9 +7,9 @@
  */
 
 /**
- * @defgroup    cpu_mips32r2_generic Imagination Technologies MIPS32R2 Common
+ * @defgroup    cpu_mips32r2_generic Imagination Technologies MIPS32R2 generic
  * @ingroup     cpu
- * @brief       Imagination Technologies MIPS32R2 common
+ * @brief       Imagination Technologies MIPS32R2 generic
  * @{
  *
  * @file
diff --git a/cpu/msp430fxyz/include/periph_cpu.h b/cpu/msp430fxyz/include/periph_cpu.h
index 9d1e3319f45d6603508bd6328049adfc2a9fa874..36bf7e9e3f598e3959348417672e6042011b6d08 100644
--- a/cpu/msp430fxyz/include/periph_cpu.h
+++ b/cpu/msp430fxyz/include/periph_cpu.h
@@ -7,7 +7,9 @@
  */
 
 /**
- * @ingroup         cpu_msp430fxyz
+ * @defgroup    cpu_msp430fxyz TI MSP430F
+ * @ingroup     cpu
+ * @brief       Texas Instruments MSP430F family specific code
  * @{
  *
  * @file
diff --git a/cpu/native/async_read.c b/cpu/native/async_read.c
index 2b517a9d515ffc183ca44a70ffce8557b585ab40..ddbdd048e3cf1edaa320ae69077b82a98731b468 100644
--- a/cpu/native/async_read.c
+++ b/cpu/native/async_read.c
@@ -11,7 +11,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup native_cpu
+ * @ingroup cpu_native
  * @{
  * @file
  * @author  Takuo Yonezawa <Yonezawa-T2@mail.dnp.co.jp>
diff --git a/cpu/native/include/async_read.h b/cpu/native/include/async_read.h
index 620170d57650de5070035f030a591c360a0bfca7..fa76d3b0a48d2a31e819d2b998f5607a38840ff6 100644
--- a/cpu/native/include/async_read.h
+++ b/cpu/native/include/async_read.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @{
  *
  * @file
diff --git a/cpu/native/include/cpu.h b/cpu/native/include/cpu.h
index f838a76cfe1311d254b338f830b555045877a5d3..b1641642c46b356c18ef6c36ee82b1129c4fbc1f 100644
--- a/cpu/native/include/cpu.h
+++ b/cpu/native/include/cpu.h
@@ -7,8 +7,8 @@
  */
 
 /**
- * @ingroup arch
- * @defgroup    native_cpu  Native
+ * @ingroup cpu
+ * @defgroup    cpu_native  Native
  * @brief       Native CPU specific code
  * @details     The native CPU uses system calls to simulate hardware access.
  * @ingroup     cpu
diff --git a/cpu/native/include/cpu_conf.h b/cpu/native/include/cpu_conf.h
index 16f305f2484870a00d750bfb8f98764c2db84190..c801eafb076bf05e32494b38d7250a5dee0a9d50 100644
--- a/cpu/native/include/cpu_conf.h
+++ b/cpu/native/include/cpu_conf.h
@@ -7,7 +7,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup arch
+ * @ingroup cpu_native
  * @{
  * @file
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
diff --git a/cpu/native/include/native_internal.h b/cpu/native/include/native_internal.h
index 9016acf1538ad3037982113ea074236c23942251..05cb913a24174335c6ceac04f09d335923084085 100644
--- a/cpu/native/include/native_internal.h
+++ b/cpu/native/include/native_internal.h
@@ -11,7 +11,7 @@
  */
 
 /**
- * @addtogroup    native_cpu
+ * @ingroup    cpu_native
  * @{
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
  */
diff --git a/cpu/native/include/netdev_tap.h b/cpu/native/include/netdev_tap.h
index bba108814ac966bdfebb89a2fa359f8f936af982..8a8109afe68e8b5a88baca3f9ca64ffbbc440f00 100644
--- a/cpu/native/include/netdev_tap.h
+++ b/cpu/native/include/netdev_tap.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     netdev
+ * @ingroup     drivers_netdev
  * @brief       Low-level ethernet driver for native tap interfaces
  * @{
  *
diff --git a/cpu/native/include/netdev_tap_params.h b/cpu/native/include/netdev_tap_params.h
index 4fe6e1af40ab0874131254181a720e76077401fb..a588ab921bbc79febc8a41e9dd996a3a33d7076c 100644
--- a/cpu/native/include/netdev_tap_params.h
+++ b/cpu/native/include/netdev_tap_params.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     netdev
+ * @ingroup     drivers_netdev
  * @brief
  * @{
  *
diff --git a/cpu/native/include/periph_conf.h b/cpu/native/include/periph_conf.h
index 9481d72dd5ac269c9780731d09f097ec2f10766d..7eabc76c0dc4dddb1041dc9ad59aa110fe11a716 100644
--- a/cpu/native/include/periph_conf.h
+++ b/cpu/native/include/periph_conf.h
@@ -7,7 +7,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup native_cpu
+ * @ingroup cpu_native
  * @{
  * @file
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
diff --git a/cpu/native/include/periph_cpu.h b/cpu/native/include/periph_cpu.h
index 20ec4f65ae1048bdd7f4a12bf638311bf6ceb065..6141790d6b8b83a879dd3373ab1bde95dde70853 100644
--- a/cpu/native/include/periph_cpu.h
+++ b/cpu/native/include/periph_cpu.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup         native_cpu
+ * @ingroup         cpu_native
  * @{
  *
  * @file
diff --git a/cpu/native/include/tty_uart.h b/cpu/native/include/tty_uart.h
index 880104b2d6ed84b0dc73a23e9be43ed323e0a2e0..aaac459a72f6da092b6d1100de17cd885ba530c1 100644
--- a/cpu/native/include/tty_uart.h
+++ b/cpu/native/include/tty_uart.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @{
  *
  * @file
diff --git a/cpu/native/irq_cpu.c b/cpu/native/irq_cpu.c
index 6f1093e1b170e6abe80f7d144f60ad0ebbe2475c..9e265ba6094c3f46e5d52c7dc076932b5a9d0202 100644
--- a/cpu/native/irq_cpu.c
+++ b/cpu/native/irq_cpu.c
@@ -7,8 +7,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup native_cpu
- * @ingroup irq
+ * @ingroup cpu_native
  * @{
  * @file
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
diff --git a/cpu/native/native_cpu.c b/cpu/native/native_cpu.c
index cb9ffbceea335973be83235b5fa0e4ebca0cba6e..2629e55df0670a18307205bccbae51e0b353615f 100644
--- a/cpu/native/native_cpu.c
+++ b/cpu/native/native_cpu.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup native_cpu
+ * @ingroup cpu_native
  * @{
  *
  * @file
diff --git a/cpu/native/netdev_tap/netdev_tap.c b/cpu/native/netdev_tap/netdev_tap.c
index 616fd32ad11a4a73e96ff1ef2840694340b4ae33..6e81fbe07d12f335e3eb23f365d83326be6ca1d7 100644
--- a/cpu/native/netdev_tap/netdev_tap.c
+++ b/cpu/native/netdev_tap/netdev_tap.c
@@ -10,7 +10,7 @@
  */
 
 /*
- * @ingroup netdev
+ * @ingroup drivers_netdev
  * @{
  * @brief   Low-level ethernet driver for tap interfaces
  * @author  Kaspar Schleiser <kaspar@schleiser.de>
diff --git a/cpu/native/osx-libc-extra/malloc.h b/cpu/native/osx-libc-extra/malloc.h
index 681341c433d92d49a4ab7f8b8008370c07b597f6..ea819c4618d0426ebdc678eb551aa01b43a17144 100644
--- a/cpu/native/osx-libc-extra/malloc.h
+++ b/cpu/native/osx-libc-extra/malloc.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  *
  * @brief       Malloc header for use with native on OSX since there is no
  *              malloc.h file in the standard include path.
diff --git a/cpu/native/panic.c b/cpu/native/panic.c
index db01b54ce402badf4a944bba20ee0cb7425a8430..3b3b633f194bce10612168f8c294f90a8aff3a16 100644
--- a/cpu/native/panic.c
+++ b/cpu/native/panic.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup native_cpu
+ * @ingroup cpu_native
  * @{
  *
  * @file
diff --git a/cpu/native/periph/gpio.c b/cpu/native/periph/gpio.c
index 8633a4557d9b5f018df815ba36cc4431806acb10..156b2f42011b0e1e6a7d7d4bdf7604411a5c3f88 100644
--- a/cpu/native/periph/gpio.c
+++ b/cpu/native/periph/gpio.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @ingroup     drivers_periph_gpio
  * @{
  *
diff --git a/cpu/native/periph/hwrng.c b/cpu/native/periph/hwrng.c
index 778209e7e5bb33b196c1acd07a5131fd42da1980..6c0f3c368db91d8c429d1852753c219645a3ae35 100644
--- a/cpu/native/periph/hwrng.c
+++ b/cpu/native/periph/hwrng.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @ingroup     drivers_periph_hwrng
  * @{
  *
diff --git a/cpu/native/periph/pm.c b/cpu/native/periph/pm.c
index fba7a9e08a4b2bda1d373641cb6dae56b7b2e5dc..1b3b23c1a55a3046dea82541e002f7777211ca4e 100644
--- a/cpu/native/periph/pm.c
+++ b/cpu/native/periph/pm.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @ingroup     drivers_periph_pm
  * @{
  *
diff --git a/cpu/native/periph/qdec.c b/cpu/native/periph/qdec.c
index 618a1a1d7cbf5c2f4ba6a87d5a601675c5f49ea0..c374570b2510e6407a1b8ff16d4e441bcddc6407 100644
--- a/cpu/native/periph/qdec.c
+++ b/cpu/native/periph/qdec.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @ingroup     drivers_periph_qdec
  * @{
  *
diff --git a/cpu/native/periph/timer.c b/cpu/native/periph/timer.c
index 396fa0e06cd24be953adf8c67da602d906971ced..6cf95576835526997a2f841a4ffe241fc6c5326f 100644
--- a/cpu/native/periph/timer.c
+++ b/cpu/native/periph/timer.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @ingroup     drivers_periph_timer
  * @{
  *
diff --git a/cpu/native/periph/uart.c b/cpu/native/periph/uart.c
index 7b58571706111be4aa0bcff7f82774f1b41b5001..f1f5fe925ca10ca9c6bb3d582168a91951e23ec6 100644
--- a/cpu/native/periph/uart.c
+++ b/cpu/native/periph/uart.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @ingroup     drivers_periph_uart
  * @{
  *
diff --git a/cpu/native/startup.c b/cpu/native/startup.c
index 449f781dba713f4a7816f0c813f2a112b4c9dd56..620b8fa48d8f97cb9e9b409b6459c28327811d10 100644
--- a/cpu/native/startup.c
+++ b/cpu/native/startup.c
@@ -8,7 +8,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup arch
+ * @ingroup cpu_native
  * @{
  * @file
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
diff --git a/cpu/native/syscalls.c b/cpu/native/syscalls.c
index 483d4a796878efe845a4b5ea4211bd00f98eb811..3ec388180d84d0919bbcb4c1c5b26025dab4437d 100644
--- a/cpu/native/syscalls.c
+++ b/cpu/native/syscalls.c
@@ -10,7 +10,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup native_cpu
+ * @ingroup cpu_native
  * @{
  * @file
  * @author  Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
diff --git a/cpu/native/vfs/native_vfs.c b/cpu/native/vfs/native_vfs.c
index d3e18cc394cad121811a4e462548127de02a9298..e9aa0678f90ac7f637f4260d65d0ad9afca604fa 100644
--- a/cpu/native/vfs/native_vfs.c
+++ b/cpu/native/vfs/native_vfs.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     native_cpu
+ * @ingroup     cpu_native
  * @{
  *
  * @file
diff --git a/cpu/nrf51/cpu.c b/cpu/nrf51/cpu.c
index 76316c845df0d86badb10a61deeba03621a1838c..5413305854979659fa4b9e8474f64f2b574a2bc3 100644
--- a/cpu/nrf51/cpu.c
+++ b/cpu/nrf51/cpu.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     cpu_nrf51822
+ * @ingroup     cpu_nrf51
  * @{
  *
  * @file
diff --git a/cpu/nrf51/include/cpu_conf.h b/cpu/nrf51/include/cpu_conf.h
index b5948685a1ab098120773ad288187dd226450da1..1f49e12ef41b1de9237754fe34957590b2ba3c0f 100644
--- a/cpu/nrf51/include/cpu_conf.h
+++ b/cpu/nrf51/include/cpu_conf.h
@@ -7,7 +7,9 @@
  */
 
 /**
- * @ingroup         cpu_nrf51822
+ * @defgroup        cpu_nrf51 Nordic nRF51 MCU
+ * @ingroup         cpu
+ * @brief           Nordic nRF51 family of CPUs
  * @{
  *
  * @file
diff --git a/cpu/nrf51/vectors.c b/cpu/nrf51/vectors.c
index 57eeb18c45c1f922cc19d43b521d8c312536eeb9..a20debc3d3cf2c41599e04dd412e89221a7d8bae 100644
--- a/cpu/nrf51/vectors.c
+++ b/cpu/nrf51/vectors.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     cpu_nrf51822
+ * @ingroup     cpu_nrf51
  * @{
  *
  * @file
diff --git a/cpu/nrf52/include/cpu_conf.h b/cpu/nrf52/include/cpu_conf.h
index 32d9b9da65270e3aae7ffb48da775712c8c1d689..b882321cebc5b05bedde95ea58b5bafd9abd158d 100644
--- a/cpu/nrf52/include/cpu_conf.h
+++ b/cpu/nrf52/include/cpu_conf.h
@@ -7,7 +7,9 @@
  */
 
 /**
- * @ingroup     cpu_nrf52
+ * @defgroup        cpu_nrf52 Nordic nRF52 MCU
+ * @ingroup         cpu
+ * @brief           Nordic nRF52 family of CPUs
  * @{
  *
  * @file
diff --git a/cpu/sam3/vectors.c b/cpu/sam3/vectors.c
index c9dd3c1bb34f384fff29b8720f15281e5ef30019..6c38e400cc64d6f0e6c257bc5b9b8f4fd624a5fd 100644
--- a/cpu/sam3/vectors.c
+++ b/cpu/sam3/vectors.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     cpu_sam3x8e
+ * @ingroup     cpu_sam3
  * @{
  *
  * @file
diff --git a/cpu/sam_common/ldscripts/sam3x8e.ld b/cpu/sam_common/ldscripts/sam3x8e.ld
index 6d3d137c417d31328fbdb118f2aa6ba89fc89280..0a9d6ddc8bf0d52b79544c30f5eac58f9f8bc1f6 100644
--- a/cpu/sam_common/ldscripts/sam3x8e.ld
+++ b/cpu/sam_common/ldscripts/sam3x8e.ld
@@ -7,7 +7,7 @@
  */
 
 /**
- * @addtogroup      cpu_sam3x8e
+ * @addtogroup      cpu_sam3
  * @{
  *
  * @file
diff --git a/dist/tools/doccheck/check.sh b/dist/tools/doccheck/check.sh
index 795c8b239fae77e39a5b7f1e587e48a904d31704..f7fa7360e346b250f7b750231b55b36380a1ce61 100755
--- a/dist/tools/doccheck/check.sh
+++ b/dist/tools/doccheck/check.sh
@@ -64,7 +64,8 @@ UNDEFINED_GROUPS_PRINT=$( \
 if [ -n "${UNDEFINED_GROUPS}" ]
 then
     COUNT=$(echo "${UNDEFINED_GROUPS}" | wc -l)
-    echo -ne "${CWARN}WARNING${CRESET} "
+    echo -ne "${CERROR}ERROR${CRESET} "
     echo -e "There are ${CWARN}${COUNT}${CRESET} undefined Doxygen groups:"
     echo "${UNDEFINED_GROUPS_PRINT}"
+    exit 2
 fi
diff --git a/drivers/adcxx1c/adcxx1c.c b/drivers/adcxx1c/adcxx1c.c
index 33d2b8fe07c457e316004a66d4cf26e07263387f..e56afc58ed6675d37dda0c7cc3e8bd7ffed5df90 100644
--- a/drivers/adcxx1c/adcxx1c.c
+++ b/drivers/adcxx1c/adcxx1c.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     drivers_adcxx1x
+ * @ingroup     drivers_adcxx1c
  * @{
  *
  * @file
diff --git a/drivers/adcxx1c/include/adcxx1c_params.h b/drivers/adcxx1c/include/adcxx1c_params.h
index ab2e4e4dbb998ab2f669627de6fcced165474aa3..15501943d5ef35d3e9502ea80a6dd05ce6c44d99 100644
--- a/drivers/adcxx1c/include/adcxx1c_params.h
+++ b/drivers/adcxx1c/include/adcxx1c_params.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     drivers_adcxx1x
+ * @ingroup     drivers_adcxx1c
  * @{
  *
  * @file
diff --git a/drivers/adcxx1c/include/adcxx1c_regs.h b/drivers/adcxx1c/include/adcxx1c_regs.h
index 226b04b69f24814cd1a7b77a414638aff5668841..0ca348c7661ee6683428857b8668323da9964137 100644
--- a/drivers/adcxx1c/include/adcxx1c_regs.h
+++ b/drivers/adcxx1c/include/adcxx1c_regs.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     drivers_adcxx1x
+ * @ingroup     drivers_adcxx1c
  * @{
  *
  * @file
diff --git a/drivers/include/adcxx1c.h b/drivers/include/adcxx1c.h
index 46c5fd47b0fc8fb0381b724289177432d4b699b4..8d3fdfa1c26e2d464c3a9862a2108beae9059ef4 100644
--- a/drivers/include/adcxx1c.h
+++ b/drivers/include/adcxx1c.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @defgroup   drivers_adcxx1x ADCXX1C ADC device driver
+ * @defgroup   drivers_adcxx1c ADCXX1C ADC device driver
  * @ingroup    drivers_sensors
  * @brief      I2C Analog-to-Digital Converter device driver
  *
diff --git a/drivers/include/net/netdev/eth.h b/drivers/include/net/netdev/eth.h
index 973ae2c66e4fc613f39ed97099d9030110140a5c..318a1897f5d99404357e5cb770e4af4b7afdfa88 100644
--- a/drivers/include/net/netdev/eth.h
+++ b/drivers/include/net/netdev/eth.h
@@ -7,6 +7,7 @@
  */
 
 /**
+ * @defgroup    drivers_netdev_eth Ethernet drivers
  * @ingroup     drivers_netdev_api
  * @{
  *
diff --git a/drivers/include/net/netdev/ieee802154.h b/drivers/include/net/netdev/ieee802154.h
index c98abbd8657dc8babb94aba03f300e60ffe3ccad..b9bcd66416bb79f8e8d092258903ce36b7d6e3bd 100644
--- a/drivers/include/net/netdev/ieee802154.h
+++ b/drivers/include/net/netdev/ieee802154.h
@@ -7,7 +7,8 @@
  */
 
 /**
- * @ingroup drivers_netdev_api
+ * @defgroup    drivers_netdev_ieee802154 802.15.4 radio drivers
+ * @ingroup     drivers_netdev_api
  * @brief
  * @{
  *
diff --git a/drivers/include/tja1042.h b/drivers/include/tja1042.h
index 51dde0cd4dc257568df2e5436e1cb5d91b98e07d..6061f2472f7c05828c20644a9f3b4341369dba56 100644
--- a/drivers/include/tja1042.h
+++ b/drivers/include/tja1042.h
@@ -9,7 +9,7 @@
 /**
  * @defgroup    drivers_tja1042 TJA1042
  * @ingroup     drivers_can
- * @ingroup     trx_can
+ * @ingroup     drivers_can_trx
  * @brief       tja1042 High Speed CAN transceiver driver
  *
  * @{
diff --git a/drivers/isl29020/include/isl29020-internal.h b/drivers/isl29020/include/isl29020-internal.h
index 98e702423147d77ad4d45640b4b2fedf58e183f3..6e9905b60857540caff0d1d7523a1330220e20cb 100644
--- a/drivers/isl29020/include/isl29020-internal.h
+++ b/drivers/isl29020/include/isl29020-internal.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     driver_isl29020
+ * @ingroup     drivers_isl29020
  * @{
  *
  * @file
diff --git a/drivers/kw2xrf/include/kw2xrf_tm.h b/drivers/kw2xrf/include/kw2xrf_tm.h
index 0408deee5061a745dcf8f3f65dbfeea20323d07a..8e7f8f5e982c88d02ae3ac3f824c610216948744 100644
--- a/drivers/kw2xrf/include/kw2xrf_tm.h
+++ b/drivers/kw2xrf/include/kw2xrf_tm.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     tests_kw2xrf
+ * @ingroup     drivers_kw2xrf
  * @{
  *
  * @file
diff --git a/drivers/lsm303dlhc/include/lsm303dlhc-internal.h b/drivers/lsm303dlhc/include/lsm303dlhc-internal.h
index d25ab71a264fe7140a48b0e362b5cff8eaeca3a4..158460de1530a37f97c4f250c1cfeeb630ed2d15 100644
--- a/drivers/lsm303dlhc/include/lsm303dlhc-internal.h
+++ b/drivers/lsm303dlhc/include/lsm303dlhc-internal.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     driver_lsm303dlhc
+ * @ingroup     drivers_lsm303dlhc
  *
  * @{
  *
diff --git a/drivers/mma8x5x/include/mma8x5x_regs.h b/drivers/mma8x5x/include/mma8x5x_regs.h
index ec290c48e97a36ef89d3614b8b66bc4e8550c259..a08648c6bbc16c0d9b43c319c0ec246ffd86a8d9 100644
--- a/drivers/mma8x5x/include/mma8x5x_regs.h
+++ b/drivers/mma8x5x/include/mma8x5x_regs.h
@@ -9,7 +9,7 @@
  */
 
 /**
- * @ingroup     drivers_mma8652
+ * @ingroup     drivers_mma8x5x
  * @{
  *
  * @file
diff --git a/drivers/mma8x5x/mma8x5x_saul.c b/drivers/mma8x5x/mma8x5x_saul.c
index 1998b1efb2e698bbe347076f2be90b1aabb0c90b..c9933855540dba1429bba3590ebfa13f744713c0 100644
--- a/drivers/mma8x5x/mma8x5x_saul.c
+++ b/drivers/mma8x5x/mma8x5x_saul.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     driver_mma8x5x
+ * @ingroup     drivers_mma8x5x
  * @{
  *
  * @file
diff --git a/drivers/netdev_eth/netdev_eth.c b/drivers/netdev_eth/netdev_eth.c
index 550bc049b14714a124f596b3812468ac6addc1f2..ec54dc0cc8ae15eecda8def83240813a78557736 100644
--- a/drivers/netdev_eth/netdev_eth.c
+++ b/drivers/netdev_eth/netdev_eth.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     driver_netdev_eth
+ * @ingroup     drivers_netdev_eth
  * @{
  *
  * @file
diff --git a/drivers/netdev_ieee802154/netdev_ieee802154.c b/drivers/netdev_ieee802154/netdev_ieee802154.c
index eb5a90f7e3a54d20c588ab3ea8ee8652a07702b4..08733cd3af0c934354c112f29896801ec63cf6b2 100644
--- a/drivers/netdev_ieee802154/netdev_ieee802154.c
+++ b/drivers/netdev_ieee802154/netdev_ieee802154.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     driver_netdev_ieee802154
+ * @ingroup     drivers_netdev_ieee802154
  * @{
  *
  * @file
diff --git a/drivers/nvram/nvram-vfs.c b/drivers/nvram/nvram-vfs.c
index 9118ae60d5274b2e5a50ca0cf52dd6620dba2162..bcaa0642045e3d709203055ac3e56becc82be9e4 100644
--- a/drivers/nvram/nvram-vfs.c
+++ b/drivers/nvram/nvram-vfs.c
@@ -16,7 +16,7 @@
 #include "vfs.h"
 
 /**
- * @ingroup     nvram
+ * @ingroup     drivers_nvram
  * @{
  *
  * @file
diff --git a/drivers/nvram_spi/nvram-spi.c b/drivers/nvram_spi/nvram-spi.c
index f9286cae029ee85e53a6c3121512f6f1a19c46d2..4b0e72712254f5c6da9cdd45f6f9ea9c140d8952 100644
--- a/drivers/nvram_spi/nvram-spi.c
+++ b/drivers/nvram_spi/nvram-spi.c
@@ -17,7 +17,7 @@
 #include "xtimer.h"
 
 /**
- * @ingroup     nvram
+ * @ingroup     drivers_nvram
  * @{
  *
  * @file
diff --git a/examples/timer_periodic_wakeup/main.c b/examples/timer_periodic_wakeup/main.c
index c9fffa1ca48df9dfc93f6a4a20889fc048dfc3a2..a1c91506cf0a70b950bdc159588f9f36ba53101a 100644
--- a/examples/timer_periodic_wakeup/main.c
+++ b/examples/timer_periodic_wakeup/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     xtimer_examples
+ * @ingroup     examples
  * @{
  *
  * @file
diff --git a/pkg/fatfs/fatfs_diskio/mtd/include/fatfs_diskio_mtd.h b/pkg/fatfs/fatfs_diskio/mtd/include/fatfs_diskio_mtd.h
index a81ccfd2adcf32782c67112898f847347f0adebf..e4cb69a1d7701adb671308425b2ba204636ef1a1 100644
--- a/pkg/fatfs/fatfs_diskio/mtd/include/fatfs_diskio_mtd.h
+++ b/pkg/fatfs/fatfs_diskio/mtd/include/fatfs_diskio_mtd.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     sys_fatfs_diskio
+ * @ingroup     pkg_fatfs
  * @brief
  * @{
  *
diff --git a/pkg/fatfs/fatfs_diskio/mtd/mtd_diskio.c b/pkg/fatfs/fatfs_diskio/mtd/mtd_diskio.c
index 5e072397545cd3452595d8e32542c47074e07213..1930038daacce4877dd3db806cc6a5c7c4e4776a 100644
--- a/pkg/fatfs/fatfs_diskio/mtd/mtd_diskio.c
+++ b/pkg/fatfs/fatfs_diskio/mtd/mtd_diskio.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup  sys_fatfs_diskio
+ * @ingroup  pkg_fatfs
  * @{
  *
  * @file
diff --git a/pkg/fatfs/fatfs_vfs/fatfs_vfs.c b/pkg/fatfs/fatfs_vfs/fatfs_vfs.c
index 5234fc1563aaef10bf21868796aed3d17ec90fa5..a41168d1a99bb827d467b24dc400c88e6b19a459 100644
--- a/pkg/fatfs/fatfs_vfs/fatfs_vfs.c
+++ b/pkg/fatfs/fatfs_vfs/fatfs_vfs.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     fs
+ * @ingroup     pkg_fatfs
  * @{
  *
  * @file
diff --git a/pkg/lwip/contrib/doc.txt b/pkg/lwip/contrib/doc.txt
index d11a87565bf8bc93487ae368de9a516a6b6c698b..9ddba3fdb534de61fdbb50a50eeb2642bf27a87e 100644
--- a/pkg/lwip/contrib/doc.txt
+++ b/pkg/lwip/contrib/doc.txt
@@ -1,3 +1,3 @@
 /**
- * @defgroup lwip_contrib   RIOT lwIP port
+ * @defgroup pkg_lwip_contrib   RIOT lwIP port
  */
diff --git a/pkg/lwip/include/arch/cc.h b/pkg/lwip/include/arch/cc.h
index d31d7d8f710bf9f9265a484869aab6f5048b64e4..b79ecb287e3cc13c066af0b89a11d90261ed04a3 100644
--- a/pkg/lwip/include/arch/cc.h
+++ b/pkg/lwip/include/arch/cc.h
@@ -7,8 +7,8 @@
  */
 
 /**
- * @defgroup    lwip_arch_cc    Compiler and processor description
- * @ingroup     lwip
+ * @defgroup    pkg_lwip_arch_cc    Compiler and processor description
+ * @ingroup     pkg_lwip
  * @brief       Describes compiler and processor to lwIP
  * @{
  *
diff --git a/pkg/lwip/include/arch/sys_arch.h b/pkg/lwip/include/arch/sys_arch.h
index aad33a1b75bf0392b59a6be3c8466ddbfe8a3b03..ed4fd467af2be1dca588377d3aabb331a3b4c2b8 100644
--- a/pkg/lwip/include/arch/sys_arch.h
+++ b/pkg/lwip/include/arch/sys_arch.h
@@ -7,8 +7,8 @@
  */
 
 /**
- * @defgroup    lwip_arch_sys_arch Architecture depentent definitions
- * @ingroup     lwip
+ * @defgroup    pkg_lwip_arch_sys_arch Architecture depentent definitions
+ * @ingroup     pkg_lwip
  * @brief       Semaphores and mailboxes.
  * @{
  *
diff --git a/pkg/lwip/include/lwipopts.h b/pkg/lwip/include/lwipopts.h
index 0fcfc7c8a700d26b53668c985d1e7396942354c5..3eab2e3c95a588d9b7c31f7c815e2e3b26e6a8f8 100644
--- a/pkg/lwip/include/lwipopts.h
+++ b/pkg/lwip/include/lwipopts.h
@@ -7,8 +7,8 @@
  */
 
 /**
- * @defgroup    lwip_opts   lwIP options
- * @ingroup     lwip
+ * @defgroup    pkg_lwip_opts   lwIP options
+ * @ingroup     pkg_lwip
  * @brief       Options for the lwIP stack
  * @{
  *
diff --git a/pkg/lwip/include/sock_types.h b/pkg/lwip/include/sock_types.h
index ddb890d18bac5edadf5fac68d37298e1f98fd952..28e3c83026b134b9f525bc37df2220a33b27034a 100644
--- a/pkg/lwip/include/sock_types.h
+++ b/pkg/lwip/include/sock_types.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @addtogroup pkg_lwip_sokc
+ * @ingroup pkg_lwip_sock
  * @{
  *
  * @file
diff --git a/pkg/spiffs/fs/spiffs_fs.c b/pkg/spiffs/fs/spiffs_fs.c
index 73c017035142504b612b6db8b6cf1141a5e76b19..3a7d959468a2a2da6a3018181972d50debe7bbff 100644
--- a/pkg/spiffs/fs/spiffs_fs.c
+++ b/pkg/spiffs/fs/spiffs_fs.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     fs
+ * @ingroup     pkg_spiffs
  * @{
  *
  * @file
diff --git a/sys/auto_init/auto_init.c b/sys/auto_init/auto_init.c
index 7d47c6334d15e060b0ec1cc9bfa499bc844fe0c2..067b367e8550186f57195e1dcdadd48e66ec25e7 100644
--- a/sys/auto_init/auto_init.c
+++ b/sys/auto_init/auto_init.c
@@ -7,7 +7,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup auto_init
+ * @ingroup sys_auto_init
  * @{
  * @file
  * @brief   initializes any used module that has a trivial init function
diff --git a/sys/auto_init/can/auto_init_can.c b/sys/auto_init/can/auto_init_can.c
index c5f9dfa1fcbe885df92131ebd72d4aa66229257e..3b1844e9816084f9318454a2b6878eefdf270f69 100644
--- a/sys/auto_init/can/auto_init_can.c
+++ b/sys/auto_init/can/auto_init_can.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup auto_init
+ * @ingroup     sys_auto_init
  * @{
  * @file
  * @brief       initializes can device init function
diff --git a/sys/auto_init/can/auto_init_can_native.c b/sys/auto_init/can/auto_init_can_native.c
index c6bb4f76f09e9201daae15e59cf035b8a2c402b6..320ed576be12f76b26182974646e4afc9a44d1a4 100644
--- a/sys/auto_init/can/auto_init_can_native.c
+++ b/sys/auto_init/can/auto_init_can_native.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup auto_init
+ * @ingroup     sys_auto_init
  * @{
  * @file
  * @brief       initializes native can device
diff --git a/sys/auto_init/netif/auto_init_at86rf2xx.c b/sys/auto_init/netif/auto_init_at86rf2xx.c
index 6f66879aa5314833255d8ab26236bfd7bf5a190b..256733b9e72e27fab3d94be9fc1f1b9f285801ab 100644
--- a/sys/auto_init/netif/auto_init_at86rf2xx.c
+++ b/sys/auto_init/netif/auto_init_at86rf2xx.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_cc110x.c b/sys/auto_init/netif/auto_init_cc110x.c
index 471f6a91c591c0ccf12729827d9a2012018890cb..3378600474399a80504b779b19802c6efb017ce4 100644
--- a/sys/auto_init/netif/auto_init_cc110x.c
+++ b/sys/auto_init/netif/auto_init_cc110x.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_cc2420.c b/sys/auto_init/netif/auto_init_cc2420.c
index d06c66e1787162cfa67c4d1c9a0226b13428e14c..b37f687172585583b8cff3b3c6fdde75c068f947 100644
--- a/sys/auto_init/netif/auto_init_cc2420.c
+++ b/sys/auto_init/netif/auto_init_cc2420.c
@@ -9,7 +9,7 @@
  */
 
 /*
- * @ingroup     auto_init_gnrc_netif
+ * @ingroup     sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_cc2538_rf.c b/sys/auto_init/netif/auto_init_cc2538_rf.c
index 9371b5fbac588e14166851c3f011ef683ce366ce..62b2b0b11e93a67884e6e4b1ac6f282b6fe53405 100644
--- a/sys/auto_init/netif/auto_init_cc2538_rf.c
+++ b/sys/auto_init/netif/auto_init_cc2538_rf.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_enc28j60.c b/sys/auto_init/netif/auto_init_enc28j60.c
index 3d4b9c0beeecbd3bec5129316c337d79480e1c68..0e8c00d28028d4c66bb49aa92bcc4a407afe90e7 100644
--- a/sys/auto_init/netif/auto_init_enc28j60.c
+++ b/sys/auto_init/netif/auto_init_enc28j60.c
@@ -9,7 +9,7 @@
  */
 
 /**
- * @ingroup     auto_init_gnrc_netif
+ * @ingroup     sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_encx24j600.c b/sys/auto_init/netif/auto_init_encx24j600.c
index 83796e800b9b670565414a09056b9a69d90add83..860f2bbcf75c255915ae3eeaed6458b3a480351b 100644
--- a/sys/auto_init/netif/auto_init_encx24j600.c
+++ b/sys/auto_init/netif/auto_init_encx24j600.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_ethos.c b/sys/auto_init/netif/auto_init_ethos.c
index f1d9a317cc581f6711f0141c2c1460ce96a6c70b..65bcd92a414cc34da100959aea9d4277f4bcc982 100644
--- a/sys/auto_init/netif/auto_init_ethos.c
+++ b/sys/auto_init/netif/auto_init_ethos.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_kw2xrf.c b/sys/auto_init/netif/auto_init_kw2xrf.c
index 0c687db3e01a54d82989fcfc95ecfe81607d9fca..adbbc5f23e8c404f6baa918f7d238364ced12418 100644
--- a/sys/auto_init/netif/auto_init_kw2xrf.c
+++ b/sys/auto_init/netif/auto_init_kw2xrf.c
@@ -9,7 +9,7 @@
  */
 
 /*
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_mrf24j40.c b/sys/auto_init/netif/auto_init_mrf24j40.c
index 9b514e4b0a8f7ab4f936a9888ef80dd98a1e244c..32d22fd01efd0b042153a911ddd20f7ea60e130a 100644
--- a/sys/auto_init/netif/auto_init_mrf24j40.c
+++ b/sys/auto_init/netif/auto_init_mrf24j40.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_netdev_tap.c b/sys/auto_init/netif/auto_init_netdev_tap.c
index 1854dc666adbe6cdac098a109eab0fe315f405da..4e4494cad1f90ffa3d8a3eb7e860d2b53ae6ddb8 100644
--- a/sys/auto_init/netif/auto_init_netdev_tap.c
+++ b/sys/auto_init/netif/auto_init_netdev_tap.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_slipdev.c b/sys/auto_init/netif/auto_init_slipdev.c
index 9f6c1b0fc955b6bc80dc1970f534bb87c3de3fef..4d743d832cf6669cd6996c895a889fef358d2621 100644
--- a/sys/auto_init/netif/auto_init_slipdev.c
+++ b/sys/auto_init/netif/auto_init_slipdev.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_socket_zep.c b/sys/auto_init/netif/auto_init_socket_zep.c
index b80457798cda422d6fc9d1effdb6a72ae46b5a66..e086b9e3d90be6f8188f57b746cfdf12cbd40c12 100644
--- a/sys/auto_init/netif/auto_init_socket_zep.c
+++ b/sys/auto_init/netif/auto_init_socket_zep.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup auto_init_gnrc_netif
+ * @ingroup sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_sx127x.c b/sys/auto_init/netif/auto_init_sx127x.c
index 7abf9961a47e0dcd63b123a142d0771ae22f8fe7..f3c97a39c59f63d48fc55487a938be7a2fcbc114 100644
--- a/sys/auto_init/netif/auto_init_sx127x.c
+++ b/sys/auto_init/netif/auto_init_sx127x.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_gnrc_netif
+ * @ingroup     sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_w5100.c b/sys/auto_init/netif/auto_init_w5100.c
index f0ab09f651dacc55626dbb62dc7f0d77123e29ba..efb550b6c012c1491b7e6bcef10b34d17e4375e4 100644
--- a/sys/auto_init/netif/auto_init_w5100.c
+++ b/sys/auto_init/netif/auto_init_w5100.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_gnrc_netif
+ * @ingroup     sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/netif/auto_init_xbee.c b/sys/auto_init/netif/auto_init_xbee.c
index cac098929b8bf1c745851df3778ec078e49c39e4..3c64e2654a2e1442942ba2bca22d0f7ae0ffa6b9 100644
--- a/sys/auto_init/netif/auto_init_xbee.c
+++ b/sys/auto_init/netif/auto_init_xbee.c
@@ -9,7 +9,7 @@
  */
 
 /**
- * @ingroup     auto_init_gnrc_netif
+ * @ingroup     sys_auto_init_gnrc_netif
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_adc.c b/sys/auto_init/saul/auto_init_adc.c
index 5668e3adffcc597d80976cd2894098d999a2013e..9bdfcf784c496f960fca36e62f38a6617b0b3653 100644
--- a/sys/auto_init/saul/auto_init_adc.c
+++ b/sys/auto_init/saul/auto_init_adc.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_adcxx1c.c b/sys/auto_init/saul/auto_init_adcxx1c.c
index a5c1216defdd284fdbd08757c358abe874f8e3b3..fafd3e274f11e417c36013fda46c5f4fe48d87dd 100644
--- a/sys/auto_init/saul/auto_init_adcxx1c.c
+++ b/sys/auto_init/saul/auto_init_adcxx1c.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_ads101x.c b/sys/auto_init/saul/auto_init_ads101x.c
index 46c8cfe772b9c39c729b130551b1ec76c1004240..1178af196e40a150d7a5c6b0f015bfac6018801b 100644
--- a/sys/auto_init/saul/auto_init_ads101x.c
+++ b/sys/auto_init/saul/auto_init_ads101x.c
@@ -9,7 +9,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_adxl345.c b/sys/auto_init/saul/auto_init_adxl345.c
index 7bb9e0d10791c0dd9dcc07acd0afcb957d2ce7e1..705ebfbdf8a400291438a1127e7ea9bf4bb95541 100644
--- a/sys/auto_init/saul/auto_init_adxl345.c
+++ b/sys/auto_init/saul/auto_init_adxl345.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_bmp180.c b/sys/auto_init/saul/auto_init_bmp180.c
index 113110d461cd64e10ad15a7a2f11a6866a3567a0..6f50027b3cb1e84a504e075d387348519fad3232 100644
--- a/sys/auto_init/saul/auto_init_bmp180.c
+++ b/sys/auto_init/saul/auto_init_bmp180.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_bmx055.c b/sys/auto_init/saul/auto_init_bmx055.c
index 62edfa9ebd573c0a4eed20aac3de08fb4561b90c..02c4f65f681d938c77fcbe65e5a38506060fbd02 100644
--- a/sys/auto_init/saul/auto_init_bmx055.c
+++ b/sys/auto_init/saul/auto_init_bmx055.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_bmx280.c b/sys/auto_init/saul/auto_init_bmx280.c
index 3bd0672486aad2aee93a2218a271f863c4f112ac..32d29661d3a4caf6a99ddb95c7be20130449eee3 100644
--- a/sys/auto_init/saul/auto_init_bmx280.c
+++ b/sys/auto_init/saul/auto_init_bmx280.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_dht.c b/sys/auto_init/saul/auto_init_dht.c
index 08175ac71a772465b4172d0964295fdf7bc8c3a8..69577c8cea203e3ff0e92f43ec126337b9f6ca3b 100644
--- a/sys/auto_init/saul/auto_init_dht.c
+++ b/sys/auto_init/saul/auto_init_dht.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_fxos8700.c b/sys/auto_init/saul/auto_init_fxos8700.c
index 3c78b4cb1add99799f8bb615197b16f47919198b..bbcaa1bc3c782815191e35a5f936048e4ee1966c 100644
--- a/sys/auto_init/saul/auto_init_fxos8700.c
+++ b/sys/auto_init/saul/auto_init_fxos8700.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_gpio.c b/sys/auto_init/saul/auto_init_gpio.c
index ed98acf46466a3f01ceec8907e28feb13bb7f6fa..0047986462e287beac1bd370d7e07b9e6060bae2 100644
--- a/sys/auto_init/saul/auto_init_gpio.c
+++ b/sys/auto_init/saul/auto_init_gpio.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_grove_ledbar.c b/sys/auto_init/saul/auto_init_grove_ledbar.c
index 0afa7b4fcfa5c79456a33489b3335a0ccdf8d081..8222b613c0dc0acdf80d8abfe68aac2ba9634ee9 100644
--- a/sys/auto_init/saul/auto_init_grove_ledbar.c
+++ b/sys/auto_init/saul/auto_init_grove_ledbar.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_hdc1000.c b/sys/auto_init/saul/auto_init_hdc1000.c
index 628133365091253489a74b7af4f06f22946bb593..e7aaa853dd620bbfd6679a0adb401069a263a294 100644
--- a/sys/auto_init/saul/auto_init_hdc1000.c
+++ b/sys/auto_init/saul/auto_init_hdc1000.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_hts221.c b/sys/auto_init/saul/auto_init_hts221.c
index 32480a8e4b0066f178f36d5a2103881214666e51..63cc8d3b3189433587b7ad83dc2fba552e5cb347 100644
--- a/sys/auto_init/saul/auto_init_hts221.c
+++ b/sys/auto_init/saul/auto_init_hts221.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_io1_xplained.c b/sys/auto_init/saul/auto_init_io1_xplained.c
index 312804939e6908a2e0675fbd4949b7223ee325d8..296f3b2ef9dd226911c1d2bb1a31f721d27899f8 100644
--- a/sys/auto_init/saul/auto_init_io1_xplained.c
+++ b/sys/auto_init/saul/auto_init_io1_xplained.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_isl29020.c b/sys/auto_init/saul/auto_init_isl29020.c
index 2f0493f873fbc7e227b68f82d0ecb66bb8d84cc1..369be28d741680bfb06d8a1695253a343aedc639 100644
--- a/sys/auto_init/saul/auto_init_isl29020.c
+++ b/sys/auto_init/saul/auto_init_isl29020.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_jc42.c b/sys/auto_init/saul/auto_init_jc42.c
index 0a61afcd50746ee03513457080f43cde099484ce..28c89a94b127a59d8ab6188427801d169293306b 100644
--- a/sys/auto_init/saul/auto_init_jc42.c
+++ b/sys/auto_init/saul/auto_init_jc42.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_l3g4200d.c b/sys/auto_init/saul/auto_init_l3g4200d.c
index ecd3d14656b46876e6e316f37fb3eaa14c2c4099..d23fce657930ef17ee3ccf288a324486f1a7cf16 100644
--- a/sys/auto_init/saul/auto_init_l3g4200d.c
+++ b/sys/auto_init/saul/auto_init_l3g4200d.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_lis2dh12.c b/sys/auto_init/saul/auto_init_lis2dh12.c
index 76113d4c4dff6dafd53e52fa0adae287e8bffb25..789e54075a0a49c5d066904b2f41d5aeae3faea1 100644
--- a/sys/auto_init/saul/auto_init_lis2dh12.c
+++ b/sys/auto_init/saul/auto_init_lis2dh12.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_lis3dh.c b/sys/auto_init/saul/auto_init_lis3dh.c
index a5c796736b702ed3815f5c9dfe59a5f8008f356e..86ff10a61966f7b7602a4f4463dfe5f1249a6759 100644
--- a/sys/auto_init/saul/auto_init_lis3dh.c
+++ b/sys/auto_init/saul/auto_init_lis3dh.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_lis3mdl.c b/sys/auto_init/saul/auto_init_lis3mdl.c
index 9febe34aef209bb95be46d7e194baa54899da244..5c9676d07651b273c72de3cea9ca43bc4f9c4e29 100644
--- a/sys/auto_init/saul/auto_init_lis3mdl.c
+++ b/sys/auto_init/saul/auto_init_lis3mdl.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_lps331ap.c b/sys/auto_init/saul/auto_init_lps331ap.c
index a22d36684e3270da8ee05887e899d5fbe5398415..5d064448882b2f98eef8ea05906f6bc80c1f5a8b 100644
--- a/sys/auto_init/saul/auto_init_lps331ap.c
+++ b/sys/auto_init/saul/auto_init_lps331ap.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_lsm303dlhc.c b/sys/auto_init/saul/auto_init_lsm303dlhc.c
index 8c2bf88b1b52c36cad28b45520d37bbc3b8e60cc..6cf3a30fabb381def3871aa3e78188a748e9df92 100644
--- a/sys/auto_init/saul/auto_init_lsm303dlhc.c
+++ b/sys/auto_init/saul/auto_init_lsm303dlhc.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_lsm6dsl.c b/sys/auto_init/saul/auto_init_lsm6dsl.c
index a8cec21e9194fe78866ffbfef1a3310fc7a3e5ad..170bfe29ea816dc3d9b7c2fca3b32475b2eba7e3 100644
--- a/sys/auto_init/saul/auto_init_lsm6dsl.c
+++ b/sys/auto_init/saul/auto_init_lsm6dsl.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_mag3110.c b/sys/auto_init/saul/auto_init_mag3110.c
index ac08bae1ae752ac12f2aa087d7d15dbb1a0f61a0..b8292c70c5e0eaef863cdf056794db1b7a2883eb 100644
--- a/sys/auto_init/saul/auto_init_mag3110.c
+++ b/sys/auto_init/saul/auto_init_mag3110.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_mma8x5x.c b/sys/auto_init/saul/auto_init_mma8x5x.c
index f5b1b4fa8c6301efa2746d73693680e21735c685..3c39398193648bb2192bac0155a2e8831a4ced3a 100644
--- a/sys/auto_init/saul/auto_init_mma8x5x.c
+++ b/sys/auto_init/saul/auto_init_mma8x5x.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_mpl3115a2.c b/sys/auto_init/saul/auto_init_mpl3115a2.c
index 431c4570e8de87776b904bf19a0bb917830d059d..66830d5c5f11d6df0ca2d662250498b7857af650 100644
--- a/sys/auto_init/saul/auto_init_mpl3115a2.c
+++ b/sys/auto_init/saul/auto_init_mpl3115a2.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_mpu9150.c b/sys/auto_init/saul/auto_init_mpu9150.c
index d3dda29b2b0e748f242eca2f77a0a36a8248e76e..2b62bc1a7810865bb7fcac121402f7aae322bf4a 100644
--- a/sys/auto_init/saul/auto_init_mpu9150.c
+++ b/sys/auto_init/saul/auto_init_mpu9150.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_pulse_counter.c b/sys/auto_init/saul/auto_init_pulse_counter.c
index 897f240f334790bc4a6220951c5caebc1796d7b4..32c52761a4ee63c19aa0334cfd5661369b7bb810 100644
--- a/sys/auto_init/saul/auto_init_pulse_counter.c
+++ b/sys/auto_init/saul/auto_init_pulse_counter.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_si114x.c b/sys/auto_init/saul/auto_init_si114x.c
index f905d33a21207eac1ef9261da9f0a518d71ba4f8..9869b9b3766bef8fc1794d424fab4e37c560963e 100644
--- a/sys/auto_init/saul/auto_init_si114x.c
+++ b/sys/auto_init/saul/auto_init_si114x.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_si70xx.c b/sys/auto_init/saul/auto_init_si70xx.c
index 11783e6c7ad82ea2ce3c01de98056fc2a85ffc69..e433a11e2828667438301b5f8b2f5aeb6641bef9 100644
--- a/sys/auto_init/saul/auto_init_si70xx.c
+++ b/sys/auto_init/saul/auto_init_si70xx.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_tcs37727.c b/sys/auto_init/saul/auto_init_tcs37727.c
index d21417dc32987d8b9011c3fb46f50f41adb14d0b..4d7069027a0d8278376db7be6397df0feb904566 100644
--- a/sys/auto_init/saul/auto_init_tcs37727.c
+++ b/sys/auto_init/saul/auto_init_tcs37727.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_tmp006.c b/sys/auto_init/saul/auto_init_tmp006.c
index fbe75512ae417af617bee768091492d125d64b59..302450199e224f25b1403ea33201926630ad5c31 100644
--- a/sys/auto_init/saul/auto_init_tmp006.c
+++ b/sys/auto_init/saul/auto_init_tmp006.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_tsl2561.c b/sys/auto_init/saul/auto_init_tsl2561.c
index 6a5735c06557f03dfe55ea167f27df6a7271f60f..39809e159b520c86030bcb00c14d46bcb89b8451 100644
--- a/sys/auto_init/saul/auto_init_tsl2561.c
+++ b/sys/auto_init/saul/auto_init_tsl2561.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/saul/auto_init_veml6070.c b/sys/auto_init/saul/auto_init_veml6070.c
index 5e774c93f6cab316e4f9b58aa7c579ccf1b5e0c8..db872c70e64aaaae7349ca3d0beaf5e5f3e84659 100644
--- a/sys/auto_init/saul/auto_init_veml6070.c
+++ b/sys/auto_init/saul/auto_init_veml6070.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_saul
+ * @ingroup     sys_auto_init_saul
  * @{
  *
  * @file
diff --git a/sys/auto_init/storage/auto_init_sdcard_spi.c b/sys/auto_init/storage/auto_init_sdcard_spi.c
index 5c8fd1a86c62e6cd2fadda908d161047bd2b1982..1e57be14e70f46a13c7bea8719d74124a4adbb14 100644
--- a/sys/auto_init/storage/auto_init_sdcard_spi.c
+++ b/sys/auto_init/storage/auto_init_sdcard_spi.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     auto_init_sdcard_spi
+ * @ingroup     sys_auto_init
  * @{
  *
  * @file
diff --git a/sys/base64/base64.c b/sys/base64/base64.c
index ad5ed6d03285c4654029b4f65ddbefca24d426c6..048fc99f4867056b464bfc914b9d9b806121e7ae 100644
--- a/sys/base64/base64.c
+++ b/sys/base64/base64.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup base64
+ * @ingroup sys_base64
  * @{
  * @file
  * @brief   Functions to encode and decode base64
diff --git a/sys/crypto/modes/cbc.c b/sys/crypto/modes/cbc.c
index 21e193569d0d4a7580e713b2f80cfc9a1a0aaaa4..159f0b54f572503154918bf7c508901ce86b8ac9 100644
--- a/sys/crypto/modes/cbc.c
+++ b/sys/crypto/modes/cbc.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     sys_crypto_modes
+ * @ingroup     sys_crypto
  * @{
  *
  * @file
diff --git a/sys/crypto/modes/ccm.c b/sys/crypto/modes/ccm.c
index 0df28fa4bd7312a4ec9eabe5f4514c3e5babb78e..657c76b47e5deda6037fa1aa9beae59ce7393a87 100644
--- a/sys/crypto/modes/ccm.c
+++ b/sys/crypto/modes/ccm.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     sys_crypto_modes
+ * @ingroup     sys_crypto
  * @{
  *
  * @file
diff --git a/sys/crypto/modes/ctr.c b/sys/crypto/modes/ctr.c
index 8ede351094c51dc39fcdaec3e082ca457287c957..24034c53a2fbb45ecc75b626a189f3b22d6397c5 100644
--- a/sys/crypto/modes/ctr.c
+++ b/sys/crypto/modes/ctr.c
@@ -7,7 +7,7 @@
  */
 
 /**
-* @ingroup     sys_crypto_modes
+* @ingroup     sys_crypto
 * @{
 *
 * @file
diff --git a/sys/crypto/modes/ecb.c b/sys/crypto/modes/ecb.c
index a2c0da884334cca23789473a9f0dce17ded28f25..183e5bfdc92dcf8b1b101cf1bf5284ac3495cafc 100644
--- a/sys/crypto/modes/ecb.c
+++ b/sys/crypto/modes/ecb.c
@@ -7,7 +7,7 @@
  */
 
 /**
-* @ingroup     sys_crypto_modes
+* @ingroup     sys_crypto
 * @{
 *
 * @file
diff --git a/sys/div/div.c b/sys/div/div.c
index 95b171ed165959822f0b0ec1d0bfccf212edb8be..675b3e249f0b4013d2b76a6e9eba4ab4e2a897e6 100644
--- a/sys/div/div.c
+++ b/sys/div/div.c
@@ -5,7 +5,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup sys_util
+ * @ingroup     sys_div
  * @{
  * @file
  * @brief    Integer division function implementations
diff --git a/sys/fs/devfs/auto_init_devfs.c b/sys/fs/devfs/auto_init_devfs.c
index 9de9b57057c49468dbff748c093765a9c752bfd3..5754a2b190834619d2efd768a569a3e7de2e4a11 100644
--- a/sys/fs/devfs/auto_init_devfs.c
+++ b/sys/fs/devfs/auto_init_devfs.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     auto_init_fs
+ * @ingroup     sys_auto_init
  * @{
  *
  * @file
diff --git a/sys/include/auto_init.h b/sys/include/auto_init.h
index c8342ca0cfa41937c04176e3942d92da0e9fac5c..67500bd8e9d091ee6fce3ece5469604c04ebc996 100644
--- a/sys/include/auto_init.h
+++ b/sys/include/auto_init.h
@@ -8,9 +8,8 @@
  * directory for more details.
  */
 
-
 /**
- * @defgroup    sys_autoinit Auto-init
+ * @defgroup    sys_auto_init Auto-init
  * @ingroup     sys
  * @brief       Auto initialize modules
  * @note        This feature can be used by any application by adding auto_init to
@@ -23,7 +22,26 @@
  *              gets called. Be aware that most modules expect to be
  *              initialized only once, so do not call a module's init function
  *              when using auto_init unless you know what you're doing.
+ */
+
+/**
+ * @defgroup    sys_auto_init_saul SAUL drivers auto-initialization
+ * @ingroup     sys_auto_init
+ * @brief       Provides auto-initialization of SAUL drivers
  *
+ * @see @ref drivers_saul
+ */
+
+/**
+ * @defgroup    sys_auto_init_gnrc_netif GNRC netif drivers auto-initialization
+ * @ingroup     sys_auto_init
+ * @brief       Provides auto-initialization of
+ * [network device drivers](@ref drivers_netdev) via GNRC
+ *
+ * @see @ref net_gnrc_netif
+ */
+
+/**
  * @{
  *
  * @file
diff --git a/sys/include/crypto/modes/cbc.h b/sys/include/crypto/modes/cbc.h
index 2b8d8f0bd93be91e7dbab67e70b34c5c62066282..74ee616a92c2674c006de44d0ad085d7c1fdb387 100644
--- a/sys/include/crypto/modes/cbc.h
+++ b/sys/include/crypto/modes/cbc.h
@@ -70,3 +70,4 @@ int cipher_decrypt_cbc(cipher_t *cipher, uint8_t iv[16], const uint8_t *input,
 #endif
 
 #endif /* CRYPTO_MODES_CBC_H */
+/** @} */
diff --git a/sys/include/crypto/modes/ccm.h b/sys/include/crypto/modes/ccm.h
index d2f076bf48d00b365ac3ccfb9b726fc3f24861f1..b61c2d12386e956c5de92b16fd6c1081c1b439c1 100644
--- a/sys/include/crypto/modes/ccm.h
+++ b/sys/include/crypto/modes/ccm.h
@@ -26,11 +26,16 @@
 extern "C" {
 #endif
 
-#define CCM_ERR_INVALID_NONCE_LENGTH -2
-#define CCM_ERR_INVALID_CBC_MAC -3
-#define CCM_ERR_INVALID_DATA_LENGTH -3
-#define CCM_ERR_INVALID_LENGTH_ENCODING -4
-#define CCM_ERR_INVALID_MAC_LENGTH -5
+/**
+ * @name CCM error codes
+ * @{
+ */
+#define CCM_ERR_INVALID_NONCE_LENGTH        (-2)
+#define CCM_ERR_INVALID_CBC_MAC             (-3)
+#define CCM_ERR_INVALID_DATA_LENGTH         (-3)
+#define CCM_ERR_INVALID_LENGTH_ENCODING     (-4)
+#define CCM_ERR_INVALID_MAC_LENGTH          (-5)
+/** @} */
 
 /**
  * @brief Encrypt and authenticate data of arbitrary length in ccm mode.
@@ -86,3 +91,4 @@ int cipher_decrypt_ccm(cipher_t* cipher, uint8_t* auth_data,
 #endif
 
 #endif /* CRYPTO_MODES_CCM_H */
+/** @} */
diff --git a/sys/include/crypto/modes/ctr.h b/sys/include/crypto/modes/ctr.h
index 62925f06929c224f20ed62a4322454309d836ba4..7c5b493fefa655a947a0f8fd4cc9a8d2ea3e2405 100644
--- a/sys/include/crypto/modes/ctr.h
+++ b/sys/include/crypto/modes/ctr.h
@@ -71,3 +71,4 @@ int cipher_decrypt_ctr(cipher_t* cipher, uint8_t nonce_counter[16],
 #endif
 
 #endif /* CRYPTO_MODES_CTR_H */
+/** @} */
diff --git a/sys/include/crypto/modes/ecb.h b/sys/include/crypto/modes/ecb.h
index 39f86c3377e712cc285550d3625bd225e5b0e7ac..4e04067c282ec34de81526070adf08f044bcd67a 100644
--- a/sys/include/crypto/modes/ecb.h
+++ b/sys/include/crypto/modes/ecb.h
@@ -60,3 +60,4 @@ int cipher_decrypt_ecb(cipher_t* cipher, uint8_t* input, size_t length,
 #endif
 
 #endif /* CRYPTO_MODES_ECB_H */
+/** @} */
diff --git a/sys/include/net/nanocoap_sock.h b/sys/include/net/nanocoap_sock.h
index e7b2c98bb3b08da7ed40feb9419738ee27d6c2c2..835f868b39ed6c6a995fb0818f8a3b8670a12a6c 100644
--- a/sys/include/net/nanocoap_sock.h
+++ b/sys/include/net/nanocoap_sock.h
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     sys_net_nanocoap
+ * @ingroup     net_nanocoap
  *
  * @{
  *
diff --git a/sys/include/shell_commands.h b/sys/include/shell_commands.h
index 0c306d093da05b4b6576acff093c28925c2057a8..11dbe97a092893e0de5853cd59a862d9caaa1c83 100644
--- a/sys/include/shell_commands.h
+++ b/sys/include/shell_commands.h
@@ -7,7 +7,8 @@
  */
 
 /**
- * @ingroup     sys_shell_commands
+ * @defgroup    sys_shell_commands Shell commands
+ * @ingroup     sys
  *
  * @{
  *
@@ -26,12 +27,20 @@
 extern "C" {
 #endif
 
+/**
+ * @name    Disk manipulation command names
+ * @{
+ */
 #define DISK_GET_SECTOR_SIZE    "dget_ssize"
 #define DISK_GET_SECTOR_COUNT   "dget_scount"
 #define DISK_GET_BLOCK_SIZE     "dget_bsize"
 #define DISK_READ_SECTOR_CMD    "dread_sec"
 #define DISK_READ_BYTES_CMD     "dread"
+/** @} */
 
+/**
+ * @brief   List of shell commands
+ */
 extern const shell_command_t _shell_command_list[];
 
 #ifdef __cplusplus
diff --git a/sys/net/application_layer/nanocoap/nanocoap.c b/sys/net/application_layer/nanocoap/nanocoap.c
index d5b9c0c7218779ffcbc33f99a55aba247eb7a258..be3f7482f1489678a9adba82eb184ec6be5bc753 100644
--- a/sys/net/application_layer/nanocoap/nanocoap.c
+++ b/sys/net/application_layer/nanocoap/nanocoap.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     sys_net_nanocoap
+ * @ingroup     net_nanocoap
  * @{
  *
  * @file
diff --git a/sys/net/application_layer/nanocoap/sock.c b/sys/net/application_layer/nanocoap/sock.c
index 96c651b298295c3d070dbdc2c4ec3b926198bb2c..aaec5b99b9fbbf0abce026e8796f3072fe3a32d9 100644
--- a/sys/net/application_layer/nanocoap/sock.c
+++ b/sys/net/application_layer/nanocoap/sock.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     sys_net_nanocoap
+ * @ingroup     net_nanocoap
  * @{
  *
  * @file
diff --git a/sys/net/gnrc/pktdump/gnrc_pktdump.c b/sys/net/gnrc/pktdump/gnrc_pktdump.c
index bd177a400f35e8a2d14427eeae617f525d61ac1c..dc9036f8c1138f2efc1fc54a8f5448a8ffd29c16 100644
--- a/sys/net/gnrc/pktdump/gnrc_pktdump.c
+++ b/sys/net/gnrc/pktdump/gnrc_pktdump.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     net_pktdump
+ * @ingroup     net_gnrc_pktdump
  * @{
  *
  * @file
diff --git a/sys/net/gnrc/routing/rpl/gnrc_rpl_auto_init.c b/sys/net/gnrc/routing/rpl/gnrc_rpl_auto_init.c
index f6f2ea4c67ea2c1496e8fc58b53eeb02400da9b0..d5e0ba3ee3a035ec4a9f45b99ae98b597a126b22 100644
--- a/sys/net/gnrc/routing/rpl/gnrc_rpl_auto_init.c
+++ b/sys/net/gnrc/routing/rpl/gnrc_rpl_auto_init.c
@@ -8,7 +8,7 @@
  */
 
 /*
- * @ingroup gnrc_rpl
+ * @ingroup net_gnrc_rpl
  * @{
  *
  * @file
diff --git a/sys/net/gnrc/routing/rpl/gnrc_rpl_of_manager.c b/sys/net/gnrc/routing/rpl/gnrc_rpl_of_manager.c
index 3bd65b18fabd896eb8239627f362cf188124a69b..28842e74b94bda810b2759603827d004e3ba5710 100644
--- a/sys/net/gnrc/routing/rpl/gnrc_rpl_of_manager.c
+++ b/sys/net/gnrc/routing/rpl/gnrc_rpl_of_manager.c
@@ -10,7 +10,7 @@
 
 /**
  *
- * @ingroup rpl
+ * @ingroup net_gnrc_rpl
  * @{
  * @file
  * @brief   RPL Objective functions manager
diff --git a/sys/net/transport_layer/tcp/tcp_hdr_print.c b/sys/net/transport_layer/tcp/tcp_hdr_print.c
index b7dfcb50d2d0016e77b0006e0e9582e1c72b158f..b81606d14f4b5d27d2cbb704763942315dde6c5c 100644
--- a/sys/net/transport_layer/tcp/tcp_hdr_print.c
+++ b/sys/net/transport_layer/tcp/tcp_hdr_print.c
@@ -7,6 +7,7 @@
  */
 
 /**
+ * @ingroup     net_tcp
  * @{
  *
  * @file
diff --git a/sys/net/transport_layer/udp/udp_hdr_print.c b/sys/net/transport_layer/udp/udp_hdr_print.c
index 0d22ae84f758f0c22ed6341106ef0ac599992ca8..c909d478c4bf436a81bb4e1fe6c1b871bda18e43 100644
--- a/sys/net/transport_layer/udp/udp_hdr_print.c
+++ b/sys/net/transport_layer/udp/udp_hdr_print.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     net_pktdump
+ * @ingroup     net_udp
  * @{
  *
  * @file
diff --git a/sys/newlib_syscalls_default/syscalls.c b/sys/newlib_syscalls_default/syscalls.c
index 91543fcd186b5785b1d439a975ead302aaef30e4..a2ecc1b6e4552b9568016bec3a96924bcb661d30 100644
--- a/sys/newlib_syscalls_default/syscalls.c
+++ b/sys/newlib_syscalls_default/syscalls.c
@@ -8,7 +8,9 @@
  */
 
 /**
- * @ingroup     sys_newlib
+ * @defgroup    sys_newlib Newlib system call
+ * @ingroup     sys
+ * @brief       Newlib system call
  * @{
  *
  * @file
diff --git a/sys/posix/time/posix_time.c b/sys/posix/time/posix_time.c
index 188a8f0bf69d67e8c8f09da2ff674394a41001e5..ae780959689db89d629a8e7c8e1962140113ea1c 100644
--- a/sys/posix/time/posix_time.c
+++ b/sys/posix/time/posix_time.c
@@ -4,8 +4,11 @@
  * This file is subject to the terms and conditions of the GNU Lesser
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
+ */
+
+/**
+ * @ingroup sys_xtimer
  *
- * @ingroup xtimer
  * @{
  * @file
  * @brief xtimer posix wrapper
diff --git a/sys/ps/ps.c b/sys/ps/ps.c
index dd880590057027e06840aeb7131a25e2c18728b7..1a307ca5232586b52c6c4201bd6f7e6248d80bfb 100644
--- a/sys/ps/ps.c
+++ b/sys/ps/ps.c
@@ -7,7 +7,7 @@
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
  *
- * @ingroup ps
+ * @ingroup sys_ps
  * @{
  * @file
  * @brief   UNIX like ps command
diff --git a/sys/shell/commands/sc_gnrc_rpl.c b/sys/shell/commands/sc_gnrc_rpl.c
index c592c5a6b8573872c6161952151b3aedea239b54..c41fc07d6c8e2190a841121a642aff8bf6ff147f 100644
--- a/sys/shell/commands/sc_gnrc_rpl.c
+++ b/sys/shell/commands/sc_gnrc_rpl.c
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     sys_shell_commands.h
+ * @ingroup     sys_shell_commands
  * @{
  *
  * @file
diff --git a/sys/xtimer/xtimer.c b/sys/xtimer/xtimer.c
index 612bbc9622fff889681d24fe08b6c2887fb3cf06..ff6dccf0f4925b12ebae8239aeb862ea380f6edc 100644
--- a/sys/xtimer/xtimer.c
+++ b/sys/xtimer/xtimer.c
@@ -8,7 +8,8 @@
  */
 
 /**
- * @ingroup xtimer
+ * @ingroup sys_xtimer
+ *
  * @{
  * @file
  * @brief xtimer convenience functionality
diff --git a/sys/xtimer/xtimer_core.c b/sys/xtimer/xtimer_core.c
index d5765de89b84cdeb6b62887518ff2383fc99b906..af7a0a24661fdb888fee236167530deb8a7e7247 100644
--- a/sys/xtimer/xtimer_core.c
+++ b/sys/xtimer/xtimer_core.c
@@ -5,8 +5,11 @@
  * This file is subject to the terms and conditions of the GNU Lesser
  * General Public License v2.1. See the file LICENSE in the top level
  * directory for more details.
+ */
+
+/**
+ * @ingroup sys_xtimer
  *
- * @ingroup xtimer
  * @{
  * @file
  * @brief xtimer core functionality
diff --git a/tests/driver_kw2xrf/kw2xrf_params.h b/tests/driver_kw2xrf/kw2xrf_params.h
index f763375546946cb04bc198a9e4a661abd60d116e..6d97054de5ca23c47117fa6f6839f26c7f1cb79f 100644
--- a/tests/driver_kw2xrf/kw2xrf_params.h
+++ b/tests/driver_kw2xrf/kw2xrf_params.h
@@ -8,7 +8,7 @@
  */
 
 /**
- * @ingroup     tests_kw2xrf
+ * @ingroup     tests
  * @brief       generic kw2xrf pin config
  *
  * Copyright (C) 2014 PHYTEC Messtechnik GmbH
diff --git a/tests/fault_handler/main.c b/tests/fault_handler/main.c
index d5618475655efe0939912593ec8c26f24976befb..5a2a52fb3187f6bf77b234d9b736a4fa7635008f 100644
--- a/tests/fault_handler/main.c
+++ b/tests/fault_handler/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     test
+ * @ingroup     tests
  * @{
  *
  * @file
diff --git a/tests/gnrc_sock_ip/constants.h b/tests/gnrc_sock_ip/constants.h
index 0f7082954022655cbcaeb9768d098b2e81a6ff32..0f26b7cecced23873b86bb976ad44a3c4103c5c8 100644
--- a/tests/gnrc_sock_ip/constants.h
+++ b/tests/gnrc_sock_ip/constants.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <m.lenders@fu-berlin.de>
+ * @}
  */
 #ifndef CONSTANTS_H
 #define CONSTANTS_H
@@ -40,4 +40,3 @@ extern "C" {
 #endif
 
 #endif /* CONSTANTS_H */
-/** @} */
diff --git a/tests/gnrc_sock_ip/main.c b/tests/gnrc_sock_ip/main.c
index 29d3b49f472208c14811aac172124bbca4b09306..cf3591e7ef137e62d204c2dd94d526cae4c0a659 100644
--- a/tests/gnrc_sock_ip/main.c
+++ b/tests/gnrc_sock_ip/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     examples
+ * @ingroup     tests
  * @{
  *
  * @file
diff --git a/tests/gnrc_sock_ip/stack.h b/tests/gnrc_sock_ip/stack.h
index f5ab509da90dc84f10634ccdc45647d06c119e44..88b9849d03c7b145f15fe78ff74be1707e6bd6ae 100644
--- a/tests/gnrc_sock_ip/stack.h
+++ b/tests/gnrc_sock_ip/stack.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 #ifndef STACK_H
 #define STACK_H
@@ -87,4 +87,3 @@ bool _check_packet(const ipv6_addr_t *src, const ipv6_addr_t *dst,
 #endif
 
 #endif /* STACK_H */
-/** @} */
diff --git a/tests/gnrc_sock_udp/constants.h b/tests/gnrc_sock_udp/constants.h
index 9e9c2fa3d0c3ff860fcea4902b501c9c3ec65b22..87fba4c4a9795906993833b5a0295b4afcc18024 100644
--- a/tests/gnrc_sock_udp/constants.h
+++ b/tests/gnrc_sock_udp/constants.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <m.lenders@fu-berlin.de>
+ * @}
  */
 #ifndef CONSTANTS_H
 #define CONSTANTS_H
@@ -41,4 +41,3 @@ extern "C" {
 #endif
 
 #endif /* CONSTANTS_H */
-/** @} */
diff --git a/tests/gnrc_sock_udp/stack.c b/tests/gnrc_sock_udp/stack.c
index 00134a37332ebd58ae43cfbd7bc45be01123a48d..177fb30132860ff5a4b3172bf1b2adad60483ed5 100644
--- a/tests/gnrc_sock_udp/stack.c
+++ b/tests/gnrc_sock_udp/stack.c
@@ -7,10 +7,12 @@
  */
 
 /**
+ * @ingroup     tests
  * @{
  *
  * @file
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 
 
@@ -167,6 +169,3 @@ bool _check_packet(const ipv6_addr_t *src, const ipv6_addr_t *dst,
                 (data_len == udp->next->size) &&
                 (memcmp(data, udp->next->data, data_len) == 0));
 }
-
-
-/** @} */
diff --git a/tests/gnrc_sock_udp/stack.h b/tests/gnrc_sock_udp/stack.h
index 8f83392f79c3ee3bb6063af9a8040adc318210c7..d38f314103ac9e6e0b8c77dc19594665b13c9b1a 100644
--- a/tests/gnrc_sock_udp/stack.h
+++ b/tests/gnrc_sock_udp/stack.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 #ifndef STACK_H
 #define STACK_H
@@ -92,4 +92,3 @@ bool _check_packet(const ipv6_addr_t *src, const ipv6_addr_t *dst,
 #endif
 
 #endif /* STACK_H */
-/** @} */
diff --git a/tests/lwip_sock_ip/constants.h b/tests/lwip_sock_ip/constants.h
index 4ddf6271499555e4adbc33c3266bb134c43c017f..b6a6565414faac71cfcd8fd197b5546dc15d819b 100644
--- a/tests/lwip_sock_ip/constants.h
+++ b/tests/lwip_sock_ip/constants.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <m.lenders@fu-berlin.de>
+ * @}
  */
 #ifndef CONSTANTS_H
 #define CONSTANTS_H
@@ -45,4 +45,3 @@ extern "C" {
 #endif
 
 #endif /* CONSTANTS_H */
-/** @} */
diff --git a/tests/lwip_sock_ip/main.c b/tests/lwip_sock_ip/main.c
index 3b64aed5570c919710d37152f82b2dd61944a072..c0e95dc9bb3e8ab46946774d1dc64a43c2aa64db 100644
--- a/tests/lwip_sock_ip/main.c
+++ b/tests/lwip_sock_ip/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     examples
+ * @ingroup     tests
  * @{
  *
  * @file
diff --git a/tests/lwip_sock_ip/stack.c b/tests/lwip_sock_ip/stack.c
index 23ee9cabf99ac891c059f85de1ae4fb9b3568eed..7f49aecdc1ce5740e9fa6ea85eabdd339cb9b771 100644
--- a/tests/lwip_sock_ip/stack.c
+++ b/tests/lwip_sock_ip/stack.c
@@ -7,10 +7,12 @@
  */
 
 /**
+ * @ingroup     tests
  * @{
  *
  * @file
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 
 
@@ -369,5 +371,3 @@ bool _check_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst,
     return false;
 #endif
 }
-
-/** @} */
diff --git a/tests/lwip_sock_ip/stack.h b/tests/lwip_sock_ip/stack.h
index bdbac98ebb498f70a02700594c11c32b8a913372..0985026f741cb430dd63bbcf742360dff7b1c45d 100644
--- a/tests/lwip_sock_ip/stack.h
+++ b/tests/lwip_sock_ip/stack.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 #ifndef STACK_H
 #define STACK_H
@@ -120,4 +120,3 @@ bool _check_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst,
 #endif
 
 #endif /* STACK_H */
-/** @} */
diff --git a/tests/lwip_sock_tcp/constants.h b/tests/lwip_sock_tcp/constants.h
index d6637689c03e692da7facb7860c5fda6175122e0..1b99b16950fe0f04db4f34ac5b67c3907994cd1c 100644
--- a/tests/lwip_sock_tcp/constants.h
+++ b/tests/lwip_sock_tcp/constants.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <m.lenders@fu-berlin.de>
+ * @}
  */
 #ifndef CONSTANTS_H
 #define CONSTANTS_H
@@ -46,4 +46,3 @@ extern "C" {
 #endif
 
 #endif /* CONSTANTS_H */
-/** @} */
diff --git a/tests/lwip_sock_tcp/stack.c b/tests/lwip_sock_tcp/stack.c
index 879f751b21f5d776e6aa73a1fb2d89ea845a307f..d736f7e5f8529cd9f3a632f57f305881ff3fb5c1 100644
--- a/tests/lwip_sock_tcp/stack.c
+++ b/tests/lwip_sock_tcp/stack.c
@@ -11,6 +11,7 @@
  *
  * @file
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 
 
@@ -26,5 +27,3 @@ void _net_init(void)
     xtimer_init();
     lwip_bootstrap();
 }
-
-/** @} */
diff --git a/tests/lwip_sock_tcp/stack.h b/tests/lwip_sock_tcp/stack.h
index c3fccf8e22435ae412f53d8ef94ffd74b23c071e..81af52fe9bfb48f04058cf2f6e76714c4be497bc 100644
--- a/tests/lwip_sock_tcp/stack.h
+++ b/tests/lwip_sock_tcp/stack.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 #ifndef STACK_H
 #define STACK_H
@@ -34,4 +34,3 @@ void _net_init(void);
 #endif
 
 #endif /* STACK_H */
-/** @} */
diff --git a/tests/lwip_sock_udp/constants.h b/tests/lwip_sock_udp/constants.h
index f3e251766ecbfb73fd6ecc10a332793752114239..4a15841a44e452414df5e8ccbe7471295595a0c7 100644
--- a/tests/lwip_sock_udp/constants.h
+++ b/tests/lwip_sock_udp/constants.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <m.lenders@fu-berlin.de>
+ * @}
  */
 #ifndef CONSTANTS_H
 #define CONSTANTS_H
@@ -46,4 +46,3 @@ extern "C" {
 #endif
 
 #endif /* CONSTANTS_H */
-/** @} */
diff --git a/tests/lwip_sock_udp/stack.c b/tests/lwip_sock_udp/stack.c
index cdde693b293c0b09bb378892d66256684aaa2687..5ee8a581df25afc185440206a41e7757a94c65c0 100644
--- a/tests/lwip_sock_udp/stack.c
+++ b/tests/lwip_sock_udp/stack.c
@@ -11,6 +11,7 @@
  *
  * @file
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 
 
@@ -412,5 +413,3 @@ bool _check_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst,
     return false;
 #endif
 }
-
-/** @} */
diff --git a/tests/lwip_sock_udp/stack.h b/tests/lwip_sock_udp/stack.h
index c428faeb04de09032246a7726694b11b1b3d1062..4a98fa88d286f32e36461ba0b5d9282a13cf8752 100644
--- a/tests/lwip_sock_udp/stack.h
+++ b/tests/lwip_sock_udp/stack.h
@@ -7,8 +7,7 @@
  */
 
 /**
- * @defgroup
- * @ingroup
+ * @ingroup     tests
  * @brief
  * @{
  *
@@ -16,6 +15,7 @@
  * @brief
  *
  * @author  Martine Lenders <mlenders@inf.fu-berlin.de>
+ * @}
  */
 #ifndef STACK_H
 #define STACK_H
@@ -130,4 +130,3 @@ bool _check_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst,
 #endif
 
 #endif /* STACK_H */
-/** @} */
diff --git a/tests/minimal/main.c b/tests/minimal/main.c
index 529075c38dcfb52d1538aaf2f106edcc0a0f912a..93d25571ece843cef44df1623506be6279ab4a6e 100644
--- a/tests/minimal/main.c
+++ b/tests/minimal/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     test
+ * @ingroup     tests
  * @{
  *
  * @file
diff --git a/tests/pkg_cayenne-lpp/main.c b/tests/pkg_cayenne-lpp/main.c
index aea933fd0b093c5347e3ee336f90e7825b460cf3..97acd139efb511093e6dc8d15f9ae0e2d481ed6d 100644
--- a/tests/pkg_cayenne-lpp/main.c
+++ b/tests/pkg_cayenne-lpp/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     test
+ * @ingroup     tests
  * @{
  *
  * @file
diff --git a/tests/pkg_minmea/main.c b/tests/pkg_minmea/main.c
index 5381bfb8220f7b9eefd2fddb7c371b9ca0d28e37..f4ca2de0e1ed4a99b04cbeeef8e90e6c851c50fa 100644
--- a/tests/pkg_minmea/main.c
+++ b/tests/pkg_minmea/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     test
+ * @ingroup     tests
  * @{
  *
  * @file
diff --git a/tests/thread_race/main.c b/tests/thread_race/main.c
index 72b9ccb63d5e31bb80b42d0063bd31c5b13faed0..eb0f3332a058a3f24f1fbe23db1f63c6ce3375b6 100644
--- a/tests/thread_race/main.c
+++ b/tests/thread_race/main.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     test
+ * @ingroup     tests
  * @{
  *
  * @file
diff --git a/tests/unittests/tests-ecc/tests-ecc.c b/tests/unittests/tests-ecc/tests-ecc.c
index 8069d3e1c24bdba1fd12ae3583012b3e7c816e58..23aace76c2390fafa5622db43e399f22b6f5e700 100644
--- a/tests/unittests/tests-ecc/tests-ecc.c
+++ b/tests/unittests/tests-ecc/tests-ecc.c
@@ -7,7 +7,7 @@
  */
 
 /**
- * @ingroup     fs
+ * @ingroup     unittests
  * @brief
  * @{
  *