Menu Close


Problem: You can use use your CNC machine to mill / etch a PCB or some other design. If you do so the results can be mixed because the tool depth is fixed throughout and the material you are etching onto may be warped slightly

Autoleveller may be able to help here by varying the depth of the tool during the milling process

A CNC Isolation milled PCB creation without using the AutoLeveller
A CNC milled circuit without using the AutoLeveller
A CNC Isolation milled PCB creation using the AutoLeveller
A CNC milled circuit using the AutoLeveller

How does it know what depth the tool should be at any point on the board? By first probing the material in several places and recording those probe values, we can get a better estimate of the correct tool depth for those points (or any point in between those points using the bi-linear interpolation algorithm)

All we need to do now is modify the original GCode to reflect these corrected values

Top view (version 0.9.5) of the tool-paths of a PCB from its loaded GCode.
Bottom view (version 0.9.5) of the tool-paths of a PCB from its loaded GCode.
A 3D visualisation (version 0.9.5) of the probing log file / Raw Probe File (RPF)

How do I use Autoleveller? Just load your GCode into Autoleveller and make any adjustments to the probe mesh values you need. If you are happy with those values you may not need to make any changes.

Click “Autolevel” and it will write an autolevelled version of your original GCode file to disk. You can then just load this file into your CNC control software (Mach3, LinuxCNC etc.) and run it as you normally would.

Click “Generate PFG” and just the probing stage is written to the output GCode file; the milling / etching part will be done in a separate GCode file. Running the file, the probe values will be written to a separate log file which can then be viewed in Autoleveller. You can then use 2-stage levelling to perform Autolevelling.

Note: Autoleveller simply reads GCode files and outputs modified GCode files. It does not have any direct interaction with your control software during this process. Autoleveller is not a script or plugin etc.


2-stage levelling is shown here with AutolevellerAE v0.7.6 and the use of the RPF file.

Another user of AutoLeveller etches a design on a black anodized extruded aluminium half-case.

A single side of a PCB is etched using the AutoLeveller to produce the necessary GCode file.