Skip to content

Commit

Permalink
Use extra G35 BLTouch HS Mode clearance in Tramming Wizard (MarlinFir…
Browse files Browse the repository at this point in the history
…mware#20057)

Co-authored-by: Scott Lahteine <[email protected]>
  • Loading branch information
qwewer0 and thinkyhead committed Apr 29, 2021
1 parent fe2ea8a commit 8691daf
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 13 deletions.
3 changes: 1 addition & 2 deletions Marlin/src/gcode/bedlevel/G35.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -120,8 +120,7 @@ void GcodeSuite::G35() {
// In BLTOUCH HS mode, the probe travels in a deployed state.
// Users of G35 might have a badly misaligned bed, so raise Z by the
// length of the deployed pin (BLTOUCH stroke < 7mm)
current_position.z = (Z_CLEARANCE_BETWEEN_PROBES) + (7 * ENABLED(BLTOUCH_HS_MODE));

do_blocking_move_to_z((Z_CLEARANCE_BETWEEN_PROBES) + TERN0(BLTOUCH_HS_MODE, 7));
const float z_probed_height = probe.probe_at_point(screws_tilt_adjust_pos[i], PROBE_PT_RAISE, 0, true);

if (isnan(z_probed_height)) {
Expand Down
4 changes: 4 additions & 0 deletions Marlin/src/lcd/menu/menu_tramming.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ float z_measured[G35_PROBE_COUNT] = { 0 };
static uint8_t tram_index = 0;

bool probe_single_point() {
// In BLTOUCH HS mode, the probe travels in a deployed state.
// Users of Tramming Wizard might have a badly misaligned bed, so raise Z by the
// length of the deployed pin (BLTOUCH stroke < 7mm)
do_blocking_move_to_z((Z_CLEARANCE_BETWEEN_PROBES) + TERN0(BLTOUCH_HS_MODE, 7));
const float z_probed_height = probe.probe_at_point(screws_tilt_adjust_pos[tram_index], PROBE_PT_RAISE, 0, true);
DEBUG_ECHOLNPAIR("probe_single_point: ", z_probed_height, "mm");
z_measured[tram_index] = z_probed_height;
Expand Down
13 changes: 2 additions & 11 deletions Marlin/src/module/probe.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -679,8 +679,8 @@ float Probe::probe_at_point(const float &rx, const float &ry, const ProbePtRaise
if (bltouch.triggered()) bltouch._reset();
#endif

// TODO: Adapt for SCARA, where the offset rotates
xyz_pos_t npos = { rx, ry };
// On delta keep Z below clip height or do_blocking_move_to will abort
xyz_pos_t npos = { rx, ry, _MIN(TERN(DELTA, delta_clip_start_height, current_position.z), current_position.z) };
if (probe_relative) { // The given position is in terms of the probe
if (!can_reach(npos)) {
if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Position Not Reachable");
Expand All @@ -690,15 +690,6 @@ float Probe::probe_at_point(const float &rx, const float &ry, const ProbePtRaise
}
else if (!position_is_reachable(npos)) return NAN; // The given position is in terms of the nozzle

npos.z =
#if ENABLED(DELTA)
// Move below clip height or xy move will be aborted by do_blocking_move_to
_MIN(current_position.z, delta_clip_start_height)
#else
current_position.z
#endif
;

const float old_feedrate_mm_s = feedrate_mm_s;
feedrate_mm_s = XY_PROBE_FEEDRATE_MM_S;

Expand Down

0 comments on commit 8691daf

Please sign in to comment.