diff --git a/boards/nucleo144-common/Makefile b/boards/common/nucleo144/Makefile
similarity index 100%
rename from boards/nucleo144-common/Makefile
rename to boards/common/nucleo144/Makefile
diff --git a/boards/nucleo144-common/Makefile.features b/boards/common/nucleo144/Makefile.features
similarity index 100%
rename from boards/nucleo144-common/Makefile.features
rename to boards/common/nucleo144/Makefile.features
diff --git a/boards/common/nucleo144/Makefile.include b/boards/common/nucleo144/Makefile.include
new file mode 100644
index 0000000000000000000000000000000000000000..64c4ada071a1665f8b4f7bdd2c407697529f4293
--- /dev/null
+++ b/boards/common/nucleo144/Makefile.include
@@ -0,0 +1,5 @@
+# include nucleo common serial configuration
+include $(RIOTBOARD)/common/nucleo/Makefile.include.serial
+
+# add the common header files to the include path
+INCLUDES += -I$(RIOTBOARD)/common/nucleo144/include
diff --git a/boards/nucleo144-common/include/arduino_board.h b/boards/common/nucleo144/include/arduino_board.h
similarity index 100%
rename from boards/nucleo144-common/include/arduino_board.h
rename to boards/common/nucleo144/include/arduino_board.h
diff --git a/boards/nucleo144-common/include/arduino_pinmap.h b/boards/common/nucleo144/include/arduino_pinmap.h
similarity index 100%
rename from boards/nucleo144-common/include/arduino_pinmap.h
rename to boards/common/nucleo144/include/arduino_pinmap.h
diff --git a/boards/nucleo144-common/include/board_common.h b/boards/common/nucleo144/include/board_common.h
similarity index 100%
rename from boards/nucleo144-common/include/board_common.h
rename to boards/common/nucleo144/include/board_common.h
diff --git a/boards/nucleo144-common/include/gpio_params.h b/boards/common/nucleo144/include/gpio_params.h
similarity index 100%
rename from boards/nucleo144-common/include/gpio_params.h
rename to boards/common/nucleo144/include/gpio_params.h
diff --git a/boards/nucleo144-common/Makefile.include b/boards/nucleo144-common/Makefile.include
deleted file mode 100644
index fd1c1a915ea5dac7a796cdcc9c72418236a6be86..0000000000000000000000000000000000000000
--- a/boards/nucleo144-common/Makefile.include
+++ /dev/null
@@ -1,5 +0,0 @@
-# include nucleo common serial configuration
-include $(RIOTBOARD)/nucleo-common/Makefile.include.serial
-
-# add the common header files to the include path
-INCLUDES += -I$(RIOTBOARD)/nucleo144-common/include
diff --git a/boards/nucleo144-f207/Makefile.dep b/boards/nucleo144-f207/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f207/Makefile.dep
+++ b/boards/nucleo144-f207/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f207/Makefile.features b/boards/nucleo144-f207/Makefile.features
index eeae79b3ad28d1da9ea720b66ba926e8cc551955..66d641cc89456cca1fbd02d0aa41bf15d10addc1 100644
--- a/boards/nucleo144-f207/Makefile.features
+++ b/boards/nucleo144-f207/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m3_2
diff --git a/boards/nucleo144-f207/Makefile.include b/boards/nucleo144-f207/Makefile.include
index 1c1ead3e02196216a2cd9fc356ec75a2d61bfc02..bd9a129dd79fe88e33385ee83018b0839951eb1f 100644
--- a/boards/nucleo144-f207/Makefile.include
+++ b/boards/nucleo144-f207/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f2
 export CPU_MODEL = stm32f207zg
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f303/Makefile.dep b/boards/nucleo144-f303/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f303/Makefile.dep
+++ b/boards/nucleo144-f303/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f303/Makefile.features b/boards/nucleo144-f303/Makefile.features
index d9a523201eecfc65c26ce5683a6dc295a80f41fa..3e90c05d1ece4e22933368a0af730a4e4a87128b 100644
--- a/boards/nucleo144-f303/Makefile.features
+++ b/boards/nucleo144-f303/Makefile.features
@@ -7,7 +7,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo 144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f303/Makefile.include b/boards/nucleo144-f303/Makefile.include
index 49e05545b7d02d52efc16b93f281da9691bae2ce..f805e3f6d0f48657b5cdab226e0bee2f68d645b4 100644
--- a/boards/nucleo144-f303/Makefile.include
+++ b/boards/nucleo144-f303/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f3
 export CPU_MODEL = stm32f303ze
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f412/Makefile.dep b/boards/nucleo144-f412/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f412/Makefile.dep
+++ b/boards/nucleo144-f412/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f412/Makefile.features b/boards/nucleo144-f412/Makefile.features
index d256e7967dc94deaba0f45d8b1b0547a83d9944b..7e81643a3eda24e2a325390f5005d0f3206bc936 100644
--- a/boards/nucleo144-f412/Makefile.features
+++ b/boards/nucleo144-f412/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f412/Makefile.include b/boards/nucleo144-f412/Makefile.include
index c97906ebe030a6bfbfcca64de548655b083e4e72..95c504d567e657f711bd572d3e72d7359c8f42bc 100644
--- a/boards/nucleo144-f412/Makefile.include
+++ b/boards/nucleo144-f412/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f412zg
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f413/Makefile.dep b/boards/nucleo144-f413/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f413/Makefile.dep
+++ b/boards/nucleo144-f413/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f413/Makefile.features b/boards/nucleo144-f413/Makefile.features
index c0023b9ac2b590a7f8eb6e0638820ccc4f5cd2c0..70418687784f12dc8fc40b86af95635125454edf 100644
--- a/boards/nucleo144-f413/Makefile.features
+++ b/boards/nucleo144-f413/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f413/Makefile.include b/boards/nucleo144-f413/Makefile.include
index bb914e66f2862cd9fa598601b9ad3c58c604f558..2c9bf06919a92d9ac235b5dcef369e31726e4a41 100644
--- a/boards/nucleo144-f413/Makefile.include
+++ b/boards/nucleo144-f413/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f413zh
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f429/Makefile.dep b/boards/nucleo144-f429/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f429/Makefile.dep
+++ b/boards/nucleo144-f429/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f429/Makefile.features b/boards/nucleo144-f429/Makefile.features
index c0023b9ac2b590a7f8eb6e0638820ccc4f5cd2c0..70418687784f12dc8fc40b86af95635125454edf 100644
--- a/boards/nucleo144-f429/Makefile.features
+++ b/boards/nucleo144-f429/Makefile.features
@@ -9,7 +9,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f429/Makefile.include b/boards/nucleo144-f429/Makefile.include
index b45202174bf4bb36d45f3a40c58d1ea51bf9ddcd..b1a0841ff6f05e60d2e5c7069cccd396658995bd 100644
--- a/boards/nucleo144-f429/Makefile.include
+++ b/boards/nucleo144-f429/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f429zi
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f446/Makefile.dep b/boards/nucleo144-f446/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f446/Makefile.dep
+++ b/boards/nucleo144-f446/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f446/Makefile.features b/boards/nucleo144-f446/Makefile.features
index dbedb275574fff6ed2e7846dbaf278fd89b07f78..3c0a5eacfcf097f36fc981e8709d4d1980508f63 100644
--- a/boards/nucleo144-f446/Makefile.features
+++ b/boards/nucleo144-f446/Makefile.features
@@ -8,7 +8,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m4_3
diff --git a/boards/nucleo144-f446/Makefile.include b/boards/nucleo144-f446/Makefile.include
index 12efc2b3a820925a38ddf70442d8e891989da17a..4e2567a435e1e176be78bc3b0368526550dd9a85 100644
--- a/boards/nucleo144-f446/Makefile.include
+++ b/boards/nucleo144-f446/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f4
 export CPU_MODEL = stm32f446ze
 
 # load the common Makefile.include for Nucleo-144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f722/Makefile.dep b/boards/nucleo144-f722/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f722/Makefile.dep
+++ b/boards/nucleo144-f722/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f722/Makefile.features b/boards/nucleo144-f722/Makefile.features
index 4b922dc34dad47e16046368b655b2bbd1bad1d29..1d3e51ef5036c745ce5a9878055111c3619167e8 100644
--- a/boards/nucleo144-f722/Makefile.features
+++ b/boards/nucleo144-f722/Makefile.features
@@ -5,7 +5,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m7
diff --git a/boards/nucleo144-f722/Makefile.include b/boards/nucleo144-f722/Makefile.include
index 495043d0c362815d84dc2029b8489e398fd22038..4c59a5e1ed2f119509db691210bf9749cf68ab66 100644
--- a/boards/nucleo144-f722/Makefile.include
+++ b/boards/nucleo144-f722/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f7
 export CPU_MODEL = stm32f722ze
 
 # load the common Makefile.include for Nucleo144 boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f746/Makefile.dep b/boards/nucleo144-f746/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f746/Makefile.dep
+++ b/boards/nucleo144-f746/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f746/Makefile.features b/boards/nucleo144-f746/Makefile.features
index 24128e83da5fb7f08ebf703c0e17f390c2700dea..ed5b86f2894fb9994a2804407fc75d50cfb6b698 100644
--- a/boards/nucleo144-f746/Makefile.features
+++ b/boards/nucleo144-f746/Makefile.features
@@ -5,7 +5,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m7
diff --git a/boards/nucleo144-f746/Makefile.include b/boards/nucleo144-f746/Makefile.include
index a588bd7dbc7143caf6ed517dea06ddce41652e41..052e2be5dd58d6133dab093bcc1c689c58a0195f 100644
--- a/boards/nucleo144-f746/Makefile.include
+++ b/boards/nucleo144-f746/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f7
 export CPU_MODEL = stm32f746zg
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include
diff --git a/boards/nucleo144-f767/Makefile.dep b/boards/nucleo144-f767/Makefile.dep
index 76e2dc17b45c22bfb5b499e63647610ca247b349..729485827299c1a63e12514b30d4943aeea41c0d 100644
--- a/boards/nucleo144-f767/Makefile.dep
+++ b/boards/nucleo144-f767/Makefile.dep
@@ -1 +1 @@
-include $(RIOTBOARD)/nucleo-common/Makefile.dep
+include $(RIOTBOARD)/common/nucleo/Makefile.dep
diff --git a/boards/nucleo144-f767/Makefile.features b/boards/nucleo144-f767/Makefile.features
index 24128e83da5fb7f08ebf703c0e17f390c2700dea..ed5b86f2894fb9994a2804407fc75d50cfb6b698 100644
--- a/boards/nucleo144-f767/Makefile.features
+++ b/boards/nucleo144-f767/Makefile.features
@@ -5,7 +5,7 @@ FEATURES_PROVIDED += periph_timer
 FEATURES_PROVIDED += periph_uart
 
 # load the common Makefile.features for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.features
+include $(RIOTBOARD)/common/nucleo144/Makefile.features
 
 # The board MPU family (used for grouping by the CI system)
 FEATURES_MCU_GROUP = cortex_m7
diff --git a/boards/nucleo144-f767/Makefile.include b/boards/nucleo144-f767/Makefile.include
index caf834742beae555024910330de855d28f6468e4..fc967abf5ed81713e14a911cf0e009d1d4a4e589 100644
--- a/boards/nucleo144-f767/Makefile.include
+++ b/boards/nucleo144-f767/Makefile.include
@@ -3,4 +3,4 @@ export CPU = stm32f7
 export CPU_MODEL = stm32f767zi
 
 # load the common Makefile.include for Nucleo boards
-include $(RIOTBOARD)/nucleo144-common/Makefile.include
+include $(RIOTBOARD)/common/nucleo144/Makefile.include