30-Second Summary: Standard peck cycles (G73, G83) work for holes up to ~8×D. Beyond that, you need custom macro cycles, progressively decreasing peck depths, or specialized deep hole drilling cycles. Choosing the wrong cycle increases cycle time or risks tool breakage. For gundrilling and BTA drilling on dedicated machines, continuous feed (no peck) is used — peck cycles apply to carbide deep hole drills on machining centers.
Standard Canned Cycles
| Code | Name | Retract Behavior | Best For | Depth Limit |
|---|---|---|---|---|
| G73 | High-speed peck drill | Short retract (chip break distance d) | Moderate depths, chip breaking in ductile materials | ~4.5×D |
| G83 | Full peck drill | Full retract to R-plane | Deep holes requiring thorough chip evacuation | ~8×D |
| G81 | Standard drill | No peck — continuous feed | Shallow holes < 3×D | < 3×D |
| G74 (Fanuc turning) | End face peck drill | Short retract R per peck | Deep drilling on lathes (Z-axis) | < 8×D |
💡 G73 vs G83 trade-off: G73 is faster (shorter retract) but chip evacuation degrades with depth. G83 clears chips completely but adds cycle time. For holes > 8×D, both cycles need modification or a custom macro approach. Important: For solid carbide deep hole drills, prefer continuous feed with high-pressure through-spindle coolant. Peck cycles increase the risk of chipping the carbide edge at re-entry.
Peck Depth Strategy
| L/D Ratio | Recommended Initial Peck Depth | Recommended Cycle | Notes |
|---|---|---|---|
| 3:1–5:1 | 1.5–2.0 × D | G83 | Standard peck cycle sufficient |
| 5:1–8:1 | 1.0–1.5 × D | G83 | Reduce feed by 20% |
| 8:1–12:1 | 0.5–1.0 × D | G83 or custom macro | Progressive decrease recommended |
| 12:1–20:1 | 0.3–0.5 × D, decreasing with depth | Custom macro | Use pilot hole; feed reduction factor 0.6× |
| > 20:1 | 0.2–0.3 × D, decreasing progressively | Custom macro only | Pilot hole required; reduction factor 0.5× |
Fanuc Macro B — Progressive Deep Hole Cycle
For holes exceeding 8×D on Fanuc-controlled machining centers, this custom macro progressively reduces peck depth and feed rate as the hole deepens:
O9001 (Deep Hole Macro — Fanuc Macro B) Arguments: #1 = Z final depth (absolute) #2 = Initial peck depth (Q) #3 = Min. peck depth (Qmin) #4 = Decrease rate (percentage, e.g. 0.1 = 10%) #7 = Dwell at bottom (seconds) #9 = Feed rate (mm/min) #100 = #5043 (current Z position) #101 = #100 - #2 (first peck target) #102 = #2 (current peck depth) WHILE [#101 GT #1] DO1 G01 Z#101 F#9 G00 Z#100 (retract to previous safe Z) #100 = #101 (update safe Z) #102 = #102 * (1 - #4) (reduce peck depth) IF [#102 LT #3] THEN #102 = #3 (clamp to minimum) #101 = #101 - #102 (next peck target) IF [#101 LT #1] THEN #101 = #1 (don't overshoot final depth) END1 G01 Z#1 F#9 (final depth) G04 P#7 (dwell) G00 Z[#5043] (retract to initial plane) M99
Usage example: For a 20 mm diameter drill, 400 mm deep hole (L/D = 20:1), start with 15 mm peck depth, decrease by 10% per peck, minimum 3 mm peck, dwell 0.5 seconds:
G65 P9001 Z-400. Q15. R3. T0.5 I0.1 F120.
Fanuc G74 — Deep Hole Drilling on Lathes (Turning Centers)
For deep hole drilling on Fanuc-controlled lathes, G74 provides peck drilling along the Z-axis with chip breaking:
G74 R1.0 ; (R = retract amount per peck in mm) G74 Z-60. Q5000 F0.12 ; (Z = final depth, Q = peck increment in microns, F = mm/rev)
Parameters: Q is specified in microns (5000 = 5 mm per peck). R is the retract distance after each peck. The cycle automatically rapids back to the start of the last peck before feeding again.
Siemens Sinumerik — CYCLE83 Deep Hole Drilling
Siemens controllers use the CYCLE83 cycle for deep hole drilling with full parameter control:
CYCLE83(RTP, RFP, SDIS, DP, DPR, FDEP, FDPR, DAM, DTB, DTS, FRF, VARI)
| Parameter | Meaning | Example Value |
|---|---|---|
| RTP | Retract plane (absolute) | Z=2.0 |
| RFP | Reference plane (absolute) | Z=0.0 |
| SDIS | Safety clearance | 1.0 |
| DP | Final depth (absolute) | Z=-100.0 |
| DPR | Final depth (relative to RFP) | 100.0 |
| FDEP | First peck depth | 15.0 |
| FDPR | First peck depth (relative) | — |
| DAM | Subsequent peck depth (reduction amount) | 2.0 |
| DTB | Dwell at depth (seconds) | 0.5 |
| DTS | Dwell at start of retract (seconds) | 0.0 |
| FRF | Feed rate factor for first peck | 0.8 |
| VARI | Operation mode (0=chip break, 1=full retract) | 1 |
Note: On Siemens controls, G74 is not a drilling cycle — it is used for returning to the machine reference point. Always use CYCLE83 for deep hole drilling.
Heidenhain — Cycle 241 (Single-Lip Deep Hole Drilling)
Heidenhain controllers offer Cycle 241 specifically for single-lip deep hole drilling (gundrilling). Key parameters include programmable spindle speed reduction and coolant control:
CYCL DEF 241 SINGLE-LIP DEEP HOLE DRILLING Q200 = +2 ;SET-UP CLEARANCE Q201 = -400 ;DEPTH Q206 = +120 ;FEED RATE FOR PLUNGING Q211 = +0.5 ;DWELL TIME AT DEPTH Q203 = +0 ;SURFACE COORDINATE Q204 = +50 ;2ND SET-UP CLEARANCE Q208 = +300 ;RETRACTION FEED RATE Q256 = +20 ;STARTING ANGLE Q257 = +0 ;ANGLE INCREMENT
Heidenhain Cycle 205 (Universal Pecking) provides variable peck depth with chip breaking, suitable for deep hole drilling on machining centers. Q parameters control initial and subsequent peck depths, dwell time, and feed rate reduction.
Specialized Cycles by Controller
| Controller | Primary Deep Hole Cycle | Key Features |
|---|---|---|
| Fanuc / Haas | G83 (standard), G73 (chip break) Macro B custom cycles for L/D > 12:1 | Modifiable with custom macros; Q parameter for peck depth; variable retract amounts |
| Heidenhain | Cycle 241 (single-lip) Cycle 205 (universal pecking) | Single-lip specific with speed control; programmable spindle reduction; coolant on/off per step |
| Siemens Sinumerik | CYCLE83 | Comprehensive parameter set; progressive peck reduction; dwell at depth and retract; feed rate factor |
| Mazak (Mazatrol) | M+ / M- codes integrated in drilling unit | Conversational programming; deep hole parameters in drilling unit setup |
| Okuma (OSP) | M-codes with custom macro variables | Custom macro with deep hole drilling canned cycle options |
Programming Tips for Deep Hole Drilling
- Reduce feed at break-through — reduce feed by 50% for the last 1–2 mm before break-through to prevent exit burrs and edge chipping
- Dwell at the bottom — add a short dwell (P0.5–P1.0 second) at full depth to allow the hole to stabilize and clear residual chips
- Spindle speed reduction at re-entry — when re-entering after a full retract, reduce speed to ≤50 RPM until the tool is within 1 mm of the previous depth; then ramp to full speed
- Coolant control — keep coolant ON during retraction to flush chips; a coolant-off retract leaves chips in the hole that the next peck must recut
- G73 chip break distance — set Q parameter (peck increment) to 0.5–1.0 mm for chip breaking (small retract), not as a depth advancement increment
- Feed reduction for deep holes — for L/D > 6×D, reduce feed by 20%; for L/D > 12×D, reduce by 30-40% from standard surface drilling values
- Pilot hole programming — drill pilot hole 1–2×D deep using a separate tool call; point angle of pilot drill should be equal to or larger than the deep hole drill to ensure center-first contact
💡 Progressive peck formula: Peck depth at stroke n = Initial Peck × (1 − Decrease Rate)n−1. Example: Initial peck = 20 mm, Decrease rate = 10% → Stroke 2 = 18 mm, Stroke 3 = 16.2 mm, Stroke 4 = 14.6 mm ... Each stroke uses G73-style chip breaking (short retract), with a full G83-style retract every 3–4 strokes for thorough chip clearing.
⚠️ Carbide drill caution: Peck drilling with solid carbide deep hole drills increases chipping risk. The repeated shock of re-entering the cut at each peck can fracture the cutting edge. For carbide deep hole drills, prefer continuous feed (gundrilling or BTA style) with high-pressure through-spindle coolant. If pecking is unavoidable, use very small retract distances (0.5–1.0 mm, G73 style) and reduce feed at re-entry by 50% for the first 0.5 mm of each peck.