diff --git a/Marlin/src/HAL/STM32F1/SoftwareSerial.cpp b/Marlin/src/HAL/STM32F1/SoftwareSerial.cpp
deleted file mode 100644
index 993403cf72..0000000000
--- a/Marlin/src/HAL/STM32F1/SoftwareSerial.cpp
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * Marlin 3D Printer Firmware
- * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- *
- */
-#if defined(__STM32F1__) && !defined(HAVE_SW_SERIAL)
-
-/**
- * Empty class for Software Serial implementation (Custom RX/TX pins)
- *
- * TODO: Optionally use https://github.com/FYSETC/SoftwareSerialM if TMC UART is wanted
- */
-
-#include "SoftwareSerial.h"
-
-// Constructor
-
-SoftwareSerial::SoftwareSerial(int8_t RX_pin, int8_t TX_pin) {}
-
-// Public
-
-void SoftwareSerial::begin(const uint32_t baudrate) {
-}
-
-bool SoftwareSerial::available() {
- return false;
-}
-
-uint8_t SoftwareSerial::read() {
- return 0;
-}
-
-uint16_t SoftwareSerial::write(uint8_t byte) {
- return 0;
-}
-
-void SoftwareSerial::flush() {}
-
-void SoftwareSerial::listen() {
- listening = true;
-}
-
-void SoftwareSerial::stopListening() {
- listening = false;
-}
-
-#endif // __STM32F1__
diff --git a/Marlin/src/HAL/STM32F1/SoftwareSerial.h b/Marlin/src/HAL/STM32F1/SoftwareSerial.h
deleted file mode 100644
index 1c8058665a..0000000000
--- a/Marlin/src/HAL/STM32F1/SoftwareSerial.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/**
- * Marlin 3D Printer Firmware
- * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- *
- */
-#pragma once
-
-#include
-
-#ifndef HAVE_SW_SERIAL
- #define SW_SERIAL_PLACEHOLDER 1
-#endif
-
-class SoftwareSerial {
-public:
- SoftwareSerial(int8_t RX_pin, int8_t TX_pin);
-
- void begin(const uint32_t baudrate);
-
- bool available();
-
- uint8_t read();
- uint16_t write(uint8_t byte);
- void flush();
-
- void listen();
- void stopListening();
-
-protected:
- bool listening;
-};
diff --git a/Marlin/src/HAL/STM32F1/build_flags.py b/Marlin/src/HAL/STM32F1/build_flags.py
index 98c871a1d8..c51fd4fa58 100755
--- a/Marlin/src/HAL/STM32F1/build_flags.py
+++ b/Marlin/src/HAL/STM32F1/build_flags.py
@@ -3,7 +3,7 @@ import sys
#dynamic build flags for generic compile options
if __name__ == "__main__":
- args = " ".join([ "-std=gnu11",
+ args = " ".join([ "-std=gnu++14",
"-Os",
"-mcpu=cortex-m3",
"-mthumb",
diff --git a/Marlin/src/HAL/STM32F1/inc/SanityCheck.h b/Marlin/src/HAL/STM32F1/inc/SanityCheck.h
index 937bef8803..8d4c54ec0f 100644
--- a/Marlin/src/HAL/STM32F1/inc/SanityCheck.h
+++ b/Marlin/src/HAL/STM32F1/inc/SanityCheck.h
@@ -25,11 +25,6 @@
* Test STM32F1-specific configuration values for errors at compile-time.
*/
-#if !defined(HAVE_SW_SERIAL) && HAS_TMC_SW_SERIAL
- #warning "With TMC2208/9 consider using SoftwareSerialM with HAVE_SW_SERIAL and appropriate SS_TIMER."
- #error "Missing SoftwareSerial implementation."
-#endif
-
#if ENABLED(SDCARD_EEPROM_EMULATION) && DISABLED(SDSUPPORT)
#undef SDCARD_EEPROM_EMULATION // Avoid additional error noise
#if USE_FALLBACK_EEPROM
diff --git a/platformio.ini b/platformio.ini
index 0bd4fbe7a1..7ab0755cdc 100644
--- a/platformio.ini
+++ b/platformio.ini
@@ -711,7 +711,7 @@ src_filter = ${common.default_src_filter} + +
lib_ignore = SPI
@@ -1121,18 +1121,14 @@ build_flags = ${env:chitu_f103.build_flags} -DCHITU_V5_Z_MIN_BUGFIX
# Creality (STM32F103RET6)
#
[env:STM32F103RET6_creality]
-platform = ${common_stm32f1.platform}
-extends = common_stm32f1
-board = genericSTM32F103RE
-build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py
- ${common.build_flags} -std=gnu++14 -DSTM32_XL_DENSITY -DTEMP_TIMER_CHAN=4
-extra_scripts = ${common.extra_scripts}
+platform = ${env:STM32F103RE.platform}
+extends = env:STM32F103RE
+build_flags = ${env:STM32F103RE.build_flags} -DTEMP_TIMER_CHAN=4
+extra_scripts = ${env:STM32F103RE.extra_scripts}
pre:buildroot/share/PlatformIO/scripts/random-bin.py
buildroot/share/PlatformIO/scripts/creality.py
-lib_ignore = ${common_stm32f1.lib_ignore}
debug_tool = jlink
upload_protocol = jlink
-monitor_speed = 115200
#
# FLSUN QQ (STM32F103VET6)