diff --git a/Marlin/M100_Free_Mem_Chk.cpp b/Marlin/M100_Free_Mem_Chk.cpp
index 6620b0a16..d7f38aa2d 100644
--- a/Marlin/M100_Free_Mem_Chk.cpp
+++ b/Marlin/M100_Free_Mem_Chk.cpp
@@ -45,13 +45,18 @@
*
* Initial version by Roxy-3D
*/
-#define M100_FREE_MEMORY_DUMPER // Enable for the `M110 D` Dump sub-command
-#define M100_FREE_MEMORY_CORRUPTOR // Enable for the `M100 C` Corrupt sub-command
#include "MarlinConfig.h"
#if ENABLED(M100_FREE_MEMORY_WATCHER)
+#define M100_FREE_MEMORY_DUMPER // Enable for the `M110 D` Dump sub-command
+#define M100_FREE_MEMORY_CORRUPTOR // Enable for the `M100 C` Corrupt sub-command
+
+#include "Marlin.h"
+#include "gcode.h"
+#include "hex_print_routines.h"
+
#define TEST_BYTE ((char) 0xE5)
extern char command_queue[BUFSIZE][MAX_CMD_SIZE];
@@ -60,10 +65,6 @@ extern char* __brkval;
extern size_t __heap_start, __heap_end, __flp;
extern char __bss_end;
-#include "Marlin.h"
-#include "gcode.h"
-#include "hex_print_routines.h"
-
//
// Utility functions
//
diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h
index 308b9f850..92b06fd3f 100644
--- a/Marlin/Marlin.h
+++ b/Marlin/Marlin.h
@@ -417,6 +417,7 @@ void report_current_position();
#if HAS_BED_PROBE
extern float zprobe_zoffset;
+ bool set_probe_deployed(const bool deploy);
#define DEPLOY_PROBE() set_probe_deployed(true)
#define STOW_PROBE() set_probe_deployed(false)
#else
diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp
index d23ec1488..61a7534c7 100644
--- a/Marlin/Marlin_main.cpp
+++ b/Marlin/Marlin_main.cpp
@@ -350,8 +350,6 @@
#if ENABLED(AUTO_BED_LEVELING_UBL)
#include "ubl.h"
- extern bool defer_return_to_status;
- unified_bed_leveling ubl;
#endif
#if ENABLED(CNC_COORDINATE_SYSTEMS)
@@ -2069,7 +2067,7 @@ static void clean_up_after_endstop_or_probe_move() {
#endif // BLTOUCH
// returns false for ok and true for failure
- bool set_probe_deployed(bool deploy) {
+ bool set_probe_deployed(const bool deploy) {
#if ENABLED(DEBUG_LEVELING_FEATURE)
if (DEBUGGING(LEVELING)) {
diff --git a/Marlin/dac_mcp4728.cpp b/Marlin/dac_mcp4728.cpp
index a06346c6e..783f9fb5e 100644
--- a/Marlin/dac_mcp4728.cpp
+++ b/Marlin/dac_mcp4728.cpp
@@ -30,11 +30,13 @@
* http://arduino.cc/forum/index.php/topic,51842.0.html
*/
-#include "dac_mcp4728.h"
-#include "enum.h"
+#include "MarlinConfig.h"
#if ENABLED(DAC_STEPPER_CURRENT)
+#include "dac_mcp4728.h"
+#include "enum.h"
+
uint16_t mcp4728_values[XYZE];
/**
diff --git a/Marlin/hex_print_routines.cpp b/Marlin/hex_print_routines.cpp
index 65b97fc18..38f2ff7b2 100644
--- a/Marlin/hex_print_routines.cpp
+++ b/Marlin/hex_print_routines.cpp
@@ -19,11 +19,13 @@
* along with this program. If not, see .
*
*/
-#include "Marlin.h"
-#include "gcode.h"
+
+#include "MarlinConfig.h"
#if ENABLED(AUTO_BED_LEVELING_UBL) || ENABLED(M100_FREE_MEMORY_WATCHER) || ENABLED(DEBUG_GCODE_PARSER)
+#include "Marlin.h"
+#include "gcode.h"
#include "hex_print_routines.h"
static char _hex[7] = "0x0000";
diff --git a/Marlin/planner_bezier.cpp b/Marlin/planner_bezier.cpp
index d07863d13..4686c571e 100644
--- a/Marlin/planner_bezier.cpp
+++ b/Marlin/planner_bezier.cpp
@@ -27,13 +27,14 @@
*
*/
-#include "Marlin.h"
+#include "MarlinConfig.h"
#if ENABLED(BEZIER_CURVE_SUPPORT)
#include "planner.h"
#include "language.h"
#include "temperature.h"
+#include "Marlin.h"
// See the meaning in the documentation of cubic_b_spline().
#define MIN_STEP 0.002
diff --git a/Marlin/printcounter.cpp b/Marlin/printcounter.cpp
index 794a1995e..1b046edcb 100644
--- a/Marlin/printcounter.cpp
+++ b/Marlin/printcounter.cpp
@@ -20,6 +20,10 @@
*
*/
+#include "MarlinConfig.h"
+
+#if ENABLED(PRINTCOUNTER)
+
#include "Marlin.h"
#include "printcounter.h"
#include "duration_t.h"
@@ -232,3 +236,5 @@ void PrintCounter::reset() {
}
#endif
+
+#endif // PRINTCOUNTER
diff --git a/Marlin/twibus.cpp b/Marlin/twibus.cpp
index 4e29ef883..777d151e4 100644
--- a/Marlin/twibus.cpp
+++ b/Marlin/twibus.cpp
@@ -20,12 +20,13 @@
*
*/
-#include "Marlin.h"
+#include "MarlinConfig.h"
#if ENABLED(EXPERIMENTAL_I2CBUS)
#include "twibus.h"
#include
+#include "Marlin.h"
TWIBus::TWIBus() {
#if I2C_SLAVE_ADDRESS == 0
diff --git a/Marlin/ubl.cpp b/Marlin/ubl.cpp
index 11a2a2223..819f5ecad 100644
--- a/Marlin/ubl.cpp
+++ b/Marlin/ubl.cpp
@@ -20,15 +20,18 @@
*
*/
-#include "Marlin.h"
-#include "math.h"
+#include "MarlinConfig.h"
#if ENABLED(AUTO_BED_LEVELING_UBL)
+ #include "Marlin.h"
#include "ubl.h"
#include "hex_print_routines.h"
#include "temperature.h"
#include "planner.h"
+ #include "math.h"
+
+ unified_bed_leveling ubl;
uint8_t ubl_cnt = 0;
diff --git a/Marlin/vector_3.cpp b/Marlin/vector_3.cpp
index 8c30830e6..bc62e2116 100644
--- a/Marlin/vector_3.cpp
+++ b/Marlin/vector_3.cpp
@@ -38,11 +38,14 @@
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include
-#include "Marlin.h"
+
+#include "MarlinConfig.h"
#if HAS_ABL
+
#include "vector_3.h"
+#include "serial.h"
+#include
vector_3::vector_3() : x(0), y(0), z(0) { }