diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h
index bae9f523cfb73e05034f89e980c1f94471d34334..4058c72836c09b84be440cb3456eddc4d8ba2900 100644
--- a/Marlin/src/pins/pins.h
+++ b/Marlin/src/pins/pins.h
@@ -541,244 +541,244 @@
 #endif
 
 // Define certain undefined pins
-#if !PIN_EXISTS(X_MS1)
-  #undef X_MS1_PIN
+#ifndef X_MS1_PIN
+  #define X_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(X_MS2)
-  #undef X_MS2_PIN
+#ifndef X_MS2_PIN
+  #define X_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(X_MS3)
-  #undef X_MS3_PIN
+#ifndef X_MS3_PIN
+  #define X_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(Y_MS1)
-  #undef Y_MS1_PIN
+#ifndef Y_MS1_PIN
+  #define Y_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(Y_MS2)
-  #undef Y_MS2_PIN
+#ifndef Y_MS2_PIN
+  #define Y_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(Y_MS3)
-  #undef Y_MS3_PIN
+#ifndef Y_MS3_PIN
+  #define Y_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(Z_MS1)
-  #undef Z_MS1_PIN
+#ifndef Z_MS1_PIN
+  #define Z_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(Z_MS2)
-  #undef Z_MS2_PIN
+#ifndef Z_MS2_PIN
+  #define Z_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(Z_MS3)
-  #undef Z_MS3_PIN
+#ifndef Z_MS3_PIN
+  #define Z_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(E0_MS1)
-  #undef E0_MS1_PIN
+#ifndef E0_MS1_PIN
+  #define E0_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(E0_MS2)
-  #undef E0_MS2_PIN
+#ifndef E0_MS2_PIN
+  #define E0_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(E0_MS3)
-  #undef E0_MS3_PIN
+#ifndef E0_MS3_PIN
+  #define E0_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(E1_MS1)
-  #undef E1_MS1_PIN
+#ifndef E1_MS1_PIN
+  #define E1_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(E1_MS2)
-  #undef E1_MS2_PIN
+#ifndef E1_MS2_PIN
+  #define E1_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(E1_MS3)
-  #undef E1_MS3_PIN
+#ifndef E1_MS3_PIN
+  #define E1_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(E2_MS1)
-  #undef E2_MS1_PIN
+#ifndef E2_MS1_PIN
+  #define E2_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(E2_MS2)
-  #undef E2_MS2_PIN
+#ifndef E2_MS2_PIN
+  #define E2_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(E2_MS3)
-  #undef E2_MS3_PIN
+#ifndef E2_MS3_PIN
+  #define E2_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(E3_MS1)
-  #undef E3_MS1_PIN
+#ifndef E3_MS1_PIN
+  #define E3_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(E3_MS2)
-  #undef E3_MS2_PIN
+#ifndef E3_MS2_PIN
+  #define E3_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(E3_MS3)
-  #undef E3_MS3_PIN
+#ifndef E3_MS3_PIN
+  #define E3_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(E4_MS1)
-  #undef E4_MS1_PIN
+#ifndef E4_MS1_PIN
+  #define E4_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(E4_MS2)
-  #undef E4_MS2_PIN
+#ifndef E4_MS2_PIN
+  #define E4_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(E4_MS3)
-  #undef E4_MS3_PIN
+#ifndef E4_MS3_PIN
+  #define E4_MS3_PIN -1
 #endif
-#if !PIN_EXISTS(E5_MS1)
-  #undef E5_MS1_PIN
+#ifndef E5_MS1_PIN
+  #define E5_MS1_PIN -1
 #endif
-#if !PIN_EXISTS(E5_MS2)
-  #undef E5_MS2_PIN
+#ifndef E5_MS2_PIN
+  #define E5_MS2_PIN -1
 #endif
-#if !PIN_EXISTS(E5_MS3)
-  #undef E5_MS3_PIN
+#ifndef E5_MS3_PIN
+  #define E5_MS3_PIN -1
 #endif
 
-#if !PIN_EXISTS(E0_STEP)
-  #undef E0_STEP_PIN
+#ifndef E0_STEP_PIN
+  #define E0_STEP_PIN -1
 #endif
-#if !PIN_EXISTS(E0_DIR)
-  #undef E0_DIR_PIN
+#ifndef E0_DIR_PIN
+  #define E0_DIR_PIN -1
 #endif
-#if !PIN_EXISTS(E0_ENABLE)
-  #undef E0_ENABLE_PIN
+#ifndef E0_ENABLE_PIN
+  #define E0_ENABLE_PIN -1
 #endif
-#if !PIN_EXISTS(E1_STEP)
-  #undef E1_STEP_PIN
+#ifndef E1_STEP_PIN
+  #define E1_STEP_PIN -1
 #endif
-#if !PIN_EXISTS(E1_DIR)
-  #undef E1_DIR_PIN
+#ifndef E1_DIR_PIN
+  #define E1_DIR_PIN -1
 #endif
-#if !PIN_EXISTS(E1_ENABLE)
-  #undef E1_ENABLE_PIN
+#ifndef E1_ENABLE_PIN
+  #define E1_ENABLE_PIN -1
 #endif
-#if !PIN_EXISTS(E2_STEP)
-  #undef E2_STEP_PIN
+#ifndef E2_STEP_PIN
+  #define E2_STEP_PIN -1
 #endif
-#if !PIN_EXISTS(E2_DIR)
-  #undef E2_DIR_PIN
+#ifndef E2_DIR_PIN
+  #define E2_DIR_PIN -1
 #endif
-#if !PIN_EXISTS(E2_ENABLE)
-  #undef E2_ENABLE_PIN
+#ifndef E2_ENABLE_PIN
+  #define E2_ENABLE_PIN -1
 #endif
-#if !PIN_EXISTS(E3_STEP)
-  #undef E3_STEP_PIN
+#ifndef E3_STEP_PIN
+  #define E3_STEP_PIN -1
 #endif
-#if !PIN_EXISTS(E3_DIR)
-  #undef E3_DIR_PIN
+#ifndef E3_DIR_PIN
+  #define E3_DIR_PIN -1
 #endif
-#if !PIN_EXISTS(E3_ENABLE)
-  #undef E3_ENABLE_PIN
+#ifndef E3_ENABLE_PIN
+  #define E3_ENABLE_PIN -1
 #endif
-#if !PIN_EXISTS(E4_STEP)
-  #undef E4_STEP_PIN
+#ifndef E4_STEP_PIN
+  #define E4_STEP_PIN -1
 #endif
-#if !PIN_EXISTS(E4_DIR)
-  #undef E4_DIR_PIN
+#ifndef E4_DIR_PIN
+  #define E4_DIR_PIN -1
 #endif
-#if !PIN_EXISTS(E4_ENABLE)
-  #undef E4_ENABLE_PIN
+#ifndef E4_ENABLE_PIN
+  #define E4_ENABLE_PIN -1
 #endif
-#if !PIN_EXISTS(E5_STEP)
-  #undef E5_STEP_PIN
+#ifndef E5_STEP_PIN
+  #define E5_STEP_PIN -1
 #endif
-#if !PIN_EXISTS(E5_DIR)
-  #undef E5_DIR_PIN
+#ifndef E5_DIR_PIN
+  #define E5_DIR_PIN -1
 #endif
-#if !PIN_EXISTS(E5_ENABLE)
-  #undef E5_ENABLE_PIN
+#ifndef E5_ENABLE_PIN
+  #define E5_ENABLE_PIN -1
 #endif
 
-#if !PIN_EXISTS(X_CS)
-  #undef X_CS_PIN
+#ifndef X_CS_PIN
+  #define X_CS_PIN -1
 #endif
-#if !PIN_EXISTS(Y_CS)
-  #undef Y_CS_PIN
+#ifndef Y_CS_PIN
+  #define Y_CS_PIN -1
 #endif
-#if !PIN_EXISTS(Z_CS)
-  #undef Z_CS_PIN
+#ifndef Z_CS_PIN
+  #define Z_CS_PIN -1
 #endif
-#if !PIN_EXISTS(E0_CS)
-  #undef E0_CS_PIN
+#ifndef E0_CS_PIN
+  #define E0_CS_PIN -1
 #endif
-#if !PIN_EXISTS(E1_CS)
-  #undef E1_CS_PIN
+#ifndef E1_CS_PIN
+  #define E1_CS_PIN -1
 #endif
-#if !PIN_EXISTS(E2_CS)
-  #undef E2_CS_PIN
+#ifndef E2_CS_PIN
+  #define E2_CS_PIN -1
 #endif
-#if !PIN_EXISTS(E3_CS)
-  #undef E3_CS_PIN
+#ifndef E3_CS_PIN
+  #define E3_CS_PIN -1
 #endif
-#if !PIN_EXISTS(E4_CS)
-  #undef E4_CS_PIN
+#ifndef E4_CS_PIN
+  #define E4_CS_PIN -1
 #endif
-#if !PIN_EXISTS(E5_CS)
-  #undef E5_CS_PIN
+#ifndef E5_CS_PIN
+  #define E5_CS_PIN -1
 #endif
 
-#if !PIN_EXISTS(FAN)
-  #undef FAN_PIN
+#ifndef FAN_PIN
+  #define FAN_PIN -1
 #endif
 #define FAN0_PIN FAN_PIN
-#if !PIN_EXISTS(FAN1)
-  #undef FAN1_PIN
+#ifndef FAN1_PIN
+  #define FAN1_PIN -1
 #endif
-#if !PIN_EXISTS(FAN2)
-  #undef FAN2_PIN
+#ifndef FAN2_PIN
+  #define FAN2_PIN -1
 #endif
-#if !PIN_EXISTS(CONTROLLER_FAN)
-  #undef CONTROLLER_FAN_PIN
+#ifndef CONTROLLER_FAN_PIN
+  #define CONTROLLER_FAN_PIN  -1
 #endif
 
-#if !PIN_EXISTS(FANMUX0)
-  #undef FANMUX0_PIN
+#ifndef FANMUX0_PIN
+  #define FANMUX0_PIN -1
 #endif
-#if !PIN_EXISTS(FANMUX1)
-  #undef FANMUX1_PIN
+#ifndef FANMUX1_PIN
+  #define FANMUX1_PIN -1
 #endif
-#if !PIN_EXISTS(FANMUX2)
-  #undef FANMUX2_PIN
+#ifndef FANMUX2_PIN
+  #define FANMUX2_PIN -1
 #endif
 
-#if !PIN_EXISTS(HEATER_0)
-  #undef HEATER_0_PIN
+#ifndef HEATER_0_PIN
+  #define HEATER_0_PIN -1
 #endif
-#if !PIN_EXISTS(HEATER_1)
-  #undef HEATER_1_PIN
+#ifndef HEATER_1_PIN
+  #define HEATER_1_PIN -1
 #endif
-#if !PIN_EXISTS(HEATER_2)
-  #undef HEATER_2_PIN
+#ifndef HEATER_2_PIN
+  #define HEATER_2_PIN -1
 #endif
-#if !PIN_EXISTS(HEATER_3)
-  #undef HEATER_3_PIN
+#ifndef HEATER_3_PIN
+  #define HEATER_3_PIN -1
 #endif
-#if !PIN_EXISTS(HEATER_4)
-  #undef HEATER_4_PIN
+#ifndef HEATER_4_PIN
+  #define HEATER_4_PIN -1
 #endif
-#if !PIN_EXISTS(HEATER_5)
-  #undef HEATER_5_PIN
+#ifndef HEATER_5_PIN
+  #define HEATER_5_PIN -1
 #endif
-#if !PIN_EXISTS(HEATER_BED)
-  #undef HEATER_BED_PIN
+#ifndef HEATER_BED_PIN
+  #define HEATER_BED_PIN -1
 #endif
 
-#if !PIN_EXISTS(TEMP_0)
-  #undef TEMP_0_PIN
+#ifndef TEMP_0_PIN
+  #define TEMP_0_PIN -1
 #endif
-#if !PIN_EXISTS(TEMP_1)
-  #undef TEMP_1_PIN
+#ifndef TEMP_1_PIN
+  #define TEMP_1_PIN -1
 #endif
-#if !PIN_EXISTS(TEMP_2)
-  #undef TEMP_2_PIN
+#ifndef TEMP_2_PIN
+  #define TEMP_2_PIN -1
 #endif
-#if !PIN_EXISTS(TEMP_3)
-  #undef TEMP_3_PIN
+#ifndef TEMP_3_PIN
+  #define TEMP_3_PIN -1
 #endif
-#if !PIN_EXISTS(TEMP_4)
-  #undef TEMP_4_PIN
+#ifndef TEMP_4_PIN
+  #define TEMP_4_PIN -1
 #endif
-#if !PIN_EXISTS(TEMP_5)
-  #undef TEMP_5_PIN
+#ifndef TEMP_5_PIN
+  #define TEMP_5_PIN -1
 #endif
-#if !PIN_EXISTS(TEMP_BED)
-  #undef TEMP_BED_PIN
+#ifndef TEMP_BED_PIN
+  #define TEMP_BED_PIN -1
 #endif
 
-#if !PIN_EXISTS(SD_DETECT)
-  #undef SD_DETECT_PIN
+#ifndef SD_DETECT_PIN
+  #define SD_DETECT_PIN -1
 #endif
-#if !PIN_EXISTS(SDPOWER)
-  #undef SDPOWER_PIN
+#ifndef SDPOWER_PIN
+  #define SDPOWER_PIN -1
 #endif
 #ifndef SDSS
   #define SDSS -1
@@ -786,14 +786,15 @@
 #ifndef LED_PIN
   #define LED_PIN -1
 #endif
-#if DISABLED(PSU_CONTROL) || !PIN_EXISTS(PS_ON)
+#if DISABLED(PSU_CONTROL) || !defined(PS_ON_PIN)
   #undef PS_ON_PIN
+  #define PS_ON_PIN -1
 #endif
-#if !PIN_EXISTS(KILL)
-  #undef KILL_PIN
+#ifndef KILL_PIN
+  #define KILL_PIN -1
 #endif
-#if !PIN_EXISTS(SUICIDE)
-  #undef SUICIDE_PIN
+#ifndef SUICIDE_PIN
+  #define SUICIDE_PIN -1
 #endif
 
 #ifndef NUM_SERVO_PLUGS
diff --git a/Marlin/src/pins/pinsDebug_list.h b/Marlin/src/pins/pinsDebug_list.h
index 1bbc926e23d991e5bf19419a89f610b2905f2d3d..7e2241c099898e7a1eb0d33dcbeb3ee8a817d0ec 100644
--- a/Marlin/src/pins/pinsDebug_list.h
+++ b/Marlin/src/pins/pinsDebug_list.h
@@ -26,6 +26,247 @@
 
 #line 28 // set __LINE__ to a known value for both passes
 
+// Undefine pins to suppress warnings
+#if !PIN_EXISTS(X_MS1)
+  #undef X_MS1_PIN
+#endif
+#if !PIN_EXISTS(X_MS2)
+  #undef X_MS2_PIN
+#endif
+#if !PIN_EXISTS(X_MS3)
+  #undef X_MS3_PIN
+#endif
+#if !PIN_EXISTS(Y_MS1)
+  #undef Y_MS1_PIN
+#endif
+#if !PIN_EXISTS(Y_MS2)
+  #undef Y_MS2_PIN
+#endif
+#if !PIN_EXISTS(Y_MS3)
+  #undef Y_MS3_PIN
+#endif
+#if !PIN_EXISTS(Z_MS1)
+  #undef Z_MS1_PIN
+#endif
+#if !PIN_EXISTS(Z_MS2)
+  #undef Z_MS2_PIN
+#endif
+#if !PIN_EXISTS(Z_MS3)
+  #undef Z_MS3_PIN
+#endif
+#if !PIN_EXISTS(E0_MS1)
+  #undef E0_MS1_PIN
+#endif
+#if !PIN_EXISTS(E0_MS2)
+  #undef E0_MS2_PIN
+#endif
+#if !PIN_EXISTS(E0_MS3)
+  #undef E0_MS3_PIN
+#endif
+#if !PIN_EXISTS(E1_MS1)
+  #undef E1_MS1_PIN
+#endif
+#if !PIN_EXISTS(E1_MS2)
+  #undef E1_MS2_PIN
+#endif
+#if !PIN_EXISTS(E1_MS3)
+  #undef E1_MS3_PIN
+#endif
+#if !PIN_EXISTS(E2_MS1)
+  #undef E2_MS1_PIN
+#endif
+#if !PIN_EXISTS(E2_MS2)
+  #undef E2_MS2_PIN
+#endif
+#if !PIN_EXISTS(E2_MS3)
+  #undef E2_MS3_PIN
+#endif
+#if !PIN_EXISTS(E3_MS1)
+  #undef E3_MS1_PIN
+#endif
+#if !PIN_EXISTS(E3_MS2)
+  #undef E3_MS2_PIN
+#endif
+#if !PIN_EXISTS(E3_MS3)
+  #undef E3_MS3_PIN
+#endif
+#if !PIN_EXISTS(E4_MS1)
+  #undef E4_MS1_PIN
+#endif
+#if !PIN_EXISTS(E4_MS2)
+  #undef E4_MS2_PIN
+#endif
+#if !PIN_EXISTS(E4_MS3)
+  #undef E4_MS3_PIN
+#endif
+#if !PIN_EXISTS(E5_MS1)
+  #undef E5_MS1_PIN
+#endif
+#if !PIN_EXISTS(E5_MS2)
+  #undef E5_MS2_PIN
+#endif
+#if !PIN_EXISTS(E5_MS3)
+  #undef E5_MS3_PIN
+#endif
+
+#if !PIN_EXISTS(E0_STEP)
+  #undef E0_STEP_PIN
+#endif
+#if !PIN_EXISTS(E0_DIR)
+  #undef E0_DIR_PIN
+#endif
+#if !PIN_EXISTS(E0_ENABLE)
+  #undef E0_ENABLE_PIN
+#endif
+#if !PIN_EXISTS(E1_STEP)
+  #undef E1_STEP_PIN
+#endif
+#if !PIN_EXISTS(E1_DIR)
+  #undef E1_DIR_PIN
+#endif
+#if !PIN_EXISTS(E1_ENABLE)
+  #undef E1_ENABLE_PIN
+#endif
+#if !PIN_EXISTS(E2_STEP)
+  #undef E2_STEP_PIN
+#endif
+#if !PIN_EXISTS(E2_DIR)
+  #undef E2_DIR_PIN
+#endif
+#if !PIN_EXISTS(E2_ENABLE)
+  #undef E2_ENABLE_PIN
+#endif
+#if !PIN_EXISTS(E3_STEP)
+  #undef E3_STEP_PIN
+#endif
+#if !PIN_EXISTS(E3_DIR)
+  #undef E3_DIR_PIN
+#endif
+#if !PIN_EXISTS(E3_ENABLE)
+  #undef E3_ENABLE_PIN
+#endif
+#if !PIN_EXISTS(E4_STEP)
+  #undef E4_STEP_PIN
+#endif
+#if !PIN_EXISTS(E4_DIR)
+  #undef E4_DIR_PIN
+#endif
+#if !PIN_EXISTS(E4_ENABLE)
+  #undef E4_ENABLE_PIN
+#endif
+#if !PIN_EXISTS(E5_STEP)
+  #undef E5_STEP_PIN
+#endif
+#if !PIN_EXISTS(E5_DIR)
+  #undef E5_DIR_PIN
+#endif
+#if !PIN_EXISTS(E5_ENABLE)
+  #undef E5_ENABLE_PIN
+#endif
+
+#if !PIN_EXISTS(X_CS)
+  #undef X_CS_PIN
+#endif
+#if !PIN_EXISTS(Y_CS)
+  #undef Y_CS_PIN
+#endif
+#if !PIN_EXISTS(Z_CS)
+  #undef Z_CS_PIN
+#endif
+#if !PIN_EXISTS(E0_CS)
+  #undef E0_CS_PIN
+#endif
+#if !PIN_EXISTS(E1_CS)
+  #undef E1_CS_PIN
+#endif
+#if !PIN_EXISTS(E2_CS)
+  #undef E2_CS_PIN
+#endif
+#if !PIN_EXISTS(E3_CS)
+  #undef E3_CS_PIN
+#endif
+#if !PIN_EXISTS(E4_CS)
+  #undef E4_CS_PIN
+#endif
+#if !PIN_EXISTS(E5_CS)
+  #undef E5_CS_PIN
+#endif
+
+#if !PIN_EXISTS(FAN)
+  #undef FAN_PIN
+#endif
+#define FAN0_PIN FAN_PIN
+#if !PIN_EXISTS(FAN1)
+  #undef FAN1_PIN
+#endif
+#if !PIN_EXISTS(FAN2)
+  #undef FAN2_PIN
+#endif
+#if !PIN_EXISTS(CONTROLLER_FAN)
+  #undef CONTROLLER_FAN_PIN
+#endif
+
+#if !PIN_EXISTS(FANMUX0)
+  #undef FANMUX0_PIN
+#endif
+#if !PIN_EXISTS(FANMUX1)
+  #undef FANMUX1_PIN
+#endif
+#if !PIN_EXISTS(FANMUX2)
+  #undef FANMUX2_PIN
+#endif
+
+#if !PIN_EXISTS(HEATER_0)
+  #undef HEATER_0_PIN
+#endif
+#if !PIN_EXISTS(HEATER_1)
+  #undef HEATER_1_PIN
+#endif
+#if !PIN_EXISTS(HEATER_2)
+  #undef HEATER_2_PIN
+#endif
+#if !PIN_EXISTS(HEATER_3)
+  #undef HEATER_3_PIN
+#endif
+#if !PIN_EXISTS(HEATER_4)
+  #undef HEATER_4_PIN
+#endif
+#if !PIN_EXISTS(HEATER_5)
+  #undef HEATER_5_PIN
+#endif
+#if !PIN_EXISTS(HEATER_BED)
+  #undef HEATER_BED_PIN
+#endif
+
+#if !PIN_EXISTS(TEMP_0)
+  #undef TEMP_0_PIN
+#endif
+#if !PIN_EXISTS(TEMP_1)
+  #undef TEMP_1_PIN
+#endif
+#if !PIN_EXISTS(TEMP_2)
+  #undef TEMP_2_PIN
+#endif
+#if !PIN_EXISTS(TEMP_3)
+  #undef TEMP_3_PIN
+#endif
+#if !PIN_EXISTS(TEMP_4)
+  #undef TEMP_4_PIN
+#endif
+#if !PIN_EXISTS(TEMP_5)
+  #undef TEMP_5_PIN
+#endif
+#if !PIN_EXISTS(TEMP_BED)
+  #undef TEMP_BED_PIN
+#endif
+
+#if !PIN_EXISTS(SD_DETECT)
+  #undef SD_DETECT_PIN
+#endif
+#if !PIN_EXISTS(SDPOWER)
+  #undef SDPOWER_PIN
+#endif
+
 //
 // Analog Pin Assignments
 //