Standard milling cycles (FANUC-type)
| Code | Cycle |
|---|---|
G81 | Spot / simple drilling |
G82 | Drilling with dwell at bottom |
G83 | Peck drilling (full retract) |
G73 | High-speed peck (chip break) |
G84 / G74 | Tapping right-hand / left-hand |
G85, G86, G89 | Boring variants |
G76 | Fine boring with spindle orient and shift |
G80 | Cancel cycle |
G98 vs G99 retract
G00 Z50. (initial level)
G99 G81 X10. Y10. Z-12. R2. F150. (retract to R between holes)
X30.
G98 X50. (retract to initial level - clears a clamp)
X70.
G80
The post chooses G98 or G99 based on clearance settings in CAM, so tools don't hit clamps or bosses between holes.
Cycles on other controllers
- SINUMERIK:
CYCLE81–CYCLE89,CYCLE84/CYCLE840for tapping, often withMCALL. - Heidenhain:
CYCL DEF 200,203,205,207with Q parameters. - Okuma and others: own formats and parameter orders.
Tapping details
- Rigid tapping activation (e.g.
M29on some FANUC machines). - Feed = pitch × rpm (per minute) or pitch (per rev mode).
- Peck tapping support on some controllers.
When to expand cycles
If the controller lacks a cycle, or the machine is in a mode where cycles aren't allowed (for example certain multi-axis modes), the post outputs equivalent G0/G1 moves instead. This is a post property, not a manual edit.
Cycles keep programs short and editable, but only if the post outputs every parameter correctly.
Cycle handling in posts
See our CNC post processor development service and subprogram and macro generation.