diff --git a/Firmware/Dcodes.cpp b/Firmware/Dcodes.cpp
index dace219f6..9a353be81 100644
--- a/Firmware/Dcodes.cpp
+++ b/Firmware/Dcodes.cpp
@@ -239,7 +239,9 @@ void dcode_1()
eeprom_write_byte((unsigned char*)i, (unsigned char)0xff);
softReset();
}
+#endif
+#if defined DEBUG_DCODE2 || defined DEBUG_DCODES
/*!
### D2 - Read/Write RAM D3: Read/Write RAM
This command can be used without any additional parameters. It will read the entire RAM.
@@ -300,7 +302,9 @@ void dcode_2()
putchar('\n');
}*/
}
+#endif
+#ifdef DEBUG_DCODES
/*!
### D4 - Read/Write PIN D4: Read/Write PIN
diff --git a/Firmware/Dcodes.h b/Firmware/Dcodes.h
index 856d04ad0..02ef74222 100644
--- a/Firmware/Dcodes.h
+++ b/Firmware/Dcodes.h
@@ -4,7 +4,10 @@
extern void dcode__1(); //D-1 - Endless loop (to simulate deadlock)
extern void dcode_0(); //D0 - Reset
extern void dcode_1(); //D1 - Clear EEPROM
+
+#if defined DEBUG_DCODE2 || defined DEBUG_DCODES
extern void dcode_2(); //D2 - Read/Write RAM
+#endif
#if defined DEBUG_DCODE3 || defined DEBUG_DCODES
extern void dcode_3(); //D3 - Read/Write EEPROM
diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp
index 92df0122d..b2bb36bb1 100755
--- a/Firmware/Marlin_main.cpp
+++ b/Firmware/Marlin_main.cpp
@@ -9053,7 +9053,9 @@ Sigma_Exit:
*/
case 1:
dcode_1(); break;
+#endif
+#if defined DEBUG_DCODE2 || defined DEBUG_DCODES
/*!
### D2 - Read/Write RAM D3: Read/Write RAM
This command can be used without any additional parameters. It will read the entire RAM.