Skip to content

Commit

Permalink
Basic documentation of integrated version
Browse files Browse the repository at this point in the history
Parameter names don't match those in the GUI yet.
  • Loading branch information
domesticatedviking committed Sep 24, 2019
1 parent cc295f2 commit 3ea3eb9
Showing 1 changed file with 21 additions and 63 deletions.
84 changes: 21 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,77 +1,35 @@
#Prusaslicer-Skinnydip edition (MMU2 string eliminator)

![PrusaSlicer logo](/resources/icons/PrusaSlicer.png?raw=true)
###Purpose:
This script is used to eliminate the stubborn threads of filament that can jam the MMU2 during toolchanges by providing a brief secondary dip into the melt zone immediately after the cooling moves complete.

# PrusaSlicer
###Installation:
Back up any existing PrusaSlicer profile directories that you care about before running this application. There is no guarantee that this build will play nice with mainstream builds of Prusaslicer.

You may want to check the [PrusaSlicer project page](https://www.prusa3d.com/prusaslicer/).
Prebuilt Windows, OSX and Linux binaries are available through the [git releases page](https://github.com/prusa3d/PrusaSlicer/releases) or from the [Prusa3D downloads page](https://www.prusa3d.com/drivers/).
###Usage:
This tool adds several new menus into Filament Settings > Advanced. To see all the available options, click the expert tab in the top right corner.

PrusaSlicer takes 3D models (STL, OBJ, AMF) and converts them into G-code
instructions for FFF printers or PNG layers for mSLA 3D printers. It's
compatible with any modern printer based on the RepRap toolchain, including all
those based on the Marlin, Prusa, Sprinter and Repetier firmware. It also works
with Mach3, LinuxCNC and Machinekit controllers.
There are 2 main types of interventions for stringy tips that this tool provides.

PrusaSlicer is based on [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranelucci and the RepRap community.
The first of these is the ability to set a different toolchange temperature. It seems that cooler temperatures are associated with less stringy tips, though it may also be partly due to the time it takes the hotend to cool to these temperatures as well

See the [project homepage](https://www.prusa3d.com/slic3r-prusa-edition/) and
the [documentation directory](doc/) for more information.
The second intervention is the "Skinnydip" procedure -- a rapid dip of the tip back into the melt zone, for the purpose of burning off any residual stringy tips.

### What language is it written in?
The most important parameter to configure correctly is "insertion_distance".
This distance is the depth that the filament is plunged back into the melt zone after the cooling moves complete. The goal is to melt just the stringy part of the filament tip, not to remelt the entire tip, which would undo the shaping done by the cooling moves. If this number is too high, filament will be rammed out of the hotend onto the wipe tower, leaving blobs. If it is too low, your tips will still have strings on them.

All user facing code is written in C++, and some legacy code as well as unit
tests are written in Perl. Perl is not required for either development or use
of PrusaSlicer.
###Explanation of configuration parameters:
Parameter Explanation Default Value
insertion_speed Speed at which the filament enters the melt zone after cooling moves are finished. 2000 (mm/min)
extraction_speed Speed at which the filament leaves the melt zone. Faster is generally better 4000 (mm/min)
insertion_pause Time to pause in the melt zone before extracting the filament. 0 (milliseconds)
insertion_distance Distance in mm for filament to be inserted into the melt zone. This setting is hardware and assembly specific, so it must be determined experimentally. For stock extruders, use 40-42mm. For bondtech BMG extruders, use 30-32mm. If blobs appear on the wipe tower or stringing starts getting worse rather than better, this value should be reduced. n/a
removal_pause Number of milliseconds to pause in the cooling zone prior to extracting filament from hotend. This pause can be helpful to allow the filament to cool prior to being handled by the bondtech gears. 0 (milliseconds)
toolchange_temp Temperature to extract filament from the hotend. Cooler temperatures are associated with better tips. off

The slicing core is the `libslic3r` library, which can be built and used in a standalone way.
The command line interface is a thin wrapper over `libslic3r`.

### What are PrusaSlicer's main features?

Key features are:
This method appears to be highly effective for removing fine strings of filament, but my hope is that this branch will only be needed for a short time. I hope that one day these methods will either be part of an official branch, or they will be incorporated into a plugin (since PrusaSlicer doesn't currently have a plugin manager, we might be waiting a long while for that option.)

* **multi-platform** (Linux/Mac/Win) and packaged as standalone-app with no dependencies required
* complete **command-line interface** to use it with no GUI
* multi-material **(multiple extruders)** object printing
* multiple G-code flavors supported (RepRap, Makerbot, Mach3, Machinekit etc.)
* ability to plate **multiple objects having distinct print settings**
* **multithread** processing
* **STL auto-repair** (tolerance for broken models)
* wide automated unit testing

Other major features are:

* combine infill every 'n' perimeters layer to speed up printing
* **3D preview** (including multi-material files)
* **multiple layer heights** in a single print
* **spiral vase** mode for bumpless vases
* fine-grained configuration of speed, acceleration, extrusion width
* several infill patterns including honeycomb, spirals, Hilbert curves
* support material, raft, brim, skirt
* **standby temperature** and automatic wiping for multi-extruder printing
* [customizable **G-code macros**](https://github.com/prusa3d/PrusaSlicer/wiki/Slic3r-Prusa-Edition-Macro-Language) and output filename with variable placeholders
* support for **post-processing scripts**
* **cooling logic** controlling fan speed and dynamic print speed

### Development

If you want to compile the source yourself, follow the instructions on one of
these documentation pages:
* [Linux](doc/How%20to%20build%20-%20Linux%20et%20al.md)
* [macOS](doc/How%20to%20build%20-%20Mac%20OS.md)
* [Windows](doc/How%20to%20build%20-%20Windows.md)

### Can I help?

Sure! You can do the following to find things that are available to help with:
* Add an [issue](https://github.com/prusa3d/PrusaSlicer/issues) to the github tracker if it isn't already present.
* Look at [issues labeled "volunteer needed"](https://github.com/prusa3d/PrusaSlicer/issues?utf8=%E2%9C%93&q=is%3Aopen+is%3Aissue+label%3A%22volunteer+needed%22)

### What's PrusaSlicer license?

PrusaSlicer is licensed under the _GNU Affero General Public License, version 3_.
The PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci.

### How can I use PrusaSlicer from the command line?

Please refer to the [Command Line Interface](https://github.com/prusa3d/PrusaSlicer/wiki/Command-Line-Interface) wiki page.

0 comments on commit 3ea3eb9

Please sign in to comment.