Skip to content

[FR] G29 P1 with automated supend #28408

Description

@mpheyse

Is your feature request related to a problem? Please describe.

I've been making our older larger printers work like our newer small Bambu printers.

Specifically where a UBL process is run before each print, not loaded from eprom.

During the G29 P1 (which takes about 8+minutes) I keep the Bed at temp but run the Hotend off or at half temp.

Having the Hotend fully up to temp, oozes too much over the long P1 Cycle. So I've gone to running it a half-temp, so that that there isn't as much ooze and not as much wait-time after UBL to heat up the Hotend.

What I would like to do is start the full Hotend heat cycle at the last 2,3, or 4 (actual) probe points. So that it heats while the end of probing is happening.

We use the BL-Touch probes so Hotend temp does not effect a P1 cycle.

Are you looking for hardware support?

Not Hardware specific.

Describe the feature you want

Allow users to break up (suspend) the G29 P1 probe cycle via G-Code, so commands can be run during the probing process.

This suspension already manually available by physically holding the button, then G-code [C] continuing.

So I want G29 P1 to optionally take a variable (like [R]) that will Probe 'R' points then stop (suspend mesh generation) automatically like a user held the button, at send point.

Then I can issue a M104 for what I need

and then Continue Probing using G29 P1 C

Even better for me would be such that 'R' can take negative points, where
G29 P1 R-4 would probe the 4th-to-last point and then stop/suspend

I'm suggesting using [R] as it exists already for G29, but isn't used for P1, and is a 'point count' sort of, already

Additional context

Examples
G29 P1 ; Existing function, probes all points, till the end unless manually stopped
G29 P1 R4 ; probes first 4 points, then stops/suspends
G29 P1 R4000 ; probes likely all points as the R exceeds the full point count
G29 P1 C ; Existing function, continues where probing left off, till the end unless manually stopped
G29 P1 C R4 ; probe the next 4 points, if there are 4 points left. otherwise just probes the remainder
G29 P1 R-4 ; probe first point thru to the 4th-to-last point, inclusive
G29 P1 C R-4 ; probe next point thru to the 4th-to-last, inclusive. BUT If we're already past 4th-to-last probe point already this command does nothing.

So for my use I would use
M190 S70 ; Heat Bed and Wait
G29 P1 R-4; Probe all but the last 3 points
M104 S255; Heat Hotend, No-Wait (i.e. start heating three points before the end)
G29 P1 C ; Probe all other points
G29 P3 ; Fill unreachable points due to head travel
G29 A ; Activate UBL System
M109 S255; Heat Hotend, and wait (if we weren't already up to temp by this time)

Final note as I'm specifying R-# is an inclusive count.
G29 P1, G29 P1 R-0 and G29 P1 R-1 are functionally the same command
like wise
G29 P1 C, G29 P1 C R-0 and G29 P1 C R-1 are functionally the same command
also
G29 P1 R0 and G29 P1 C R0 just do nothing (probe zero points)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions