diff --git a/Marlin/src/HAL/HAL_AVR/SanityCheck_AVR_8_bit.h b/Marlin/src/HAL/HAL_AVR/SanityCheck_AVR_8_bit.h
index f2b8233efa87d485551b2f759d0fc87d079bc4d1..c2377733370eb46248a49aad8419692ce4e31ae6 100644
--- a/Marlin/src/HAL/HAL_AVR/SanityCheck_AVR_8_bit.h
+++ b/Marlin/src/HAL/HAL_AVR/SanityCheck_AVR_8_bit.h
@@ -96,4 +96,22 @@
   #endif
 #endif // SPINDLE_LASER_ENABLE
 
+/**
+ * TMC2208 software UART and ENDSTOP_INTERRUPTS both use pin change interrupts (PCI)
+ */
+#if ENABLED(HAVE_TMC2208) && ENABLED(ENDSTOP_INTERRUPTS_FEATURE) && !( \
+       ENABLED( X_HARDWARE_SERIAL  ) \
+    || ENABLED( X2_HARDWARE_SERIAL ) \
+    || ENABLED( Y_HARDWARE_SERIAL  ) \
+    || ENABLED( Y2_HARDWARE_SERIAL ) \
+    || ENABLED( Z_HARDWARE_SERIAL  ) \
+    || ENABLED( Z2_HARDWARE_SERIAL ) \
+    || ENABLED( E0_HARDWARE_SERIAL ) \
+    || ENABLED( E1_HARDWARE_SERIAL ) \
+    || ENABLED( E2_HARDWARE_SERIAL ) \
+    || ENABLED( E3_HARDWARE_SERIAL ) \
+    || ENABLED( E4_HARDWARE_SERIAL ) )
+  #error "select hardware UART for TMC2208 to use both TMC2208 and ENDSTOP_INTERRUPTS_FEATURE."
+#endif
+
 #endif // _SANITYCHECK_AVR_8_BIT_H_