Skip to content
Main site

Pellet engine features

GingerSlicer is open source. Beyond the profile-level differences described in FGF settings, the fork carries a pellet-specific slicing engine. This page explains what those features do and when to reach for them — condensed from the slicer’s own engineering documentation.

A screw extruder is slow to change pressure. Filament printers change flow almost instantly and retract mechanically; a pellet screw can do neither. Three consequences drive everything on this page:

  1. Flow transitions must be ramped, not stepped — the melt zone responds like a reservoir, not a valve
  2. Travels are the enemy — there is no true retract, and melt degrades while the head moves without extruding
  3. Big beads cool slowly — layer time is governed by physics, not by a fixed timer

ERS limits how fast the volumetric flow is allowed to change (mm³/s per second). Instead of jumping from one flow rate to another between paths, the slicer inserts ramps, compensating for the slow pressure response of the screw.

Pellet mode extends this across travels too: on a filament printer pressure collapses during a travel, on a screw it does not — so the ramp-down before a travel and the ramp-up after it are planned deliberately. Travels shorter than ~3 mm are treated as continuous extrusion.

The classic signature of missing ERS is the bad seam: under-extrusion at the start of a path and a blob at its end, even with stringing solved.

single_path_mode chains the walls and sparse infill of each island into one continuous walk — the machine version of the golden DFM rule that the best toolpath has no travels at all. Wall ribs (single_path_wall_ribs) weld concentric wall loops together with staggered link segments so the whole wall structure prints as one path.

On nozzles from 1 to 8 mm, a single infill bead is often too wide — over-extrusion and blobs. fill_multiline prints each infill line as N parallel passes instead, distributing the flow. The engine widens the base spacing to match, so density stays correct.

Instead of a fixed minimum layer time, the slicer can compute it from physics: min_time = h² × k, where h is the thickest bead in the layer and k a per-material coefficient. The defaults were calibrated on a Ginger printer: PLA at 1.5 mm layer reaches 50°C in ~60 s, PETG reaches 80°C in ~30 s.

This is the engine-side face of the rule that layer time is the real bottleneck on a good print.

Parameter sweep — calibration without test models

Section titled “Parameter sweep — calibration without test models”

Calibration → Parameter tuning (per-layer sweep) varies one parameter layer by layer on any object you slice. Print a tower of your actual geometry, look at which height prints best, and read the value for that layer back from the G-code comments.

Sweepable parameters include the retraction group and the ERS group (slope, deceleration slope, min rate, ramp profile, ramp flow trims, pressure τ). The sweep is also scriptable headlessly with the CLI.

There is no mechanical retraction with pellets. “Retraction” is emulated with a brief screw decompression (reverse rotation) and by ramping flow down before travels. This is why filament-style retraction advice does not transfer to the G1.