Home AI Automation Insights

What Is a CNC Post Processor? CAM, G-Code & Fusion Explained

CNC post processor converting Autodesk Fusion CAM toolpaths into machine-specific CNC code

A CNC post processor is software that converts toolpaths created in CAM software into machine-specific instructions that a CNC controller can execute. Depending on the machine, the output may be standard G-code, a controller-specific NC program, or a native format such as XCS, MPR, CIX or HOP.

In Autodesk Fusion, the post processor is typically a .cps script that sits between the CAM toolpath and the CNC machine. Its job is not to change the machining strategy itself, but to translate that strategy into the exact syntax, cycles, tool calls, coordinate transformations and machine functions required by the target CNC.

A perfectly simulated toolpath therefore does not automatically mean that the program is ready for the machine. The post processor is the final translation layer between CAM and real production.

Quick summary

  • What it is: A post processor converts CAM toolpaths into machine-specific CNC code.
  • Input: Toolpaths, tools, feeds, speeds, work coordinates and machining parameters generated by CAM.
  • Output: G-code, NC code or a native machine format such as .xcs, .mpr, .cix or .hop.
  • Autodesk Fusion: Fusion post processors are normally .cps scripts executed during Post Process.
  • Why different posts exist: CNC controllers, machine kinematics, tool changers, drilling heads, aggregates and supported cycles differ between machines.
  • When a custom post is needed: When a generic post cannot correctly control the actual machine configuration or required operations.
CAD Model
Part geometry
→
CAM Toolpath
Operations, tools, feeds, speeds
→
Post Processor
Machine-specific translation
→
Machine Code
G-code / XCS / MPR / CIX / HOP
→
CNC Controller
Executes the program

In this guide

  1. What is a CNC post processor?
  2. CAM to CNC code example
  3. Post processor vs G-code
  4. Why there is no universal post
  5. Woodworking CNC postprocessors
  6. Generic vs custom posts
  7. Autodesk Fusion
  8. Warning signs
  9. Development and testing
  10. FAQ

What Is a CNC Post Processor?

A CNC post processor is the translation layer between CAM software and a specific CNC machine.

The CAM system calculates where the cutting tool should move, how fast it should move, which tool should be used and how the machining operation should behave. The CNC controller, however, does not directly understand the internal toolpath representation used by the CAM system.

The post processor reads the CAM data and generates the program structure expected by the machine.

Depending on the CNC configuration, this can include:

  • axis coordinates and rotary-axis positions;
  • rapid and feed moves;
  • spindle speed and direction;
  • tool calls and automatic tool changes;
  • work offsets and coordinate systems;
  • drilling and boring cycles;
  • cutter compensation;
  • coolant or dust-extraction commands;
  • machine-specific macros;
  • aggregate selection;
  • 3+2 and 5-axis transformations;
  • program headers, safety blocks and end-of-program commands.

This is why the same CAM toolpath can require very different output for a Fanuc machining centre, a Siemens-controlled machine, an SCM Maestro system or a Holzher CNC running NC HOPS.

Example: From a Fusion Toolpath to CNC Code

Consider a simple contour operation created in Autodesk Fusion:

CAM operation

Operation: 2D Contour
Tool: T5 – Ø10 mm end mill
Spindle speed: 18,000 RPM
Cutting feed: 4,000 mm/min
Depth: -10 mm

Fusion knows how the cutter should move, but this information still has to be converted into the language of the target machine.

Example of G-code output

T5 M6
S18000 M3
G90 G54
G0 X100 Y50
G43 H5 Z20
G1 Z-10 F1000
G1 X200 F4000

A different machine may require completely different output for exactly the same CAM operation.

For example, a woodworking CNC may expect structured native operations rather than conventional ISO G-code:

Machine environmentTypical output
Fanuc / Haas / SiemensG-code / ISO NC
SCM Maestro / XilogXCS
Homag WoodWOPMPR
BiesseCIX / machine-specific output
Holzher NC HOPSHOP

The CAM operation is the same idea in every case. The post processor determines how that operation is expressed for the actual CNC machine.

Post Processor, G-Code and CAM Data: What Is the Difference?

These terms are closely related but they are not the same thing.

CAM toolpath data

The CAM system contains the calculated machining movements, tools, feeds, speeds, orientations and other information required to manufacture the part.

This data is still independent of the final syntax required by a specific CNC controller.

Post processor

The post processor reads the CAM data and translates it according to the rules of the target machine.

In Autodesk Fusion this logic is normally contained in a .cps file.

G-code / ISO code

G-code is one possible result of post processing. Commands such as G0, G1, G2, G3, M3 or M6 describe machine movements and functions.

Different controllers implement these commands and machine functions differently.

Native CNC formats

Some CNC systems use structured or proprietary program formats instead of conventional line-by-line G-code.

Examples include:

  • SCM Maestro / Xilog — XCS
  • Homag WoodWOP — MPR
  • Holzher NC HOPS — HOP
  • Biesse — CIX and controller-specific formats

The post processor must generate the format required by the target production workflow.

Why Is There No Universal CNC Post Processor?

CNC machines differ in much more than their brand name.

Even two machines using the same controller can have different:

  • axis configurations;
  • rotary-axis directions;
  • tool changers;
  • spindle configurations;
  • work-offset conventions;
  • drilling cycles;
  • probing functions;
  • machine limits;
  • safety positions;
  • aggregates;
  • macros;
  • 5-axis kinematics.

A standard three-axis milling machine may be able to use a relatively generic post processor with only minor configuration changes.

A woodworking machining centre with a drilling head, horizontal spindles, saw aggregate, multiple work planes or native WOP output usually requires significantly more machine-specific logic.

The purpose of a post processor is therefore not simply to produce valid syntax. It must produce code that matches the real physical and software configuration of the CNC machine.

Older CNC controllers can introduce additional limitations such as restricted memory or slow block processing. See our guide to using Autodesk Fusion with older CNC machines.

Why Are Woodworking CNC Post Processors Different?

Woodworking CNC machines often combine functions that are uncommon on conventional metal-cutting machining centres.

A single machine may contain:

  • a main routing spindle;
  • vertical drilling spindles;
  • horizontal drilling spindles;
  • a multi-spindle drilling head;
  • saw aggregates;
  • angle heads;
  • multiple vacuum zones;
  • pod-and-rail positioning systems;
  • automatic workpiece positioning;
  • 3-axis, 3+2 or simultaneous 5-axis machining.

The machine may also use a native programming environment such as SCM Maestro, Homag WoodWOP, Biesse software or Holzher NC HOPS.

This means that a woodworking post processor may need to translate a Fusion operation into a structured machine operation rather than simply outputting XYZ coordinates as standard G-code.

For example, a drilling operation created in Fusion may need to become a native drilling block that tells the CNC which spindle in the drilling head to activate.

A saw operation may need information about aggregate orientation and machining plane.

Five-axis machining additionally requires the post processor to understand the real kinematics and rotary-axis behaviour of the machine.

Example: Autodesk Fusion → SCM Maestro

SCM machines using Maestro or Xilog can use a machine-specific Fusion post processor to generate structured XCS output instead of generic anonymous G-code.

See the SCM Maestro XCS postprocessor →

Read more about using Fusion for woodworking CNC and machine-specific CAM workflows.

Generic vs Custom Post Processor

RequirementGeneric post processorMachine-specific custom post
Standard 3-axis millingUsuallyYes
Basic ISO G-codeUsuallyYes
Machine-specific tool changeLimitedYes
Drilling aggregatesLimitedYes
Horizontal boringLimitedYes
Saw aggregatesUsually noYes
Native woodworking formatsUsually noYes
Custom machine macrosLimitedYes
3+2 machiningDependsYes, if configured
Simultaneous 5-axisMachine dependentYes, if configured
Machine-specific safety logicLimitedYes

A generic post processor is not automatically a bad solution. For a standard machine using common controller conventions, it may be exactly what is needed.

A custom post becomes necessary when the output must reflect machine-specific hardware, controller behaviour, native file formats or production rules that the generic configuration does not know about.

How Does a Post Processor Work in Autodesk Fusion?

Autodesk Fusion separates CAM toolpath calculation from machine-code generation.

You first create and simulate machining operations inside the Manufacture workspace. When the toolpaths are ready, Fusion runs the selected post processor during the Post Process step.

Fusion post processors normally use the .cps format.

A post processor can react to events such as:

  • program start;
  • new machining operation;
  • tool change;
  • rapid movement;
  • linear movement;
  • circular interpolation;
  • work-plane changes;
  • drilling cycles;
  • spindle changes;
  • program end.

The post then converts those events into the structure expected by the target CNC.

Code example

function onOpen() {
  var machine = getMachineConfiguration();

  writeComment(
    "Machine: " +
    machine.getVendor() +
    " " +
    machine.getModel()
  );

  writeBlock(
    gFormat.format(90),
    gFormat.format(40),
    gFormat.format(80)
  );
}

This is only a simplified example. A production post processor may contain logic for machine limits, rotary axes, aggregates, custom drilling cycles, native output formats and safety behaviour.

Cutter compensation is another example of the relationship between CAM settings and post-processing logic. When Fusion uses In Control, Wear or related compensation modes, the post processor must generate the appropriate lead-in moves and controller commands. See our guide to tool compensation in Autodesk Fusion for a practical example of how CAM settings affect the generated CNC program.

Warning Signs That Your Post Processor Needs Attention

A reliable production post processor should minimise repeated manual corrections between CAM and the machine.

Typical warning signs include:

You manually edit the program after every export

If the same lines have to be changed every time a program is generated, the correction probably belongs in the post processor rather than in the operator’s daily workflow.

The same error appears in the same type of operation

Repeated errors during tool changes, drilling, work-plane changes or program starts usually point to a repeatable post-processing rule that needs to be corrected. For a real woodworking example, see our Autodesk Fusion and Holzher NC HOPS integration guide.

CAM simulation is correct but the CNC behaves differently

Simulation proves the toolpath strategy inside CAM. It does not guarantee that every machine-specific command in the final NC program is correct.

Tool numbers, feeds or spindle speeds do not match

This can happen when CAM output and the machine’s own tool database or macros use different rules.

The program works, but operators do not trust it

If every program requires extensive manual verification because nobody trusts the generated output, the post processor has not yet created a reliable CAM-to-machine workflow.

How Is a Custom CNC Post Processor Built and Tested?

Developing a reliable post processor starts with the actual CNC machine, not just the machine brand.

1. Identify the exact machine configuration

Required information typically includes:

  • CNC manufacturer and model;
  • controller or machine software;
  • number of axes;
  • rotary-axis configuration;
  • tool changer;
  • drilling heads and aggregates;
  • supported program format;
  • machine-specific options.

2. Collect proven machine programs

A program that has already run successfully on the CNC is one of the most useful references during development.

It shows how the real machine expects:

  • program headers;
  • tool calls;
  • work offsets;
  • drilling;
  • spindle commands;
  • rotary positioning;
  • program termination;
  • special machine functions.

3. Configure the post-processing logic

The post processor is adjusted to produce the required output structure and machine behaviour.

4. Generate controlled test programs

Testing should begin with simple operations before moving to more complex functions.

Typical test sequence:

  1. program start and end;
  2. tool change;
  3. XYZ positioning;
  4. contour milling;
  5. pockets;
  6. drilling;
  7. work-plane changes;
  8. aggregates;
  9. indexed multi-axis machining;
  10. simultaneous 5-axis machining where required.

5. Validate on the real machine

Final validation must be performed safely on the actual CNC configuration.

Simulation alone cannot verify every controller setting, tool table, machine parameter or physical machine behaviour.

6. Production handover

After validation, the final post processor and its configurable properties should match the agreed machine configuration and production workflow.

Supported CNC Machines and Post Processors

CCSOFTCZ develops Autodesk Fusion postprocessors for both conventional CNC controllers and woodworking machining centres.

Supported workflows include machines and systems from SCM, Holzher, Homag, Biesse and other CNC manufacturers. See the full postprocessor list of supported CNC postprocessors.

View supported Autodesk Fusion postprocessors →

Need a Post Processor for Your CNC Machine?

If your CAM toolpaths are correct but the generated machine program still requires manual edits, the problem may be in the post-processing layer.

Send us:

  • CNC manufacturer and model;
  • controller or machine software;
  • number of axes;
  • required output format;
  • sample program that already works on the machine;
  • typical machining operations.

We can check whether an existing Autodesk Fusion postprocessor can be adapted or whether your machine requires a custom configuration.

Frequently Asked Questions About CNC Post Processors

What is a CNC post processor?

A CNC post processor is software that converts CAM toolpaths into the machine-specific program required by a CNC controller. The result may be G-code, NC code or a native format such as XCS, MPR, CIX or HOP.

Is a post processor the same as G-code?

No. G-code is one possible output of a post processor. The post processor is the translation logic that converts CAM data into the program format required by the CNC.

Does Autodesk Fusion include post processors?

Yes. Autodesk Fusion supports post processors and provides configurations for many common CNC controllers. Machine-specific configurations, woodworking CNC systems, custom aggregates or specialised multi-axis machines may require additional development or modification.

Can one post processor work with multiple CNC machines?

Sometimes, if the machines use the same controller, kinematics and production configuration. However, machines with different axis layouts, tool changers, aggregates, macros or controller settings may require separate configurations even when they come from the same manufacturer.

What happens if I use the wrong post processor?

The CNC may reject the program, execute incorrect machine functions or produce movements that do not match the intended CAM toolpath. A new or modified post processor should always be tested using a controlled validation process before production use.

When do I need a custom post processor?

A custom post processor is commonly required when the CNC uses machine-specific macros, native file formats, drilling or saw aggregates, unusual axis configurations, 3+2 machining, simultaneous 5-axis machining or other functions that a generic post does not support correctly.

What information is needed to create a CNC post processor?

The most useful information is the exact CNC model, controller or machine software, number and arrangement of axes, installed aggregates, tooling configuration, required output format and at least one proven machine program.

Can Fusion output formats such as XCS, MPR, CIX or HOP?

Fusion can generate machine-specific output when the selected post processor has been developed to create that format. The output capabilities therefore depend on the post processor rather than the CAM toolpath alone.

How much does a custom CNC post processor cost?

The cost depends on the machine configuration, controller, number of axes, required operations and output format. A basic three-axis G-code post is significantly simpler than a post processor for a five-axis woodworking CNC with drilling heads, aggregates and native machine output.

Marek Skoták
Marek Skoták

Marek Skoták has 18+ years of experience in CNC, CAD/CAM integration, Autodesk Fusion postprocessor development and manufacturing automation. He develops and implements machine-specific CAM workflows for woodworking and metalworking CNC machines.

Need an Autodesk Fusion postprocessor for your CNC machine?

Send us your machine details, sample NC code and required output format. We can prepare a custom postprocessor for Autodesk Fusion, including machine-specific cycles, drilling, saw aggregates and 3 to 5 axis machining.

Request a quote →
← Back to all articles