diff --git a/platformio.ini b/platformio.ini
index 4597b6f0ed61e7dd4ab15e22333e0f6f4d8f9a80..e89a476b07d5ec8f51d6bff6bad0258152e0895f 100644
--- a/platformio.ini
+++ b/platformio.ini
@@ -752,6 +752,53 @@ build_unflags = -std=gnu++11
 src_filter    = ${common.default_src_filter} +<src/HAL/HAL_SAMD51>
 debug_tool    = jlink
 
+#
+# RUMBA32
+#
+[env:rumba32_f446ve]
+platform      = ststm32
+board         = rumba32_f446ve
+build_flags   = ${common.build_flags}
+  -DSTM32F4xx
+  -DARDUINO_RUMBA32_F446VE
+  -DARDUINO_ARCH_STM32
+  "-DBOARD_NAME=\"RUMBA32_F446VE\""
+  -DSTM32F446xx
+  -DUSBCON
+  -DUSBD_VID=0x0483
+  "-DUSB_MANUFACTURER=\"Unknown\""
+  "-DUSB_PRODUCT=\"RUMBA32_F446VE\""
+  -DHAL_PCD_MODULE_ENABLED
+  -DUSBD_USE_CDC
+  -DDISABLE_GENERIC_SERIALUSB
+  -DHAL_UART_MODULE_ENABLED
+  -Os
+lib_ignore    = Adafruit NeoPixel
+src_filter    = ${common.default_src_filter} +<src/HAL/HAL_STM32>
+monitor_speed = 500000
+upload_protocol = dfu
+
+#
+# MKS RUMBA32(add TMC2208/2209 UART interface and AUX-1)
+#
+[env:mks_rumba32]
+platform      = ststm32
+board         = rumba32_f446ve
+build_flags   = ${common.build_flags}
+ -DSTM32F4xx -DARDUINO_RUMBA32_F446VE -DARDUINO_ARCH_STM32 "-DBOARD_NAME=\"RUMBA32_F446VE\""
+ -DSTM32F446xx -DUSBCON -DUSBD_VID=0x8000
+  "-DUSB_MANUFACTURER=\"Unknown\""
+  "-DUSB_PRODUCT=\"RUMBA32_F446VE\""
+  -DHAL_PCD_MODULE_ENABLED
+  -DUSBD_USE_CDC
+  -DDISABLE_GENERIC_SERIALUSB
+  -DHAL_UART_MODULE_ENABLED
+  -Os
+lib_ignore    = Adafruit NeoPixel
+src_filter    = ${common.default_src_filter} +<src/HAL/HAL_STM32> +<src/HAL/HAL_STM32_F4_F7> -<src/HAL/HAL_STM32_F4_F7/STM32F7>
+monitor_speed = 250000
+upload_protocol = dfu
+
 #
 # Just print the dependency tree
 #