diff --git a/Marlin/src/HAL/shared/Marduino.h b/Marlin/src/HAL/shared/Marduino.h
index 0e93b12d9a3ea6617b50e1f17d70ee8185357ce0..d9440325f269cffa2e09f4e20c02ba97a74d5021 100644
--- a/Marlin/src/HAL/shared/Marduino.h
+++ b/Marlin/src/HAL/shared/Marduino.h
@@ -64,3 +64,7 @@
 #define RST_JTAG       16
 #define RST_SOFTWARE   32
 #define RST_BACKUP     64
+
+#ifndef M_PI
+  #define M_PI 3.14159265358979323846f
+#endif
diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h
index 94bd522e52083cfae647dca348a8f7d7cf5427bb..0f2609f459adcef5078e9eec3673bf5b68a30252 100644
--- a/Marlin/src/core/macros.h
+++ b/Marlin/src/core/macros.h
@@ -84,10 +84,6 @@
 #define SBI32(n,b) (n |= _BV32(b))
 #define CBI32(n,b) (n &= ~_BV32(b))
 
-// Macros for maths shortcuts
-#undef M_PI
-#define M_PI 3.14159265358979323846f
-
 #define RADIANS(d) ((d)*float(M_PI)/180.0f)
 #define DEGREES(r) ((r)*180.0f/float(M_PI))
 #define HYPOT2(x,y) (sq(x)+sq(y))