Skip to content

Process Flow

This shows the work-flow for how P2PP works:

  1. Object is sliced in Slic3r

  2. Sliced object gcode is saved in a temporary (when using send to printer) or the user specified location (when using export).

  3. gcode is generated and saved to the location specified above in point 2.

  4. Slic3r Executes the Post-Processing script and at the same time, passes the full file path and file name of the exported gcode to the script (even if its the temporary location for send to printer!).

  5. P2PP Post Processing script/batch file is called looking something like this (for windows, similar for UNIX/OSX);

    c:\p2pp\p2pp.bat c:\temp\my_super_awesome_sliced_object.gcode

  6. The batch file sees this first argument and passes it to the p2pp script. the %1 in the batch file is replaced with the argument/filename supplied from Slic3r;

    c:\python27\python.exe c:\p2pp\p2pp.py -i c:\temp\my_super_awesome_sliced_object.gcode

  7. P2PP loads the GCODE into memory and looks for settings contained within the GCODE such as ;P2PP SLICEOFFSET=30. These are used during the calculation of the splice information.

  8. P2PP calculates the Omega headers that drive the Palette, generates the splices based on your ;P2PP MATERIAL_<some_material>_<some_material>_<heat>_<compression>_<cooling> settings and displays a summary. It removes/washes unwanted GCODE generated by Slic3r - it does this by simply commenting(;) the lines out.

  9. This is all merged with the object GCODE that was first passed to P2PP.

  10. The new GCODE is saved OVER the original file/temporary file that was first passed to P2PP.

  11. If you have told Slic3r to Export the GCODE, the process is now finished. If you told Slic3r to send to the printer, the normal routine for uploading files to octoprint is executed using the P2PP Processed version of the file.

  12. The print initialisation process now continues as normal where by loading the filament into the extruder after Palette has generated the filament/splices.