github prusa3d/PrusaSlicer version_2.6.0-alpha6
PrusaSlicer 2.6.0-alpha6

pre-release16 months ago



This is another alpha release of PrusaSlicer 2.6.0. Among other things, the release adds support for Klipper firmware flavor, extends capabilities of custom G-codes, improves Arrange function, enhances Export to STL to subtract negative meshes, and fixes bugs found in previous alphas. For the full list of new features in the 2.6.0 series, please read the release logs of 2.6.0-alpha2, 2.6.0-alpha3, 2.6.0-alpha4 and 2.6.0-alpha5.

To let you enjoy the alpha without worries, the alpha builds save their profiles into the PrusaSlicer-alpha directory, so you may use the alpha side by side with the current release without ruining your production configuration.

Klipper firmware support #3452

While it has been technically possible to use PrusaSlicer with printers running Klipper even in previous versions, it required the printer profile to be properly set and the settings were not intuitive. To make the configuration easier:

  • There is now an extra G-code flavor for Klipper (Printer Settings->General->Firmware flavor)
  • The machine limits table is shown to allow more precise time estimates, but no values from the Machine limits table are emitted into the G-code when Klipper is selected
  • The automatic insertion of temperature commands at the beginning of the G-code is now optional and is controlled by a new configuration checkbox named "Autoemit temperature commands". If you are using macros in your Start G-code to set temperatures, you might want to turn this off. It is enabled by default to maintain backwards compatibility. #2420, #6847, #10018
  • Acceleration can be set separately for travel moves
  • There is a new print host named Mainsail/Fluidd

Placeholder parser improvements

The macro language that is used to process Custom G-codes got several significant improvements, namely:

  • Added support for local and global variables #4048 #7196
  • Support for "writable" variables, that can be used to pass changes of state (such as position or retraction) that a custom G-code performed back to PrusaSlicer so it knows to compensate.
  • one_of() function to match an argument to any of the given patterns
  • interpolate_table() function, which interpolates a piecewise linear function at point x
  • size() and empty() functions to return the state of any vector variable
  • New and simplified syntax for if-elsif-else blocks
  • Added vector placeholders extruded_volume, extruded_weight, extruded_volume_total and extruded_weight_total to give current consumption of the material for individual extruders

The changes are described in more detail in the respective wiki page.

Other improvements with respect to 2.6.0-alpha5

  • 'Arrange' and 'Fill bed with instances' functions now take into account skirt and brim separation (#3072, #3477, #5286, #5310, #9301, #9309). Many thanks to @jschuh (#7653) and @individ-divided (#9181), whose pull requests were very useful sources of inspiration, despite not being used verbatim.
  • The 'Export as STL/OBJ' function is now able to subtract negative meshes. Note that the algorithm may fail on non-manifold geometries (e.g., those containing self-intersection, etc). In that case, the user is notified, and only positive volumes are exported. #9798 #7594 #8853
  • The configuration option Only infill when needed was removed. It never worked well, and it was a frequent source of confusion and bug reports when it removed infill from places where it was desirable or vice versa (#9790, #8381, #7914, #6286, #5791, #4916, #2796). The option is superseded by Lightning infill (#8648) and the feature has become too much of a maintenance burden, leading to problems when implementing new features #9935.
  • The 'Purging volumes' settings accessible by a button in the right panel is now only shown and used for single-extruder multi material printers. Setting purging volumes based on which filament is unloaded does not make sense for proper multi-extruder systems, which can easily control the required purging in Filament Settings->Advanced->Minimal purge on the wipe tower. Note that this is potentially a breaking change, affecting non-single MM profiles with the 'Purging volumes' set much higher than the value in filament settings, in which case the wipe tower will become smaller than it was in previous PrusaSlicer versions.
  • The wipe tower can optionally be printed with a "stabilization cone", which prevents it from toppling over. The apex angle of the cone is adjustable in Print Settings->Multiple Extruders->Wipe tower. Setting the value to zero disables the cone.
  • The spacing of purging lines on the wipe tower can be increased using another new configuration option in Print Settings->Multiple Extruders->Wipe tower
  • The size of the wipe tower preview block the 3D scene should now be more precisely estimated
  • When switching to 3D scene after slicing in SLA mode, the pad and support trees are now shown as they were in 2.5.x. This functionality was temporarily removed in 2.6.0-alpha2 because of issues it caused when using negative meshes (which was not possible in 2.5.x).
  • Print bed reference axes are now automatically downscaled when zoomed in #9483
  • The pointy ends of 'Frustum'-type connectors produced by the Cut tool are now slightly trimmed
  • When an edge is selected in the Measurement tool, its length is shown in the measurement dialog
  • It is now possible to set separate acceleration for travel moves in Print Settings->Speed->Acceleration control. The value is clamped by the maximum travel acceleration in Printer Settings->Machine limits when using Marlin 2 or RepRapFirmware flavor.
  • The M107 (turn fan off) command emitted at the beginning of the G-code was removed
  • For a long time, PrusaSlicer would scan the Start G-code and insert temperature-setting commands when they were not present. This feature is now optional and is controlled by a new configuration checkbox named "Autoemit temperature commands".
  • 'Save/Rename Preset' dialog was simplified when only one preset is being saved/renamed.
  • Organic supports: reduced default support_tree_top_rate to 15%
  • Estimated print time for the first layer was added as a comment at the end of the G-code, supplementing similar information already available
  • The text tool behaves better when positioning text on an object with multiple instances
  • The text tool now has a lock switch next to 'Rotation' field in the Advanced controls. This allows to unlock the free rotation. It is for dragging text over the surface without orientation jump.
  • Constrained scaling (scaling using the scale tool while pressing the CTRL key) can now be used with any selection

Bugs fixed with respect to 2.6.0-alpha5

  • The reference axes at the origin were incorrectly rendered on top of objects when viewed from the bottom of the bed
  • Filament type dropdown did not accept user editable text #9770
  • Extra perimeters on overhangs were printed in the air when the external perimeters option was enabled #9545
  • The cut tool did not place the pins and holes correctly when used on an object with scaling applied #9991, #10010, #10056, #10096, #10126
  • Export STL did not export anything when the file extension entered in the Save dialog was not lowercase #10000
  • Fixed a hang in rare cases when calculating Organic supports #10048
  • The new bridging algorithm that extends bridge infill over sparse infill now works with Adaptive Cubic and Adaptive Support infill types. The only infill type that is not yet supported is Lightning infill.
  • The bridge angle setting was incorrectly interpreted as if it was in radians instead of degrees #9963 
  • Fixed an incorrect bridging angle in some cases #10086, #9895
  • The new bridging algorithm generated overextrusions when 'Thick bridges' were enabled #10073
  • The new bridging algorithm was extremely slow in certain cases #10049
  • The new bridging algorithm sometimes extended the bridging extrusions too much (mentioned in #9245 (comment))
  • When 'Disable fan for first N layers' was enabled, the 'Fan speed on overhangs' feature did not work correctly (#9975, thanks @jschuh)
  • Fixed a false positive warning about stability issues, sometimes appearing on simple models with straight walls #9744
  • Fixed a crash when using add instance function with the wipe tower selected
  • Several layout issues were fixed #9768
  • It was not possible to export multi-extruder config when some filaments had idle_temperature checked and others did not #10163
  • Fixed an error sometimes reported when slicing in SLA mode
  • macOS specific: Fixed a crash in the text embossing tool when moving a text with on an object partially below the bed
  • Fixed incorrect selection in Object list when moving a part of an object below the bed (or from below the bed)
  • Fixed a bug in Organic supports that caused the trees to cut through an object in some cases
  • Fixed a hang in the Arachne perimeter generator with specific geometries #10034
  • Improved eject function on Windows. Since our code added to 2.6.0-alpha2 is having issues with external SD card readers, we have added a detection of such devices (based on Detected external SD card readers are ejected using the code from 2.5.0 and older. We are aware that the older approach might eject devices too early and we are working on a fix.
  • When adding text to a scaled/mirrored object, the text is not created with the scale/mirror applied
  • Fixed the constrained scaling (scaling using scale tool while pressing CTRL key)
  • The reset button for skew is only shown when the world matrix contains it (the skewed object/volume is visible in the 3D scene)

Bugs fixed with respect to 2.5.0

  • 'Scale to fit' function was modified to avoid having the top layer exceed the print volume max height
  • When emitting M204 command at the beginning of the G-code, the correct format (M204 ST) is now used for Marlin (legacy) firmware flavor (in previous versions, the new M204 PRT was used).
  • Incorrect parts were selected in some cases after 'Split to objects' was used #10072

Don't miss a new PrusaSlicer release

NewReleases is sending notifications on new releases.