Single-point thread programming can be fun and easy

Author Kip Hanson
August 05, 2016 - 09:30am

G76 is an elegant single-point threading routine.

Before CNC lathes, single-point threading was a pain in the neck. Fast reflexes were needed to engage an engine lathe’s lead-screw dial at precisely the right time and disengage it before crashing into the shoulder. Around the time of the U.S. Bicentennial celebration, tape-operated lathes made all of this headache obsolete. 

No more fooling with clumsy gearboxes or levers. You simply programmed where you wanted the tool to go and the machine control took care of the rest. For example, the following is a possible program for a 3/4"-16 × 1"-long thread on the OD of a shaft:

G0 X1.0 Z0.2 (position the tool to clear the thread’s major diameter and three to four times its pitch in front of the part face)

X0.72 (rapid move to the diameter of the first pass)

G32 Z-1.0 F0.0625 (cut at a feed rate of 0.0625 ipr, or 1.588 mm/rev.)

G0 X1.0 (move to the X-axis start position)

Z0.2 (rapid to the Z-axis start position)

The last four lines are repeated, taking progressively shallower passes in the X-axis until the thread is completed. By swapping X for Z in the G32 line, the cycle will cut spiral, or scroll, threads across the face of a workpiece. Tapered threads are also possible by including an X-axis command with the G32 Z-movement. 

Powerful stuff, but G32 needs four lines of code for each threading pass and may require 100 or more lines to cut deep or large threads, especially in challenging materials such as nickel-based superalloys, where only a few thousandths can be removed per pass. 

Although G32 remains a useful and important function for tapping threads on mills and lathes, it is otherwise an outdated method of single-point threading. Enter G92, a slightly more modern approach to single-point threading:

G0 X1.0 Z0.2 (initial tool position for 3/4”-16 × 1”-long thread)

G92 X0.72 Z-1.0 F0.0625 (first pass)

X0.71 (second pass)

X0.672 (final pass)

Instead of 100 lines of code, only 25 or so are needed. Just don’t forget to clear the cycle with a G0 command to a safe position or bad things will happen. Both of these cycles are far better than cranking handles and watching dials, but they make it difficult to achieve one aspect of efficient threading available on even the ugliest, oldest engine lathe: compound infeed, something many learned at vo-tech school.

Compound infeed is achieved by tipping the compound rest on an engine or toolroom lathe at an angle—typically 29° or 30° for a 60° V-thread. While it’s possible to do the same thing with G32 and G92, it involves calculating the Z-axis offset amount for each single pass and adjusting the start position accordingly. Ugly at best. 

Turn to Elegant

Instead, G76 is an elegant single-point threading routine. With one or two lines of code, any thread form imaginable can be cut—British Standard to Buttress, Acme to Whitworth. Because G76 provides easy control over the infeed angle, tool life and thread quality improve, compared to the radial infeed methods offered by G32 and G92.

The older of the G76 cycles works like this:

G0 X1.0 Z0.2 (initial tool position)

G76 X0.672 Z-1.0 I0 K0360 A60 D0100 P1 F0.0625 

That’s it. The X and Z values represent the thread minor diameter and its length. F represents the feed rate. The I value can be used to create a tapered thread and is equal to the taper angle times its "length (better break out the trigonometry book). K is the radial thread height, and D is the depth of the first pass. P values 1 to 4 determine single-edge or double-edge cutting and whether a constant-amount or constant-depth material-removal algorithm is used. Refer to the control manual for your machine to see which is which. Also, note the missing decimal points in values I, K, A and D—mess this up by adding one and you’ll trigger an alarm. 

Last but not least is A, the infeed angle. Six settings—A0, A29, A30, A55, A60 and A80—are available. When cutting titanium, an angled infeed is the cat’s meow, but even with soft materials, better finish, accuracy and tool life are achieved by virtually “tipping the compound.” 

A second and more esoteric G76 uses two lines of code:

G76 P010260 Q0015 R0.001

G76 X0.672 Z-1.0 R0 P0360 Q0100 F0.0625

You can use the G76 G-code Generator on the Machining Doctor website and look at the code in different scenarios.

Let’s break it down. The P word in the first line is actually three separate commands of two digits each. The first pair (01) refers to the number of finish passes (0 to 99). Next comes the pullout value near the end of the thread, in this case 0.2 times the lead (also known as the chamfer). The final P-word pair is the infeed angle and uses the same rules as the other G76 routine. The Q word signifies minimum cutting depth, and the R word is the finishing amount for the final pass. 

The second line is easier to understand. The R value is equivalent to the I in the 10T example. P is the same as K, and Q corresponds to D. The constant-amount or constant-depth algorithm (P1 to P4) is determined internally by parameter settings. 

It’s important to know that feed hold is ineffective during the threading pass in all of these cycles. Hitting the emergency stop (the big red button) would probably stop the machine, but I’ve never tried it. Be sure to have all your ducks in a row before pushing cycle start. Also, spindle speeds must remain constant during threading. Don’t use G96 (constant surface speed) or change spindle speed mid-cycle. And don’t go too fast. Available rpm is determined by the machine’s maximum controllable feed rate; if you’re cutting an 8-pitch thread at 1,600 rpm, the Z-axis is traveling at 200 ipm (5,080 mm/min.). This is moving at a pretty good clip for most CNC lathes and may give unpredictable results.

A number of machine parameters determine how these threading cycles behave. Also, depending on the machine builder and control model, there may be details not mentioned here. Read the control manual or attend a class. If your threading routines are stuck in the 70s, kick off your disco shoes and get with the program, because G76 is the way to go. 

Thanks to Dan Knepp, CNC applications engineer for FANUC America Corp., Hoffman Estates, Ill., for his input.

Related Glossary Terms

  • computer numerical control ( CNC)

    computer numerical control ( CNC)

    Microprocessor-based controller dedicated to a machine tool that permits the creation or modification of parts. Programmed numerical control activates the machine’s servos and spindle drives and controls the various machining operations. See DNC, direct numerical control; NC, numerical control.

  • feed


    Rate of change of position of the tool as a whole, relative to the workpiece while cutting.

  • inches per minute ( ipm)

    inches per minute ( ipm)

    Value that refers to how far the workpiece or cutter advances linearly in 1 minute, defined as: ipm = ipt 5 number of effective teeth 5 rpm. Also known as the table feed or machine feed.

  • lathe


    Turning machine capable of sawing, milling, grinding, gear-cutting, drilling, reaming, boring, threading, facing, chamfering, grooving, knurling, spinning, parting, necking, taper-cutting, and cam- and eccentric-cutting, as well as step- and straight-turning. Comes in a variety of forms, ranging from manual to semiautomatic to fully automatic, with major types being engine lathes, turning and contouring lathes, turret lathes and numerical-control lathes. The engine lathe consists of a headstock and spindle, tailstock, bed, carriage (complete with apron) and cross slides. Features include gear- (speed) and feed-selector levers, toolpost, compound rest, lead screw and reversing lead screw, threading dial and rapid-traverse lever. Special lathe types include through-the-spindle, camshaft and crankshaft, brake drum and rotor, spinning and gun-barrel machines. Toolroom and bench lathes are used for precision work; the former for tool-and-die work and similar tasks, the latter for small workpieces (instruments, watches), normally without a power feed. Models are typically designated according to their “swing,” or the largest-diameter workpiece that can be rotated; bed length, or the distance between centers; and horsepower generated. See turning machine.

  • outer diameter ( OD)

    outer diameter ( OD)

    Dimension that defines the exterior diameter of a cylindrical or round part. See ID, inner diameter.

  • pitch


    1. On a saw blade, the number of teeth per inch. 2. In threading, the number of threads per inch.

  • superalloys


    Tough, difficult-to-machine alloys; includes Hastelloy, Inconel and Monel. Many are nickel-base metals.

  • tapping


    Machining operation in which a tap, with teeth on its periphery, cuts internal threads in a predrilled hole having a smaller diameter than the tap diameter. Threads are formed by a combined rotary and axial-relative motion between tap and workpiece. See tap.

  • threading


    Process of both external (e.g., thread milling) and internal (e.g., tapping, thread milling) cutting, turning and rolling of threads into particular material. Standardized specifications are available to determine the desired results of the threading process. Numerous thread-series designations are written for specific applications. Threading often is performed on a lathe. Specifications such as thread height are critical in determining the strength of the threads. The material used is taken into consideration in determining the expected results of any particular application for that threaded piece. In external threading, a calculated depth is required as well as a particular angle to the cut. To perform internal threading, the exact diameter to bore the hole is critical before threading. The threads are distinguished from one another by the amount of tolerance and/or allowance that is specified. See turning.

  • toolroom lathe

    toolroom lathe

    High-precision lathe built to hold tighter tolerances than regular, general-purpose lathes can hold. See lathe; turning machine.


Contributing Editor

Kip Hanson is a contributing editor for Cutting Tool Engineering magazine. Contact him by phone at (520) 548-7328 or via e-mail at