Skip to content

KISSlicer post-processor that adds coast functionality, with separate coast lengths for prime pillars and regular paths.

License

Notifications You must be signed in to change notification settings

626Pilot/KISSCoast

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

!!! WARNING !!!

This is alpha-quality software. I've been testing it for awhile, and I THINK it should work on any file you give it, but I can't guarantee that. It would be a good idea for you to sit near your printer while it's printing.

KISSCoast

KISSlicer post-processor that adds coast functionality, with separate coast lengths for prime pillars and regular paths. Multiprocessing was recently added, reducing the time to process a ~15MB G-code file (537,306 lines) from about six minutes to slightly less than five seconds on my machine.

This script requires PHP command-line support. You don't need to have a web server installed, as we are only using the PHP engine to run the script. This post-processor is developed on Linux and has not been tested on Windows or Mac OS X, although it should still be able to run unmodified.

WARNING: I haven't tested these commands on Windows or Mac. What it says below is my best guess. If you figure out how to do it on your OS, and the instructions differ from what I have below, please let me know by opening an issue here: https://github.com/626Pilot/KISSCoast/issues

Prerequisites

Linux:

  • Debian and derivatives (like Ubuntu): sudo apt-get install php-cli
  • Other distros: Check your package manager for php-cli, or failing that, php.

Windows:

Mac:

If using Linux or Mac, you can do this to make the script execute by itself: chmod a+x KISSCoast.php

Usage

In KISSlicer, go to Printer -> Firmware and enter the correct line for your OS. Replace x.xx and y.yy with the values you want.

Linux / Mac:
"/path/to/KISSCoast.php" --coast=x.xx --primePillarCoast=y.yy --minExtrusionLength=zz --file="<FILE>" --overwrite --processes=32

Windows:
"C:\path\to\PHP\php" -q "C:\path\to\KISSCoast.php" --coast=x.xx --primePillarCoast=y.yy --minExtrusionLength=zz --file="<FILE>" --overwrite --processes=32

You should try printing some small calibration pieces with different settings before trying anything large. Recommended starting values:

  • coast: 15
  • primePillarCoast: 60
  • minExtrusionLength: 10 (or more)

On my 2012-era computer with four hyperthreaded cores (8 virtual), I got very good results (under 5 seconds) with --processes=32. You might be able to get it running faster with some different number. 32 seems to be a good starting point.

You can also run the script directly from a shell or command prompt. Just replace with the path to a G-code file you want to test with. You can use test.gcode (included) if you like. If you want to see the script spew a bunch of debug info, put --verbose at the end of the command line. If you don't want it to overwrite your input g-code, so that (for example) you can compare the input and output, don't use --overwrite and it will send the output to (filename).gcode_out.

About

KISSlicer post-processor that adds coast functionality, with separate coast lengths for prime pillars and regular paths.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages