Doridian / Doridian/OpenBambuAPI
M620.11 long retraction command info
- Dominant language
- No language data
- Stars
- 680
- Forks
- 96
- PR merge metrics
- No merged PRs in 30d
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?
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.