Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NOZZLE_CLEAN_FEATURE with no dependency on HAS_BED_PROBE #4354

Merged
merged 4 commits into from
Jul 19, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
---
language: c
#
notifications:
email: false
#
before_install:
#
# Fetch the tag information for the current branch
Expand Down Expand Up @@ -237,7 +240,7 @@ script:
# Test NOZZLE_CLEAN_FEATURE
#
- restore_configs
- opt_enable AUTO_BED_LEVELING_FEATURE NOZZLE_CLEAN_FEATURE FIX_MOUNTED_PROBE
- opt_enable NOZZLE_CLEAN_FEATURE
- build_marlin
#
#
Expand Down
10 changes: 5 additions & 5 deletions Marlin/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -894,12 +894,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 10 additions & 0 deletions Marlin/Marlin.h
Original file line number Diff line number Diff line change
Expand Up @@ -404,4 +404,14 @@ void calculate_volumetric_multipliers();
#endif
#endif

/**
* Blocking movement and shorthand functions
*/
static void do_blocking_move_to(float x, float y, float z, float fr_mm_m=0.0);
static void do_blocking_move_to_axis_pos(AxisEnum axis, float where, float fr_mm_m=0.0);
static void do_blocking_move_to_x(float x, float fr_mm_m=0.0);
static void do_blocking_move_to_y(float y);
static void do_blocking_move_to_z(float z, float fr_mm_m=0.0);
static void do_blocking_move_to_xy(float x, float y, float fr_mm_m=0.0);

#endif //MARLIN_H
34 changes: 12 additions & 22 deletions Marlin/Marlin_main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
#include "language.h"
#include "pins_arduino.h"
#include "math.h"
#include "nozzle.h"

#if ENABLED(USE_WATCHDOG)
#include "watchdog.h"
Expand Down Expand Up @@ -1660,7 +1661,7 @@ inline void set_destination_to_current() { memcpy(destination, current_position,
* Plan a move to (X, Y, Z) and set the current_position
* The final current_position may not be the one that was requested
*/
static void do_blocking_move_to(float x, float y, float z, float fr_mm_m = 0.0) {
void do_blocking_move_to(float x, float y, float z, float fr_mm_m /*=0.0*/) {
float old_feedrate_mm_m = feedrate_mm_m;

#if ENABLED(DEBUG_LEVELING_FEATURE)
Expand Down Expand Up @@ -1708,21 +1709,14 @@ static void do_blocking_move_to(float x, float y, float z, float fr_mm_m = 0.0)
feedrate_mm_m = old_feedrate_mm_m;
}

inline void do_blocking_move_to_x(float x, float fr_mm_m = 0.0) {
do_blocking_move_to(x, current_position[Y_AXIS], current_position[Z_AXIS], fr_mm_m);
}

inline void do_blocking_move_to_y(float y) {
do_blocking_move_to(current_position[X_AXIS], y, current_position[Z_AXIS]);
}

inline void do_blocking_move_to_xy(float x, float y, float fr_mm_m = 0.0) {
do_blocking_move_to(x, y, current_position[Z_AXIS], fr_mm_m);
}

inline void do_blocking_move_to_z(float z, float fr_mm_m = 0.0) {
do_blocking_move_to(current_position[X_AXIS], current_position[Y_AXIS], z, fr_mm_m);
void do_blocking_move_to_axis_pos(AxisEnum axis, float where, float fr_mm_m/*=0.0*/) {
current_position[axis] = where;
do_blocking_move_to(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], fr_mm_m);
}
void do_blocking_move_to_x(float x, float fr_mm_m/*=0.0*/) { do_blocking_move_to_axis_pos(X_AXIS, x, fr_mm_m); }
void do_blocking_move_to_y(float y) { do_blocking_move_to_axis_pos(Y_AXIS, y); }
void do_blocking_move_to_z(float z, float fr_mm_m/*=0.0*/) { do_blocking_move_to_axis_pos(Z_AXIS, z, fr_mm_m); }
void do_blocking_move_to_xy(float x, float y, float fr_mm_m/*=0.0*/) { do_blocking_move_to(x, y, current_position[Z_AXIS], fr_mm_m); }

//
// Prepare to do endstop or probe moves
Expand Down Expand Up @@ -2784,9 +2778,7 @@ inline void gcode_G4() {

#endif //FWRETRACT

#if ENABLED(NOZZLE_CLEAN_FEATURE) && HAS_BED_PROBE
#include "nozzle.h"

#if ENABLED(NOZZLE_CLEAN_FEATURE)
/**
* G12: Clean the nozzle
*/
Expand Down Expand Up @@ -2819,8 +2811,6 @@ inline void gcode_G4() {
#endif

#if ENABLED(NOZZLE_PARK_FEATURE)
#include "nozzle.h"

/**
* G27: Park the nozzle
*/
Expand Down Expand Up @@ -3301,7 +3291,7 @@ inline void gcode_G28() {
}
// For each G29 S2...
if (probe_point == 0) {
// For the intial G29 S2 make Z a positive value (e.g., 4.0)
// For the initial G29 S2 make Z a positive value (e.g., 4.0)
current_position[Z_AXIS] = MESH_HOME_SEARCH_Z
#if Z_HOME_DIR > 0
+ Z_MAX_POS
Expand Down Expand Up @@ -7084,7 +7074,7 @@ void process_next_command() {
break;
#endif // FWRETRACT

#if ENABLED(NOZZLE_CLEAN_FEATURE) && HAS_BED_PROBE
#if ENABLED(NOZZLE_CLEAN_FEATURE)
case 12:
gcode_G12(); // G12: Nozzle Clean
break;
Expand Down
7 changes: 0 additions & 7 deletions Marlin/SanityCheck.h
Original file line number Diff line number Diff line change
Expand Up @@ -684,11 +684,4 @@
#error "ENDSTOPS_ONLY_FOR_HOMING is deprecated. Use (disable) ENDSTOPS_ALWAYS_ON_DEFAULT instead."
#endif

/**
* Nozzle cleaning
*/
#if ENABLED(NOZZLE_CLEAN_FEATURE) && !HAS_BED_PROBE
#error Due to internal dependencies you must have a bed probe for NOZZLE_CLEAN_FEATURE to work
#endif

#endif //SANITYCHECK_H
10 changes: 5 additions & 5 deletions Marlin/example_configurations/Cartesio/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -894,12 +894,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/Felix/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -877,12 +877,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/Felix/DUAL/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -875,12 +875,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/Hephestos/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -886,12 +886,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/Hephestos_2/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -888,12 +888,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/K8200/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -911,12 +911,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/K8400/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -894,12 +894,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/K8400/Dual-head/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -894,12 +894,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -894,12 +894,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/RigidBot/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -892,12 +892,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/SCARA/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/TAZ4/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -915,12 +915,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/WITBOX/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -886,12 +886,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
10 changes: 5 additions & 5 deletions Marlin/example_configurations/adafruit/ST7565/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -894,12 +894,12 @@
// Number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12

// { X, Y, Z}
#define NOZZLE_CLEAN_START_PT { 30, 30, (Z_MIN_POS + 5)}
#define NOZZLE_CLEAN_END_PT {100, 60, (Z_MIN_POS + 5)}
// Specify positions as { X, Y, Z }
#define NOZZLE_CLEAN_START_POINT { 30, 30, (Z_MIN_POS + 1)}
#define NOZZLE_CLEAN_END_POINT {100, 60, (Z_MIN_POS + 1)}

// Moves the nozzle to the parked position
#define NOZZLE_CLEAN_PARK
// Moves the nozzle to the initial position
#define NOZZLE_CLEAN_GOBACK
#endif

//
Expand Down
Loading