Actions

What is a post processor?

From PROBOTIX :: wiki

What is a Post Processor?

A post processor is a configuration file that customizes generic G-code to work with a specific CNC machine. Different controllers have unique requirements—for example, LinuxCNC requires a % symbol at the beginning and end of each program, while some controllers need line numbers, and others do not.

Post processors define:

  • Units (inch vs. metric)
  • File extensions (e.g., .ngc)
  • Line numbering preferences
  • Pre-amble and post-amble settings
  • Setup routines (coordinate systems, path optimization, etc.)
  • Movement classifications (rapid, feed, arc moves, etc.)

Popular CAM software like Mach3, LinuxCNC, and CNC USB Control Software can use generic G-code post processors, though some modifications may be needed for optimal performance.

Available Post Processors

We provide post-processors for the following software:

Modifying Post Processors

Post processors are plain text files that can be edited in Notepad or any text editor. They are typically easy to understand, and most CAM software includes documentation for customization.

Why Modify a Post Processor?

Modifications allow you to optimize G-code for your specific workflow. For example:

  • Removing unnecessary moves to X/Y zero at the beginning of a job.
  • Adjusting end-of-job behavior, so the machine moves out of the way instead of returning to X/Y zero.

Important Considerations for LinuxCNC

  • Specify a coordinate system (e.g., G54) to ensure proper execution. Running a machine without this can be dangerous.
  • Use G64 path optimization and adjust the P tolerance parameter based on your project requirements.

LinuxCNC Minimum Preamble Example

A proper LinuxCNC preamble should include:

  • Coordinate system (G54-G59, G59.1, G59.2, or G59.3)
  • Units (G20 for inches or G21 for millimeters)
  • Positioning mode (G90 for absolute or G91 for incremental)
  • Arc plane selection (G17 for X/Y)
  • Cancel tool compensation (G40 for diameter, G49 for length)
  • Cancel work offsets (G92.1)
  • Path optimization (G64 with a defined P tolerance)

Example LinuxCNC Preamble

G54 G20 G90 G17 G40 G49 G92.1 G64 P0.010

By customizing your post processor, you can eliminate inefficiencies, improve machining accuracy, and tailor G-code output to your exact needs.