prusa3d / PrusaSlicer

G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
https://www.prusa3d.com/prusaslicer/
GNU Affero General Public License v3.0
7.8k stars 1.94k forks source link

Height Range Modifier changes not showing up in gcode #6945

Open laptop-laptop opened 3 years ago

laptop-laptop commented 3 years ago

Version

2.3.3

Use About->About PrusaSlicer for release versions 2.3.3

Operating system type + version

What OS are you using, and state any version #s Windows 10

3D printer brand / version + firmware version (if known)

What 3D printer brand / version are you printing on, is it a stock model or did you modify the printer, what firmware is running on your printer, version of the firmware #s

i3MK3S+

Behavior

I used the Height Range Modifier to make some modifications of settings in some layers. However, they don't show up in the gcode. Where does PrusaSlicer store those extra modifications made via Height Range Modifier? Is it in a special section within the gcode? Is there a delimiter that I can use to search for those modifications I made?

lukasmatena commented 3 years ago

Please post your 3MF.

Where does PrusaSlicer store those extra modifications made via Height Range Modifier?

You mean in the gcode? Nowhere. It just uses the settings.

laptop-laptop commented 3 years ago

This is just a general question, not related to any specific 3MF.

If such additional settings made under the Height Range Modifier are not stored in the gcode, how the printer knows about these changes given that the printer just follows the commands from the gcode.

lukasmatena commented 3 years ago

Because slicer uses the settings on those layers and generates different commands. If you set e.g. perimeters to 2 by default and change it to 3 in a layer range, slicer will generate different gcode - one with three perimeters on those layers.

I understood that you were asking whether there is some comment header in the gcode saying "from now on, I'm printing with 3 perimeters instead of 2". The answer is no.

laptop-laptop commented 3 years ago

Thank you for the clarification. So the slider takes those modifier changes into consideration when generating the gcode without having a separate section listing explicitly the specific changes at the beginning of those to-be-affected layers. I was hoping that I could just turn on/off some modifiers or change the values by quickly editing the gcode without going back to the slicer to perform slicing and then re-editing the gcode again.

Speaking of comment header, usually in between ;BEFORE_LAYER_CHANGE and ;AFTER_LAYER_CHANGE, there is a block of codes between ;WIPE_START and WIPE_END. What is Wipe? Why it is needed? What do those codes in between do? I don't think it means priming the nozzle at each layer.

lukasmatena commented 3 years ago

Install PrusaSlicer 2.4.0-alpha1. When you slice and start moving the horizontal slider in preview, it will show a gcode snippet and move the tool accordingly. Wipe is an extra move before travel, its purpose is to reduce stringing. It can be turned on/off in Printer Settings->Extruder->Wipe while retracting.

laptop-laptop commented 3 years ago

Thank you for telling me such nice feature. From the gcode, it looks like during Wipe, the extruder also moves when a negative value is given to E to retract. Is it to save time? Under what conditions does the slicer create the WIPE_START and WIPE_END?