What's new
What's new

A Robust New Engraving Canned Cycle for Fanuc


Jun 26, 2022

A New Powerful Engraving Canned Cycle for Fanuc and HAAS Controllers!

After many months I have finally completed the first version of my engraving system. I decided to make this system after years of dealing with inadequate subprograms. What resulted was, what I would consider, the most power engraving canned cycle yet produced. This system will completely replace CAD/CAM engravings and give you complete control right from your machine! Parametric programs can now include engravings that properly scale with part dimensions. Dynamic engravings such as Serial Numbers, Sequential Lettering, Job/ Batch Numbers, and anything you can dream up, it is all possible and easy to use.


  • Shaped Engravings
    • Linear​
    • Arc
    • Cylindrical Rotary for 4th Axis (HAAS ONLY)​
  • Alignment and Justification System
    Perfect Positioning with a powerful system that allows you to choose how your engraving is positioned from its origin point allowing you to easily center or align your engraving along part features.​
  • Handcrafted Characterset
    Complete with over 60 Characters and Symbols are all meticulously designed specifically for this system, with the ability to be scaled and rotated without optional GCodes such as G68 and G51.​
  • Dynamic Serial Numbers and Sequential Letters
  • Decimal to Word Conversion
  • Professional Documentation
  • Supporting Excel Sheets With A Programmer And Cheat Sheets
  • Robust Error System To Prevent Crashes
  • Sensible Defaults Values For Most Inputs
  • Use Macro B Logic To Make Conditional Engravings Elements
This engraving system was created to fill in the gap left by CAM systems' inability to create dynamic engravings and the difficulty of making nice looking engravings without using a CAM system. This engraving program is incredibly versatile, it was designed to be easy to use for both simple and complex engravings, while at the same time allowing for extreme control on positioning and output. This system will allow you to easily program engravings that tightly follow contours, edges, and fit neatly between different part features all without a requiring complicated CAM software. Furthermore, this system allows complete control of the engraving text and changes to the positioning directly from the machine controller. While a CAM system can directly program engravings, they lack one feature that this system does easily and very well; serial numbers, sequential letters, and the ability to have dynamically changing engravings. With a creative programmer, this system has very few limitations and dozens of customizable features and options to fine tune every aspect of how the text is engraved. This system will produce smooth engravings, with true arcs, that were designed and carefully handcrafted specifically for this application, complete with over 60 characters.


This system only uses Five persistent #500 level variables, they can be mass changed by hand to avoid conflicts with other subprograms, like Renishaw Probes. All other calculations are stored in nested local variables. A user-defined range of variables(which is what the #500 variables are used to manage) is used to create a list of character codes to engrave.

Example Program

O1000(Simple Dynamic Engraving Program)
IF [ #1 EQ 123] GOTO123
/GOTO1 (Block Delete On Only For First Part)
#101= 1. (Job Letter, A=1, B=2...)
#100= 53842. (Job Number)
#102= 1. (Starting Serial Number)
N1 G28 G91 Z0
T1 M0
G54 M08
G65 P80089 X0 Y0 B1000. C123. U1.

N123(Engrave Job Number and Serial Number)
G65 P80088 A#100 (Job Letter)
G65 P80088 B#101 S1. (Job Number)
G65 P80088 D102. K1. E3. (-###)

How To Download Files

  1. Go to https://github.com/Metalsoul212/Engraving-Subprogram
  2. Click on the Green Code button and select Download ZIP
  3. Unzip files somewhere on your desktop
  4. Read the included Documentation file
  5. Transfer either the Annotated or Reduced Memory .NC files into your Machine Controller

Please let me know your thoughts in the comments!
I am also open to suggestions for improving it further.
Last edited:
While not many here used Catia machinist it amazes me that to this day there is NO engraving program for this software which can do pretty much everything else.