SoftFever / OrcaSlicer

G-code generator for 3D printers (Bambu, Prusa, Voron, VzBot, RatRig, Creality, etc.)
https://discord.gg/P4VE9UY9gJ
GNU Affero General Public License v3.0
7.34k stars 872 forks source link

Slicer resetting print speed when using prime tower #7021

Open MacBoyPro98 opened 1 month ago

MacBoyPro98 commented 1 month ago

Is there an existing issue for this problem?

OrcaSlicer Version

v2.2.0-beta

Operating System (OS)

macOS

OS Version

macOS Sequoia 15.0.1 (24A348)

Additional system information

CPU: M2 Max Memory: 32 GB

Printer

Voron Trident, Bambu X1C, etc

How to reproduce

  1. Add a second filament
  2. Right click bed > Add primitive > Cube
  3. Paint one side of the cube with filament 2
  4. Make sure the purge tower is enabled
  5. Slice the model
  6. Export the gcode file

Actual results

Before the prime tower is started, an M220 S100 is inserted which resets klipper-based printers speed to 100%. This overwrites speed changes made by the user during print time.

e.g.: image

Note: This does not seem to affect bambu printers as their firmware might handle the speeding up/slowing down of the machine differently.

Expected results

The gcode should have a SAVE_GCODE_STATE NAME=toolchange_n (with n being the toolchange number) before the M220 S100 and RESTORE_GCODE_STATE NAME=toolchange_n after the prime tower is complete to restore the printer to speed it was previously printing at.

Alternatively, their could be an option in the prime tower settings to toggle this on/off but that might cause more confusion than necessary.

Project file & Debug log uploads

Cube.3mf.zip log.zip

Checklist of files to include

Anything else?

No response

gargamel778 commented 1 month ago

I am experiencing the same issue and would expect the manual setting of print speed override to be persistent across tool changes. Also, a toggle switch to support klipper save/restore gcode state when the machine's G-code flavor is set to klipper would be an excellent addition.