A question regarding the M600 parameters E, U, and L
Needs: Documentation
### Did you test the latest `bugfix-2.1.x` code?
N\A
### Question
I want to configure M600 on the fly in a UM Cura post-processor. I am looking for a clarification regarding whether the E, U and L parameters should be entered as positive or negative values. The information I've found appears to be contradictory.
The M600 command parameters `E`, `U`, `L` are listed on the [Gcodes page](https://marlinfw.org/docs/gcode/M600.html) as requiring negative values. It seems odd that the `L` (load filament) parameter would also require a negative value.
- "`[E<pos>]` | Retract before moving to change position (**negative**, default `PAUSE_PARK_RETRACT_LENGTH`)"
- "`[U<pos>]` | Amount of retraction for unload (**negative**)"
- "`[L<pos>]` | Load length, longer for bowden (**negative**)"
It appears that configured like this:
`M600 B1 E-6.5 U-450 R205 T0 L-30 X0 Y0 Z2`
there will be an E movement of -6.5mm (retraction), an unload of -450mm, and a reload of -30mm??
These are from `M600.cpp`:
* `E[distance]` - Retract the filament this far
* `U[distance]` - Retract distance for removal (manual reload)
* `L[distance]` - Extrude distance for insertion (manual reload)
Those make it seem like they should all 3 should be positive values.
Then later in M600.cpp these appear to be switching the +/- signs:
* `-ABS(parser.axisunitsval('E', E_AXIS, PAUSE_PARK_RETRACT_LENGTH))`
* `-ABS(parser.axisunitsval('U', E_AXIS, fc_settings[active_extruder].unload_length)) : 0.5f;`
* `ABS(parser.axisunitsval('L', E_AXIS, fc_settings[active_extruder].load_length))`
That appears that they are a mix and get changed later...or something.
If someone could take a moment to clarify the proper input for "Retract, Unload, and Load" I'd be much obliged.
GregValiant
关闭于 2024-08-19 2 条评论