M620.11 long retraction command info

Open
#24 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Documentation
Clarity
Needs clarification
Activity status
Stale
Domain
api, documentation

Research direction

Start with the M620.11, M628, and M629 Change filament snippets in this issue, then compare them with slicer-setup.md in the linked mfm repository. Done means documenting which AMS and extruder motors each command affects, including the long-retract and undo-retract paths.

Written by the indexing model from the issue text.

Description

Bambu added a new AMS command of M620.11, M628, M629 with the long retraction before cut update and it is used in the Change filament gcode at the points below:

Long Retract

{if long_retractions_when_cut[previous_extruder]}
M620.11 S1 I[previous_extruder] E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}
{else}
M620.11 S0
{endif}

Long undo retract

{if long_retractions_when_cut[previous_extruder]}
M620.11 S1 I[previous_extruder] E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}
M628 S1
G92 E0
G1 E{retraction_distances_when_cut[previous_extruder]} F[old_filament_e_feedrate]
M400
M629 S1
{else}
M620.11 S0
{endif}

I think that the M620.11 S1 moves both the AMS hub feeder motor and extruder motor backwards at the same time because there is not a matching G1 E-{retraction_distances_when_cut[previous_extruder]} for the retraction portion of the code. If the filament buffer is fully compressed, the extruder should not be able to long retract on it's own without AMS retraction. Likewise for the AMS retracting on it's own in the filament buffer is in the decompressed length during printing.

There is a M620.11 S0 and G1 with positive extrusion movement when undoing the retraction in the second block of gcode so it's even more confusing.

I make use of inserting new toolchanges in my post processing script and I have described my guesses on M620.11 on my repo as well (https://github.com/ansonl/mfm/blob/master/slicer-setup.md#set-filament-settings)

Do you have any better ideas on which motors that new G-codes activate in the AMS and extruder?

Dominant language
No language data
Stars
682
Forks
96
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Doridian/OpenBambuAPI

All issues in Doridian/OpenBambuAPI

Similar issues

More Backend & API Design issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.