CNC Offsets Explained [D, H and Work Offsets]

a graphic of a cnc machine with text that says learn g code today offsets

What is a CNC offset?

Offsets are the adjustments that the CNC machine will make based on different features of the machine.

There are three types of offsets:

  • Diameter offsets
  • Height offsets
  • Work offsets

Want to learn more about CNC G Code?

Types of CNC offsets

Each of the three offset types has a specific purpose. 

They each allow for flexibility when running your program. This includes allowing you to use the same program even if you need to change cutting tools.

Height (H) offsets

illustration of a cnc cutting tool that shows what an H offset is

The height offset refers to the location difference between the spindle and the cutting tool.

This difference in location is stored in the machines offset library. Height offsets are usually stored in the same number location as the tool.

mach 3 tool offset table
Example offset library

For instance, T01 (tool 1) and H01 (height offset 1) or T05 (tool 5) and H05 (height offset 5).

This makes it easier to match up the necessary offset with the correct tool.

The G43 code is used to turn on tool length compensation using an H offset.

For example, G43 H01 turns on tool length comp with the first H offset.

Once tool length compensation is turned on with the G43 code, it will stay on until it is turned off with the G49 cancel code or switched to a new H offset such as H02 or H05.

Diameter (D) offsets

illustration of a cnc cutting tool that shows what an D offset is

While H offsets adjust for the length of the cutter, D offsets compensate for the diameter of the cutting tool.

D offsets are also stored in the machines offset library. D offsets are usually stored in the same number location as the tool they are used with.

T04 (tool 4) and D04 (diameter offset 4) would usually be matched together.

G41 and G42 are the two cutter compensation modes that are used with D offsets.

They tell the machine to adjust the path of the cutter so that the edge of cutter follows the path given in the CNC program. G41 shifts the cutter left and G42 shifts the cutter right.

illustration that shows how a CNC will act when using cutter compensation left with the G41 code
illustration that shows how a CNC will act when using cutter compensation right with the G42 code

With cutter compensation off using the G40 code, the machine will move the center of the cutter along the path in the program. 

This can make it difficult to get the correct size, especially when using different or multiple cutters.

illustration that shows how a CNC will act when there is no cutter compensation mode active

Telling the machine the size of the cutters with your D offsets allows it to account for them and run the same program with different tools ang get the same size part. 

If you didn’t have cutter compensation, then you would need to create a new version of the program every time you wanted to use a new tool.

Just like tool length compensation with G43, cutter comp with G41 and G42 are modal commands so those adjustments will stay on until switched or turned off with the G40 code.

Work offsets (G54-G59)

Work offsets are basically the stored location of your part in the machine. 

You use them to set the XYZ zero location when working in absolute positioning mode.

There are multiple work offsets available. 

The six most common are G54 through G59. Most machines will also have others available, but the format varies from machine to machine.

visual to show cnc work offsets G54-G59 with the zero locations shown
Multiple work offsets being used in one CNC machien

Fanuc controls are one of the most common controllers. If they allow additional work offsets, the Fanuc format for using them is G54.1 P1, G54.1 P2 and so on. The P number is the additional offset.

In most cases the six offsets of G54 through G59 that are common on all machines will be more than enough.

One benefit of having multiple work offsets is how easy they make it to run multiple parts at once. You can set the work offset for multiple parts and run the same program with a new work offset each time.

This works well when you a fixture that holds multiple parts in your CNC.

Where are offsets stored?

Offsets are stored in the tool offset table or library.

This tool table allows you to describe the different dimensions of the tool that will affect the program.

This includes the tool radius or diameter (D offset) and its length (H offset).

Offset Library
Tool offset library on an Okuma CNC machine

Some machines allow you to store the H and D offsets together in one offset. In this example, tool T01 would use both H01 and D01 as offsets. 

Other machines may require the offsets to be stored individually. 

When the offsets are stored individually, the programmer should maintain a system so that the offset numbers used are consistent. 

In other words, the first H offset would always be stored in the 01 location and the first D offset would always be stored in the 51 location.

Having a system like this will help prevent errors in your program.

Want to learn more about CNC G Code?

CNC Spindle Controls Explained [M03, M04, M05 and More]

a graphic of a cnc machine with text that says learn g code today spindle controls

Getting started with CNC spindle controls

The most basic codes to control your CNC spindle are:

But there is more to controlling your CNC spindle than simply turning it on and off.

For instance, most CNC machines have multiple ways to turn the spindle off and each way has it’s own use case. 

Controlling the spindle speed is another function that has multiple modes. Choosing the wrong one could potentially be disastrous. 

Learn the ins and outs of controlling your spindle below.

picture of the inside of a cnc machine with the spindle identified

Want to learn more about CNC G Code?

Codes for turning your spindle on

There are two CNC commands for turning the spindle on, M03 and M04.

The S code is used together with these codes to set the speed of the spindle.

Spindle direction

M03 [spindle on, clockwise]

The M03 code turns the spindle on in a clockwise direction at a set speed.

The speed is set with the most recent S code.

Clockwise rotation with M03 is the most common spindle rotation direction when CNC machining. 

Clockwise rotation is used with right hand cutting tools.

M04 [spindle on, counterclockwise]

The M04 code turns the spindle on in a counterclockwise direction at a set speed. 

Just like M03, the set speed is the value used with the most recent S code.

M04 is used with left hand cutting tools.

Counterclockwise spindle rotation is much less common than clockwise. 

This is especially true for machining centers (mills). For lathes, M03 is still more common but M04 gets more use.

Codes for turning your spindle off

The M05 code is the only code that just turns the spindle off.

However, there are other codes listed below that turn off multiple machine functions and the spindle is included in those functions.

M05 [spindle off]

The M05 code is used to stop the spindle.

It is normally used when there is a tool change or other change in the machining process.

When the spindle is turned back on with an M03 or M04 code after being stopped, the spindle will return to the same speed it was previously set at with the last S code.

M00 [program stop]

The M00 code is called a program stop. It stops the current program in the middle of running.

Using the M00 code turns off the following functions:

  • Movement of all axes
  • Spindle rotation
  • Coolant flow
  • The machine pauses reading the program

When the M00 code is used, nothing is reset. In other words, any active modes or parameters will stay as they are.

The program is merely paused when it reads the M00 code.

fanuc cnc control panel with cycle start button highlighted
Cycle start button on a Fanuc control panel

The machine will resume reading the program when the cycle start button is pressed after the program stop has occurred.

One thing to keep in mind is that the machine doesn’t turn on functions when cycle start is pushed. 

If the M00 code turns something off such as the spindle, it will need to be turned back on in the program.

M01 [optional stop]

The M01 code is called an optional stop. 

It stops the current program in the middle of running, but only if the optional stop switch or button is on.

If the optional stop switch is not on, then the machine will ignore any M01 codes it reads and continue running the program like normal.

haas cnc control panel with optional stop button highlighted
Optional stop button on a Haas CNC

When the machine reads an M01 code and the optional stop switch is on, it will turn off the following functions:

  • Movement of all axes
  • Spindle rotation
  • Coolant flow
  • The machine pauses reading the program

When the M01 code is used, nothing is reset. Same as with the M00 code.

In other words, any active modes or parameters will stay as they are. The program is merely paused when it reads the M01 code.

The machine will resume reading the program when the cycle start button is pressed after the program stop has occurred.

One thing to keep in mind is that the machine doesn’t turn on functions when cycle start is pushed. 

If the M01 code turns something off such as the spindle, it will need to be turned back on in the program.

M30 [program end]

The M30 code ends the program. 

This makes it different from M00, M01 or M05.

M00 and M01 shut down various machine functions and pause the program.

M30 shuts down machine functions and ends it. 

Pressing cycle start after an M30 code will start the entire program over again.

How to set spindle speeds

CNC spindle speeds are set using the S code.

S code

Using the S code sets the spindle speed that will be used whenever the spindle is turned on. The units are revolutions per minute (RPM).

The same spindle speed value will be maintained until it is changed.

Below is a small section of code with comments in parentheses that show what will happen as the machine reads the code.

M03 S3000   (Spindle On CW, Speed = 3,000 RPM)

M05              (Spindle Off)

M04              (Spindle On CCW, Speed = 3,000 RPM)

Notice how the spindle turns back on at the same set speed. This happens even if the spindle rotation direction is changed from clockwise to counterclockwise or vice versa.

S codes show up frequently in programs at the beginning of a new section of code. This can be switching tools or switching machining operations such as going from cutting the outside profile of the part to drilling holes.

Some other notes about the S code:

  • Must be a whole number (no decimals such as 3000.5)
  • Most machines have a limit to the range of spindle speeds that can be used. 1-9999 is common but 1-99999 is also used by some machines

Spindle speed modes

In CNC programming there are two codes that control the spindle speed mode, G96 and G97.

G97 is the most common and sets the spindle mode to RPM.

G96 sets the spindle mode to constant surface speed which adjusts the speed of the spindle based on the size of the part being machined.

G97 [speed in RPM]

When the G97 mode is active, the machine will maintain a constant spindle speed based on the RPM value set with the most recent S code.

If G97 is active, spindle speed will only change when the S code is changed.

G96 [constant surface speed]

When the G96 mode is active, the machine will maintain a constant surface speed.

Imagine a monster truck tire. Now picture rolling the monster truck tire one complete revolution in one minute. In that one minute, you might move 20 feet.

Now imagine you have a normal car tire. If you roll the car tire one revolution in one minute, you might only travel 4 feet.

You covered a lot less distance in that one minute, which means you traveled at a slower speed.

When things are spinning based on an RPM speed, the actual speed that the cutting edge of the tool is traveling can change.

Using constant surface speed with the G96 code tells the machine to change the spindle speed over time as the size of the part changes so that the speed where the cutting action is happening remains the same.

This is a simplified explanation of how G96 works. For more information about G96 see our full guide to the G96 command.

How to change the tool in your spindle

Most machining centers have automatic tool changers that can switch tools into and out of the CNC spindle.

an automatic tool changer on a dmg mori cnc machine
Automatic tool changer holding multiple tools in a DMG Mori CNC

The tool to be placed into the spindle is called up with the T code. This places the new tool in location so that it is ready to be switched.

The M06 command is then used to perform the tool change.

Here is an example section of code:

T01    (Tool 1 is readied for change)

M06    (Tool 1 is placed in the spindle)

T02    (Tool 2 is readied for change)

T03    (Tool 3 is readied for change)

M06    (Tool 3 is placed in the spindle)

Notice that even though tool 2 was readied for change, it never actually was put in the spindle. Instead, tool 3 was readied before the tool change occurred and it was placed in the spindle instead.

Want to learn more about CNC G Code?

Quick Guide to CNC Safety Lines [Common Codes]

a graphic of a cnc machine with text that says learn g code today safety lines

What are CNC program safety lines?

Safety lines, sometimes called a safety block, are a section of code within a CNC program which are used to protect the machine, the workpiece, and the operator.

Safety lines are used to make sure the machine is in the proper mode/state which means that the machine will understand all the commands we give it correctly.

If you need the machine to work in inches (or mm in some parts of the world), it is important to frequently set the machine to work in those units. 

This is especially true if you will be switching between units when machining.

While many won’t switch between imperial and metric units, it is common to switch between absolute and incremental positioning modes.

The safety lines used will vary by machine, however there are many which are common between the majority of machines.

Want to learn more about CNC G Code?

Types of codes found in a safety line

Safety lines can contain G codes for coordinate systems, measurement units, tool compensation, and cancel functions. 

Each one of these commands is necessary to move the tool safely. 

Modal commands and cancel commands are two of the most common codes used in CNC safety lines.

Below are the most common safety codes found in CNC programs:

Positioning mode – G90/G91

The first code normally found in a safety line will be the machine’s positioning mode.

There are two positioning modes available to use. Absolute and incremental positioning.

Absolute positioning uses the G90 command. 

Absolute positioning mode tells the machine to interpret all locations it is given as measured from a fixed zero location (origin).

graph paper example of absolute positioning with multiple points as examples

Incremental positioning uses the G91 command.

Incremental positioning modes tells the CNC that the zero location is wherever the machine currently is. 

Once the CNC makes a move in incremental mode, the new location becomes the zero location.

graph paper example of incremental positioning with multiple points as examples

Units mode – G20/G21

Selecting the system of units you will be working in is important. This is why the units mode is found in the safety lines of the program.

Imperial units are set with G20 (inches) and metric units are set with G21 (mm).

You don’t want to move 4 inches when you meant to 4 millimeters.

Setting the units mode is critical to running your CNC.

comparison of units of measurement for cnc programming

Plane selection – G17/G18/G19

Selecting the plane you will be working with is necessary. Not because you will often switch between planes, but because it’s possible.

Most people will never use anything other than the standard XY plane with G17, but setting it will make sure that it is set correctly.

The alternatives to G17 are G18 for the ZX plane and G19 for the YZ plane.

Canned cycle cancel – G80

G80 is the g code used to cancel any active canned cycle.

Canned cycles are used to perform repetitive machining. This includes drilling, reaming, boring, counterboring and other operations.

Canned cycles are modal which means they are on until they are switched or turned off. 

In the case of a drilling canned cycle, once it is turned on every new location the machine reads will be a spot where it drills a hole.

Obviously, you need to stop drilling holes eventually. Using G80 cancels the drilling canned cycle or another other canned cycles that might be active.

Cutter compensation cancel – G40

Cutter compensation is when the CNC machine control changes how it reads the program. With cutter compensation on, the machine will shift a set distance based on the size of the cutting tool when running the program.

illustration that shows how a CNC will act when using cutter compensation left with the G41 code

Cutter compensation is turned on with either G41 or G42. G41 shifts the tool left and G42 shifts it right.

illustration that shows how a CNC will act when using cutter compensation right with the G42 code

The G40 code turns cutter compensation off.

illustration that shows how a CNC will act when there is no cutter compensation mode active

Tool length compensation cancel – G49

Cutter compensation is accounts for the diameter of the cutting tool.

Tool length compensation accounts for the length of the cutter from the CNC spindle.

G49 is the code used to cancel tool length compensation.

Both compensation modes adjust for the size of your cutter. This allows you to run the same program with different tools.

Other safety codes

Codes will vary by machine. Check your instruction manual for the specific codes you need to use in the safety lines.

The codes listed here are certainly a good start.

an illustration of a cnc machine that shows how a g43 code offsets the program

Safety lines for starting up your CNC

Setting the initial modes for your machine is an important part of every CNC program. If the modes are not set then the machine will stay in it’s initialized state.

Modes such as the unit system (mm/inch) can be set in the machine parameters. If no code is specifically given in the program then the machine will remain in the initialized state.

This is not a good programming practice because there is plenty of opportunity for errors to occur. Use safety lines to make absolutely sure your CNC is in the correct mode.

Here is an example of a safety line to use at the beginning of a program:

O1000

(Start of safety code)

G20 G17 G40 (G20 inch, XY plane, cancel cutter compensation)

G49 G64 G80 (cancel tool length compensation, normal cutting mode, cancel canned cycles)

G90 G94 G98 (absolute mode, feed per minute, initial plane for canned cycles)

(end of safety code)

Frequently asked questions about CNC safety lines

Can you put all of your safety codes on the same line?

The number of codes that can fit in the same line depends on the CNC machine.

Many machines have limitations for how many M-codes you can put on one line. G codes are generally only limited to one code from each group.

For example, G00, G01, G02 and G03 are all in the same group (movement). Only one of the codes from this group should be used on any particular line.

Want to learn more about CNC G Code?

Ultimate Guide to CNC Codes

Here is our Ultimate Guide to CNC Codes. Below is a list of CNC codes with a description of what they are.

Click on the code if you want to find out more including multiple examples to help you understand how to use them in your programs.

A - Rotation Around the X Axis

Rotates around the 4th axis of the machine if equipped.

B - Rotation Around the Y Axis

Rotates around the 5th axis of the machine if equipped.

C - Rotation Around the Z Axis

Rotates around the 6th axis of the machine if equipped.

Specifies the tool diameter offset to be used for cutter compensation (G41 and G42).

Learn more about the D code

Sets the feed rate to be used for movement. The feed rate is used when moving using codes such as G01, G02 & G03.

The feed rate is not used when using rapid travel (G00).

Learn more about the F code

Sets various modes in the machine or prepares the machine to perform a function such as a canned cycle.

Learn more about G codes

Specifies the height offset to be used when turning tool length compensation on (G43) or off (G49)

Learn more about the H code

I CNC Code

I - Radius Center in X Axis

Identifies the location of the center of a radius for a circular move relative to the current X axis location. 

J CNC Code

J - Radius Center in Y Axis

Identifies the location of the center of a radius for a circular move relative to the current Y axis location. 

K CNC Code

K - Radius Center in Z Axis

Identifies the location of the center of a radius for a circular move relative to the current Z axis location. 

L CNC Code

L - Number of Subprogram Repetitions

Used with the M98 subprogram call command. L lists how many times the subprogram will be repeated.

M codes turn on and off various machine functions such as the spindle or coolant. 

They are also used for program start and stop functions.

Learn more about M codes

Identifies the sequence or line number of the program. They are not required but they can help make a CNC program easier to follow. 

Learn more about the N code

The program number is the first CNC word in the program.

Learn more about the O code

When used with an M98 code, P identifies the subprogram number.

When used with G04 or canned cycles, P specifies the amount of time to dwell.

Learn more about the P code

Used with G73 and G83 peck drilling cycles. Q identifies the depth of each drilling peck before the drill backs up to break chips.

Learn more about the Q code

When used with G02 and G03, R specifies the size of the circular curve to be machined.

When used with a canned cycle such as G73, R specifies the location of the rapid plane.

Learn more about the R code

Sets the speed of the spindle.

Units are in revolutions per minute (RPM)

Learn more about the S code

Selects a tool to prepare it for tool change. M06 will cause the CNC to swap the currently loaded tool with the one selected with the T code.

Some machines do not require the use of a M06 code and will swap tools by simply using the T code.

Learn more about the T code

Specifies the location to be moved to in the X axis. 

The distance will be affected by whether the machine is in absolute (G90) or incremental (G91) mode.

Learn more about the X code

Specifies the location to be moved to in the Y axis. 

The distance will be affected by whether the machine is in absolute (G90) or incremental (G91) mode.

Learn more about the Y code

Specifies the location to be moved to in the Z axis. 

The distance will be affected by whether the machine is in absolute (G90) or incremental (G91) mode.

Learn more about the Z code

; - End of Block

Signifies the end of a block of code. A single block will usually consist of one line of code.

Useful when testing code by stepping through the blocks in single block mode.

Slash Block Skip CNC Code

/ - Block Skip

Used together with a switch on the CNC control. 

When the switch is on the machine will read and execute lines that start with the / character. When the switch is off, these lines will be ignored.

Best Engraving Pens for Every Budget and Material

Engraving pens come in a wide range shapes, sizes and capabilities. You want to find the one that is just right for you project.

As you read our guide to the best engraving pens, make sure to keep your planned project in mind to determine what tool will work best for you.

Some applications such as jewelry engraving will benefit from a smaller tool for more precise strokes. Other materials such as metal or glass will engrave better with a more powerful tool such as one of the engravers by Dremel below.

No matter what you are working with, we have laid out the best tools on the market and an extensive list of items at the bottom of the article for you to consider when looking for your right fit tool.

Name

Awards

Where to Buy

Culiau Customizer

Best Overall Cordless Engraving Pen

Tidalpool Easy Etcher

Best Budget Cordless Engraving Pen

Tacklife PCG01B

Best Value Cordless Engraving Pen

Dremel 290-01

Best Corded Engraving Pen

IMT Scriber

Best Manual Engraving Pen

Best Overall Cordless Engraving Pen

Culiau Customizer

plus symbol

Pros

Easy to handle and use
Customer service
Plenty of included bits

minus symbol

Cons

Not the cheapest option

The Culiau Customizer Engraving Pen is excellent choice for novices. Because the tool is so light, engraving is as simple as using a pen. 

Don’t get me wrong, it will still take practice to get a nice, finished product but the Customizer is easier to use than some of the other bulkier engraving pens on the market.

The Customizer is roughly the size of a regular marker. The grip and light weight make controlling the engraver while in use a snap.

culiau customizer compared to sharpie, pen and pencil
Size comparison

You can sketch with it just like a normal pen or pencil.

One of the biggest indicators of the quality is the feel of the tool. This is a well-built tool that feels good in the hand.

The flexibility of the Customizer makes the job as simple as drawing on paper. It works well on wood, including hardwoods, glass, and metals like steel, silver, and others.

culiau customizer in box with engraving bits
Plenty of included bits

It is ergonomic, lightweight, and small. Because of this it is exceptionally comfortable to use and handle. The Customizer truly is a pocket-sized engraving machine.

The quality comes with a price though and the Customizer does cost more than many of the other engraving pens on the market. The cheaper engraving pens aren’t built as well, but if you only plan to use it for the occasional project then it might not be a big deal.

If you plan to use it a lot, I recommend going with an engraving pen that is a step above such as the Customizer from Culiau and skipping all the generic cheapy ones.

Best Budget Cordless Engraving Pen

Tidalpool Easy Etcher

plus symbol

Pros

Lightweight
Easy to control
Included stencils

minus symbol

Cons

May be underpowered for some materials

The Easy Etcher is an excellent engraving pen for beginners. The tool is so lightweight that engraving with it is as close to using an actual pen as you will get. The Easy Etcher is actually about the size of a standard marker.

The rubberized grip also helps keep the engraver under control while using it. While the 12,000 RPM speed may seem under powered when compared to other engraving pens, it actually helps keep the tool stable during use.

Runtimes will vary depending on the type of material you are working with, but the Easy Etcher runs on AAA batteries which means there is no waiting around for the tool to recharge. The batteries aren’t included but other extras are.

The Easy Etcher comes with 10 sets of stencils that make engraving text or designs on your material a piece of cake. It also comes with a nice starter selection of bits that allow you to create a variety of textures and finishes.

The Easy Etcher won’t be the be all, end all for engraving every material but it is a great tool to get you started without breaking the bank.

Best Value Cordless Engraving Pen

TACKLIFE PCG01B

plus symbol

Pros

Adjustable depth setting
Warranty

minus symbol

Cons

Hard to install bit
Loud

While the TACKLIFE PCG018 is not as nimble as the Easy Etcher it does a good job of making up for it in the power department. With similar price points, it would be wise to determine whether power or maneuverability is more important to you.

The PCG018 has 3 speed settings of 5, 10 and 15,000 RPMs. This means it will work well for a variety of materials.

This TACKLIFE engraving pen is cordless and rechargeable. It charges over USB which has some benefits and drawbacks.

The charge time is fairly long at 2 hours but with a runtime of 90 minutes it lasts long enough to complete most jobs.

Additionally, the tool comes with 31 different accessories for engraving, sanding and finishing along with a case to contain them all. Two collets to accommodate different bit sizes of 3/32” and 1/8” is also a nice addition.

The TACKLIFE PCG018 is a solid choice when it comes to cordless engraving pens.

Best Corded Engraving Pen

Dremel 290-01

plus symbol

Pros

Adjustable depth setting
Warranty

minus symbol

Cons

Hard to install bit
Loud

The Dremel 290-01 is different than most of the other engravers on this list. Instead of being a rotary engraver, it has a vibrating tip that moves in and out. Basically, it operates like a mini jackhammer.

Corded engraving pens like this Dremel have some advantages and disadvantages.

Being corded means that you are tethered to your power outlet and it can be slightly cumbersome to work with the power cord snagging on objects in your work area. The 290-01 is pretty lightweight though which makes maneuvering it around your workpiece a little easier.

A nice benefit of using a corded engraver is that you won’t ever run out of power. This is helpful for harder materials that may take multiple passes to get the amount of engraving you desire.

The power of the 290-01 is controlled with a dial that allows five depth settings. This works well to adjust for different material types such as wood or rock. All that power comes with the side effect that the tool is quite loud when running. You should expect it to be noisy. It is a power tool after all but take note that the other tools on this list are quieter.

There are a couple minor downfalls for the 290-01. The biggest one is that the bit can be difficult to install. The set screw that locks it is tiny and it can be challenging to work with.

Also, the provided stencil comes in handy but is somewhat lacking. Many other engravers come with a wider variety of stencils so keep in mind that you may want to purchase some extra stencils if you plan on engraving a lot.

On the plus side, just like this engraving pen’s cordless counterpart, the Dremel 290-01 comes with a two-year warranty which is well above what most competing engravers come with.

Overall, the Dremel 290-01 is a solid engraving pen. A couple minor inconveniences are balanced nicely by the higher, non-stop power that comes from being always plugged in.

Best Manual Engraving Pens

IMT Scriber

plus symbol

Pros

No power required

minus symbol

Cons

Doesn't engrave deep

If all you need is something basic and reliable for engraving then the manual scriber from IMT may be your best bet.

It requires no batteries or power cord. The tool is extremely lightweight and its tungsten carbide tip will engrave a large variety of materials including steel, ceramics and glass. If you are working with plastics though, a powered tool would be a better choice.

The IMT scriber will actually perform an operation that is more akin to scratching your material than actually engraving it. For many use cases, this is more than enough. Just keep this in mind when choosing your engraving pen.

It also comes with extra tips in case one snaps. They are somewhat brittle because they are so hard. They aren’t fragile but can break if you aren’t dropped or handled roughly. Luckily, the scriber comes with a protective cap that will help shield the point from damage.

The IMT scriber is definitely more low tech than some of the other engraving pen options available but if all you need is a simple engraver then it may be a great choice at a cheap price.

Things to consider when buying an engraving pen

Safety

Remember that these tools can be dangerous, especially to your eyes. Be careful handling them and use eye protection to protect you from things such as flying chips or broken bits.

Corded vs cordless engraving pens

Corded engraving pens generally have more power than their cordless counterparts. The downside is that the cord can get in the way and make the tool more difficult to maneuver. The easiest engraving pens to use are those that are lightweight and battery operated.

Cord length

If you choose to use a corded engraving pen to have more power, keep in mind that the length of the power cord is very important. If the cord is short, then make sure that you have an extension cord handy because some of the power cords can be very short.

Speed

RPMs do not equal power. Being able to adjust your RPMs over a wider range is more beneficial than simply having a higher RPM overall. Different materials will require different RPMs. In general, materials such as glass or metal which are harder will benefit from a higher RPM and softer materials will engrave better at lower RPMs.

Bits and accessories

It is a nice bonus for an engraving pen to come with a good selection of bits and accessories but not a necessity. There are many bit or accessory kits available that allow you to perform different types of engravings or finishing to your piece for a fairly cheap price.

Extra bits aren’t required to start but before too long you will definitely want to expand your bit collection if your engraving pen doesn’t come with many. Different bits will allow you to different styles of engraving.

Battery

If you go the cordless route, make sure you find a tool that charges quick and has a long runtime.

Cheaper tools tend to run off standard AA or AAA batteries which means they can run out of power quickly but also that more power can easily be on standby. Keep extra batteries nearby but consider the amount of power you will need for your project when choosing which engraving pen to go with. Harder materials require more power.

Warranty

Pay attention to the length of the warranty for your tool. Just like many other power tools, a good warranty is a solid indicator of the quality of the tool. This doesn’t mean that good tools don’t come with shorter warranties, just that it is something to be mindful of.

Stencils

Stencils can be very important for getting the correct design on your part. There are many different stencil kits available but it is definitely a bonus to have a couple to start with. Creating visually appealing designs freehand is going to take some practice so having a template to follow when getting started will be helpful.

Engraving vs cutting

Engraving pens are just that, engravers. They generally are not meant for cutting. If you are looking for a tool that is capable of doing more than simply scratching the surface of a part, then you will want to look into something with more power like the various Dremels or other higher power rotary tools.  

Related articles

Every G Code for Your CNC [The Complete List]

G code, sometimes called g-code, is a simple programming language for CNC machines. 

Listed below are the codes that use the G word. These codes are preparatory commands.

This means that they set modes or prepare the machine for various actions. 

We have put together a complete list of G codes for your reference.

Not all codes are used often.

Below is a list of G codes. They have been organized into group types based on how the machine reacts to the individual code.

If you are new to G code, you should review the code groups and compare the codes within a single group. 

You will quickly see they handle the same function, such as one code to turn something on and one code to turn something off. 

This makes learning the codes twice as easy.

Table of Contents

CNC Movement and Travel

Moves the CNC around at the maximum possible speed. Often called rapid traverse.

Learn more about the G00 code

Move the CNC in a straight line to a specific location. The speed of this movement is determined by the feed rate (F).

Learn more about the G01 code

Move the CNC to specific location along along a specified arc or radius traveling clockwise. The speed of this movement is determined by the feed rate (F).

Learn more about the G02 code

Move the CNC to a specific location along a specified arc or radius traveling counterclockwise. The speed of this movement is determined by the feed rate (F).

Learn more about the G03 code

Tells the CNC not to move for a certain amount of time.

Learn more about the G04 code

Plane Selection

G17 CNC G Code

G17 - XY Plane Selection

The vast majority of movement in CNC programs will be relative to the XY plane. Plane selection affects how G02, G03, cutter compensation and some canned cycles are handled.

G18 CNC G Code

G18 - XZ Plane Selection

Plane selection affects how G02, G03, cutter compensation and some canned cycles are handled. G18 tells the machine you are machining radii around the Y axis.

G19 CNC G Code

G19 - YZ Plane Selection

Plane selection affects how G02, G03, cutter compensation and some canned cycles are handled. G19 tells the machine you are machining radii around the Z axis.

Unit Modes

All size and location commands will be in inches until changed.

Learn more about the G20 code

All size and location commands will be in millimeters until changed.

Learn more about the G21 code

Compensation Codes

Turns off any cutter compensation modes (G41 or G42). 

Learn more about the G40 code

Shifts the machine tool path to the left based on the radius of the cutting tool.

Learn more about the G41 code

Shifts the machine tool path to the right based on the radius of the cutting tool.

Learn more about the G42 code

Adjusts a tool’s location based on a specified tool height (H) offset.

Learn more about the G43 code

Turns off the tool length compensation set by a G43 or G44 command. 

Learn more about the G49 code

Work Offsets

Sets a specific location in the CNC as the zero location for the program.

Learn more about the G54 code

Sets a specific location in the CNC as the zero location for the program.

Learn more about the G55 code

Sets a specific location in the CNC as the zero location for the program.

Learn more about the G56 code

Sets a specific location in the CNC as the zero location for the program.

Learn more about the G57 code

Sets a specific location in the CNC as the zero location for the program.

Learn more about the G58 code

Sets a specific location in the CNC as the zero location for the program.

Learn more about the G59 code

Canned Cycles

Peck drill a hole by repeatedly drilling, then retracting a small amount, then drilling deeper. Often used to break up chips when drilling.

Learn more about the G73 code

A tapping cycle for left-hand or reverse threads. The spindle must be running in reverse during this cycle. The machine will feed to the bottom of the hole and then reverse the spindle direction and back out of the hole.

Learn more about the G74 code

G76 CNC G Code

G76 - Fine Boring Canned Cycle

Bores a hole then stops the spindle, retracts the tool from the surface and rapid retracts the tool out of the hole.

Drills a hole then rapid retracts out of the hole.

Learn more about the G81 code

Drills a hole, dwells at the bottom of the hole for a set amount of time and then rapid retracts out of the hole.

Learn more about the G82 code

The machine will drill in pecks while rapid retracting out of the hole between each peck to help clear chips from the drill.

Learn more about the G83 code

The standard tapping cycle with the spindle running clockwise. The CNC will feed to the bottom of the hole and then reverse the spindle direction and back out of the hole.

Learn more about the G84 code

The machine will feed to the bottom of the hole and then rapid retract out. 

Learn more about the G85 code

The machine will feed to the bottom of the hole and then rapid retract out. The tool is not pulled away from the surface which can leave a tool mark on the hole.

Learn more about the G86 code

G87 CNC G Code

G87 - Back Boring Cycle

Bores a hole from bottom to top. This is the reverse direction of the G86 code.

G88 CNC G Code

G88 - Boring Cycle with Dwell

Bores a hole and then dwells at the bottom for a set amount of time.

G89 CNC G Code

G89 - Back Boring Cycle with Dwell

The machine will feed to the bottom of the hole, pause for a set amount of time and then rapid retract out. The tool is not pulled away from the surface which can leave a tool mark on the hole.

Cancel Codes

G50 CNC G Code

G50 - Cancel Scaling

Turns off scaling mode.

Cancels any active canned cycles for drilling, boring, tapping, etc.

Learn more about the G80 code

Positioning Modes

All movement locations are relative to a fixed zero such as the work offset (G54, G55, etc.) or machine home location.

Learn more about the G90 code

All movement locations are relative to the machine’s current position.

Learn more about the G91 code

Speeds and Feeds

G94 CNC G Code

G94 - Feed per Minute Mode

Sets the feed rate to units (inches/mm) per minute. The tool will move at a set rate.

G95 CNC G Code

G95 - Feed per Revolution Mode

Sets the feed rate to units (mm/inches) per revolution. The tool will move a set rate for every spindle rotation.

G96 CNC G Code

G96 - Constant Surface Speed

The spindle speed will vary to maintain the same surface speed of the material.

G97 CNC G Code

G97 - Constant Spindle Speed

The spindle will operate at a consistent RPM.

Plane Return

After a canned cycle the tool will retract to the start of the canned cycle.

Learn more about the G98 code

After a canned cycle the tool will retract to a specified location. Can be useful for avoiding workholding fixtures.

Learn more about the G99 code

Lesser Used G Codes

G09 CNC G Code

G09 - Exact Stop Check (Non-modal)

Causes the machine to come to a stop after each command. Useful for making sharp corners. It causes the machine to stop after executing the current line.

G10 CNC G Code

G10 - Programmed Offset Input

Adjusts offset values. Can change work offset, tool length offset and/or cutter compensation offsets.

G22 CNC G Code

G22 - Stored Stroke Limit

Turns on a set safety zone that will cause the machine to alarm out if it enters.

G23 CNC G Code

G23 - Stored Stroke Limit Cancel

Turns off the stored safety zone.

G27 CNC G Code

G27 - Zero Return Check

Rarely used. This command checks to see that the machine has moved to the zero return position.

The machine will move to a specified location and then to the zero return (home) position.

Learn more about the G28 code

G29 CNC G Code

G29 - Return From Reference Position

The machine will move to the position referenced in the last G28 command. It will then move to the location referenced with the G29 command.

G30 CNC G Code

G30 - Second Position Zero Return

Similar to G28 the machine will move to a specified location and then will move to a secondary reference point in the machine such as a tool changer location.

G31 CNC G Code

G31 - Skip Function

Often used with probing, it is used to move the probe until it hits an object.

G44 CNC G Code

G44 - Negative Tool Length Compensation

Rarely used. Adjusts a tool’s location based on a specified height (H) offset in the opposite of the normal direction.

G45 CNC G Code

G45 - Single Offset Increase

Rarely used.

G46 CNC G Code

G46 - Single Offset Decrease

Rarely used. 

G47 CNC G Code

G47 - Double Offset Increase

Rarely used.

G48 CNC G Code

G48 - Double Offset Decrease

Rarely used.

G51 CNC G Code

G51 - Scaling

Scales the machined part size by a scaling factor.

Scaling factors >1 make it bigger. Scaling factors <1 make it smaller.

G52 CNC G Code

G52 - Temporarily Shift Program Zero

Shifts the program zero location based on a location specified with the command.

G53 CNC G Code

G53 - Return to Machine Zero Position

Rapid moves the CNC to the machine reference position.

G60 CNC G Code

G60 - Single Direction Move

Forces the machine to approach each XY location from the same direction. Helps eliminate location errors caused by machine backlash.

G61 CNC G Code

G61 - Exact Stop Check (Modal)

The machine will come to a stop after each line of code. 

G64 CNC G Code

G64 - Normal Cutting Mode

Cancels both G60 and G61 modes.

G65 CNC G Code

G65 - Custom Macro Call

A macro is similar to a subprogram but it allows you to use variables in the program.

G66 CNC G Code

G66 - Custom Macro Modal Call

Makes the machine call a macro, similar to G65, with every new location given until turned off.

G67 CNC G Code

G67 - Cancel Custom Macro
Modal Call

Cancels any active custom macro modal calls.

G68 CNC G Code

G68 - Coordinate Rotation Mode

Rotates the machine coordinates at a given angle around a specified location.

G69 CNC G Code

G69 - Cancel Coordinate Rotation Mode

Turns off coordinate rotation mode.

G92 CNC G Code

G92 - Program a Work Offset

Sets a work offset based on a specific location in the machine.

Frequently asked questions

How many G codes are there?

We listed 70 G codes in our list alone but in reality there are many more. 

Some will have different meanings on lathes vs mills. Also, different CNC controller manufacturers will include their own special codes. For example, some will have codes such as G103 or they will switch the meaning of a code.

You should always know how your individual machine will react to a specific code. 

What other types of codes are used in CNC programming?

There are numerous codes other than G codes used in CNC programming. 

There are codes for locations, speeds, feeds and machine operations among others. For the most common codes, review our posts on CNC codes and M codes.

Who needs to know G code?

Anyone who works with a CNC machine would benefit from understanding G code. 

While it may not be a requirement for their job depending on where they work, these positions would benefit from understanding G codes:

Is learning G code hard?

Learning G code can be a daunting task when there are so many codes to understand. 

While it is true that there are a lot of codes that can be used, you should know that most shops will only use a small selection of codes which cuts down the number you need to understand before you are up to speed.

Don’t be overwhelmed. Figure out which codes are the most commonly used ones and start your learning there.

Geometric Dimensioning and Tolerancing Font – GD&T Keyboard Shortcuts

How to insert symbols into a Microsoft Word document

To insert GD&T symbols into Word, take note of the codes in the table below.

There are two types of symbols below. 

Some are alt codes (ALT+248) and some are Unicode characters (25B1 then ALT+X). 

Alt codes are entered by holding the ALT key and pressing the number code. Unicode characters are entered by typing the code and then holding the ALT key and pressing X.

How to insert GD&T symbols into a Microsoft Excel document

Not all the codes listed below will work in Excel. 

The ALT codes (ALT+248 style) work but the Unicode characters (25B1 then ALT+X style) do not. 

The best way to insert the GD&T symbols into Excel is to copy and paste the symbols.

GD&T Symbols Alt Codes

Symbol Name

Symbol

Code

Straightness

ALT+22

Flatness

25B1 - ALT+X

Circularity

25EF – ALT+X

Cylindricity

232D – ALT+X

Profile of a Line

ALT+239

Profile of a Surface

2313 – ALT+X

Angularity

2220 – ALT+X

Perpendicularity

ALT+8869

Parallelism

//

2225 – ALT+X

True Position

2316 – ALT+X

Concentricity

ALT + 10686

Symmetry

232F – ALT+X

Circular Runout

↗

2197 – ALT+X

Total Runout

2330 – ALT+X

Free state

ALT + 9403

Least material condition

ALT + 9409

Maximum material condition

Ⓜ

ALT + 9410

Projected tolerance zone

ALT + 9413

Regardless of feature size (RFS)

ALT + 9416

Tangent plane

ALT + 9417

Unequally disposed tolerance

ALT + 9418

Common Blueprint Symbol Alt Codes

Symbol Name

Symbol

Code

Degree

°

ALT + 248

Plus or Minus

±

ALT+241

Diameter

Ø

ALT+0216

Depth

ALT + 8615

Greater Than or Equal To

ALT+242

Less Than or Equal To

ALT+243

Counterbore

ALT+9012

Countersink

ALT+9013

Micro

µ

ALT+230

Surface Finish

2713 - ALT+X

Centerline

ALT + 8452

Best Dial Calipers for Any Budget – Buyer’s Guide

It used to be that there were a limited number of options when it came to dial calipers.

Well known manufacturers such as Mitutoyo, Starrett and Fowler were the only choices available. Boy, have times changed.

Now the same tried and true tool makers are still there but they are competing from a long list of knock offs and up and coming manufacturers. 

Find out how the old compares to the new in our guide to the best dial calipers available found below.

Best dial calipers overview

Best overall dial caliper: Starrett 3202-6 0-6″ Dial Caliper

Best budget/starter dial caliper: Anytime Tools 0-6″ Dial Caliper

Best large range dial caliper: Starrett 3202-12 0-12″ Dial Caliper

Best budget large range dial caliper: Fowler 52-008-0 0-12″ Dial Caliper

Best made in America dial caliper: Starrett 120A-6 0-6″ Dial Caliper

Starrett 3202-6 0-6" Dial Caliper

plus symbol

Pros

Exceptional accuracy
Built to last

minus symbol

Cons

None

The Starrett name is synonymous with precision measuring instruments. Known for making quality micrometers and calipers as well as many other tools for well over a century. They are a premier machine tool manufacturer.

Their calipers are top shelf across the board. They have long been exceptionally accurate and well made.

Many of the features of Starrett’s caliper seem like simple things to get right. What makes this set of calipers better than all the others is the way that they are able to get all those little things right all at once and on a consistent basis.

As anyone who has used a set of calipers can attest to, the feel of a good set of calipers is where the tool shines. Starrett has been able to put it all together through the years and make calipers that provide top notch accuracy while maintaining an amazing level of smoothness in the mechanical workings.

Depth measurements are one area in which dial calipers from many manufacturers struggle. This is not the case with Starrett. Depth measurements from these calipers are every bit as accurate as any inside or outside measurement.

The accuracy is easier to attain with a tool as good as this one from Starrett. The thumb roller is smooth and with a little practice allows the user to gain a high level of precision in their measurements.

The easy-to-read dial face helps as well. The bright white face makes it easier to read your measurement even in lower light situations such as in your garage or leaning in to take readings in a dimly lit machine.

Overall, there are only positives for Starrett’s dial calipers. They just feel right and on top of it all are built to last. This truly is an heirloom quality tool.

Anytime Tools 0-6" Dial Caliper

plus symbol

Pros

Price point
Customer service

minus symbol

Cons

Not "shock proof"

Anytime Tools has quietly worked their way up to be one of the higher quality inspection tool makers. They have found a way to balance making a consistently good measurement device while still keeping the overall cost down. This is not an easy feat.

Easily the best budget friendly caliper. They have been able to create a tool that mirrors the same characteristics of calipers that cost almost twice as much.

As the best dial caliper under $50, it is amazing that they are still able to come packed with extras that other brands like to skip in an effort to keep the cost down. This caliper from Anytime Tools comes with a nice padded case that helps to keep the precision tool safe from accidental damage.

The dial face on this tool is one of the nicest. The lines are sharp and contrast nicely with the white background which makes reading the caliper easier.

The most important aspect is that they have been able to maintain the same accuracy of tools that cost almost twice as much. Nothing matters more than accuracy when it comes to inspection and measuring tools.

Starrett 3202-12 0-12" Dial Caliper

plus symbol

Pros

The usual Starrett quality
Accuracy

minus symbol

Cons

Hard to take smaller measurements
Cost

One thing you should know about any precision measuring tool such as a dial caliper is that as the measuring range goes up, the price can climb steeply.

You might think that the cost of a 0-12” caliper would be twice as much as a 0-6” set. Unfortunately, this isn’t the case and that 0-12” set can be 5-10x more expensive. This is especially true with sets from the most well-known manufacturers.

Luckily, Starrett makes a great 0-12” caliper that doesn’t completely break the bank. It has all the same great features of their 6-inch caliper but in a larger package. Another instance of a truly remarkable measuring tool. If you need a large caliper and trusted accuracy, then look no further.

One thing to keep in mind with larger calipers is that they will likely see much less use than a 0-6” set. Whenever possible you will want to use a smaller set of calipers for your measurements because they are so much easier to maneuver. It can be quite difficult to measure a small hole with a set of 12″ calipers.

Because they will be used less often, for some this may mean that they can sacrifice a little in accuracy and go with a cheaper set of 0-12” calipers. 

The Starrett 3202-12 is accurate to +/- 0.001″ which means it is an extremely capable measuring tool.

Just like any other measurement, you should pay attention to the tolerances you need before making any purchases.

Fowler 52-008-712-0 0-12" Dial Caliper

plus symbol

Pros

Cost

minus symbol

Cons

Reduced accuracy

There is only so much that can be said about any dial caliper. They are all constructed roughly the same. 

The biggest difference between any make or model dial caliper is the accuracy.

Most will want a caliper that is capable of taking measurements to +/- 0.001″ but if you know you can get away with a little less then there are some cheaper options available such as the 52-008-712-0 from Fowler.

Fowler has made/imported measuring tools for decades and done it well. Lately, they have skewed towards the lower end of the pricing range. Often they are not as cheap as the Chinese made tools and aren’t as accurate as the American, Japanese or European made tools.

Where they have really been successful is in making some of the tools that are more complex at a lower price point than most of their competition. Depth micrometers and dial calipers are two of the tools they have done well.

This dial caliper makes a great budget friendly choice for anyone who can sacrifice a little accuracy. Most will find this isn’t an issue because as parts get larger, they do tend to have looser tolerances. Pay attention though because this isn’t always the case.

 

Starrett 120A-6 0-6" Dial Caliper

plus symbol

Pros

Excellent quality

minus symbol

Cons

Cost

American made tools can be quite hard to come by nowadays.

Luckily, Starrett continues to make a selection of their tools in the USA. The only downside is that they come with an added cost.

At about double the cost, Starrett’s American made calipers are excellent but in my opinion they just don’t justify the cost. 

I realize that some would prefer to buy American made tools at all costs and because of this have include them on the list. 

This set of calipers is great. The build quality is amazing but it just isn’t enough to justify the added expense for most people. 

 

Things to consider when purchasing a set of dial calipers

Measuring range

Dial calipers come in a large variety of sizes. The most common size has a measuring range of 0-6”. Less common ranges of 0-4” and 0-8” are also available. 

Larger sized calipers such as 0-12” and 0-24” are available as well but they are most often used in conjunction with a 0-6” set of calipers. This is because taking smaller measurements with a large set of calipers can be extremely awkward. In most instances, the larger sets get pulled out when other measuring tools just won’t do.

Sets of calipers with measuring ranges above 24” are available but are much less common than sizes under 24”.

Accuracy

A good set of 0-6″ dial calipers is accurate to +/- .001”. Any 6 inch calipers which are less accurate should be ignored.

As the measuring range of the caliper gets larger, the accuracy of the caliper will often be reduced. Pay attention to the specs because it isn’t uncommon for a 24″ set of calipers to only be accurate to +/- 0.002″.

If you are in need of accuracy that is greater than this, you will need to find a nice set of micrometers for your application.

Micrometers are commonly available with an accuracy of +/- .0001”. Some cheaper sets of micrometers will not quite meet this accuracy, but you can rest assured that a set from the most well-known manufacturers such as Starrett and Mitutoyo will more than meet this standard.

Dial calipers sacrifice some accuracy to gain versatility in measurement.

Dial vs digital calipers

mitutoyo digital caliper measuring 1 inch block
Our pick for best digital calipers - Mitutoyo 500-196-30 0-6" Digital Caliper

Both dial and digital calipers have their advantages. For dial calipers, their lack of batteries mean they are always ready to take a measurement.

Digital calipers have the benefit of taking instant measurements as well as switching between units at the press of a button.

There is no difference between the accuracy of digital and dial calipers and they are both available with similar measuring ranges. Ultimately, the choice between which is better comes down to a matter of preference.

For a more complete guide to the differences between dial and digital calipers see our guide on the topic.

Micrometers vs calipers

starrett 0-1" micrometer
Starrett 0-1" Micrometer

The differences between micrometers and calipers lie in their accuracy and versatility. Micrometers are more accurate but with a much smaller measuring range.

Micrometers are generally ten times more accurate than calipers and have a measuring range that is 1/6 of the range of a typical caliper.

For a complete rundown of the differences, see our full guide to the differences between micrometers and calipers.

New vs used dial calipers

Don’t be afraid to look for a good set of used calipers. Brands such as Starrett, Mitutoyo, Brown and Sharpe, and Fowler have made quality calipers for years.

This is especially true if you know where the tool is coming from. Often retiring machinists are more than willing to part with their tools if they know someone is entering the trade with a passion for it.

If you don’t know the history of the tools, make sure to check the accuracy before buying. Not everyone treats their tools as gentle as they should. If you have access, check any potential purchase against a known standard such as a calibrated set of gauge blocks.

One item to look for when purchasing used tools is a case. If someone has kept the case and/or original box for a number of years, then it is likely that they have treated it carefully and it is every bit as good as new.

What can a dial caliper be used to measure?

starrett 3202-6 6 inch dial caliper measuring a part

Dial calipers can be used for a large variety of measurements. Most models will take inside, outside, step and depth measurements.

The inside, outside and step measurements are fairly standard and will be consistent among many manufacturers, but the depth measurement is what sets many quality calipers apart from the pack.

Note: Some calipers with larger measuring ranges such as 0-24” will come without the ability to take depth measurements. This is true as well for outside measurements. Some calipers will come with the ability to only take outside measurements thought this is usually only for calipers with measuring ranges over 12”.

How to reset or zero a set of dial calipers

To adjust a dial caliper, move the caliper until the jaws are closed.

Once in the zero position, check your reading on the indicator needle. If it lines up on zero, then no adjustment is needed. You can proceed to verifying the tools repeatability as noted below.

If it does not line up on zero, loosen the bezel lock screw and turn the dial face until it lines up on zero. Once aligned, tighten the lock screw.

Now open and close the jaws to verify that the caliper repeatedly returns a zero reading.

Once this is verified, if available use a set of known reference standards such as a gauge block set to verify different readings across the calipers measuring range. For a 0-6” caliper, 0”, 2”, 4” and 6” would be a good start.

After the tool has been verified as accurate across its measuring range, you can proceed to take your part measurements.

How to calibrate dial calipers

gauge block set
Gauge block set

Calipers should be calibrated periodically at an interval of your choosing. In a machine shop atmosphere, this will be determined by the company. Normal calibration intervals will range from 3 months to 1 year and everything in between. Some shops will even base the calibration frequency on tool use as opposed to length of time.

For home use, I recommend verifying them before each measurement.

With critical measurements, at home or in the shop, this verification becomes even more important. You don’t want to find out that your engine was bored oversize because you neglected to check your caliper before using it right?

Verify your tools and if possible, check them against a known calibrated standard such as a set of gauge blocks.

For more info on caliper calibration, please see our post on the Complete Guide to Caliper Calibration.

Calibration certificates

Please don’t pay more for anyone to provide a calibration certificate with your caliper. It just isn’t necessary.

Any extra money that would be spent on calibration costs would be much better spent on a set of gauge blocks so you can calibrate the tool yourself. Buying your own set of gauge blocks allows you to check the caliper regularly.

This can be especially important because it allows you to verify the accuracy of your measuring device, or measuring devices if you have more, right before taking a critical measurement so you know the readings are accurate.

Skip the calibration certs, if you think you might need it, get a set of gauge blocks and calibrate the tool yourself instead.

Maintenance and care tips

Lubricating your dial calipers

starrett tool and instrument oil bottle with cap
Starrett Tool and Instrument Oil

Most dial calipers will be made of stainless steel and therefore be resistant to rust. Not all types of stainless steel are created equal. Because of this it can be a good idea to have a light oil coating on some of the surface of the tool such as the beam.

Starrett makes a tool and instrument oil that works very well for lubricating all types of precision tools such as dial calipers.

Storage

It may be an old wives tale but many stand by not storing their calipers and micrometers with the measuring faces closed. Some say the surfaces in contact will corrode quicker. Others say it stresses the frame.

It is simple enough to back the tool off a little when you put it away and that is why we recommend doing it. If you plan to store the tool for extended periods of time, think about storing them with one of those little desiccant bags to absorb any rogue moisture.

Handle with care

Dial calipers are precision measuring tools, treat them like they are. They should be handled carefully and protected from shock damage as well as elements such as moisture and dirt.

Putting them away when not in use will go a long way towards keeping them out of harm’s way.

Cases

Dial calipers are precision measuring tools so the best thing you can do with them is protect them from damage as much as possible. Cases provide some damage from shocks and contaminants such as dirt, water, oil and/or coolant.

When not in use, the best place for quality measuring tools such as these is in a toolbox and the next best thing is in a decent case. Stash the case in your toolbox and you can double up the protection.

Depth base attachments

caliper depth base attachment
Caliper with depth base attachment

Calipers are notoriously difficult to use to take depth measurements. The nature of the tool makes it top heavy and therefore easy to get an incorrect reading when taking those depth measurements.

A depth base attachment makes the tool more stable and much more capable of taking accurate and repeatable measurements when it comes to things such as hole depths.

Dial caliper diagram and part names

parts of a caliper

Jaws

They are the primary measuring faces. They come into contact with your part. Make sure they are sitting square on your surface. You don’t want to twist the caliper at an angle because you won’t get an accurate reading.

Scale

The scale is used in conjunction with the dial indicator face to get your measurement reading. The scale reads in increments of .100” while the dial face reads in increments of .001”. They get added together to determine your measurement size.

Dial indicator face

Where you will look for the most important part of your measurements. The dial face reads in increments of .001”. The reading on the dial face gets added to the reading on the scale to get your measurement.

Beam

The beam is the surface along which the body of the caliper moves.

Depth rod

Not present on all calipers, though most have them especially at smaller sizes. The depth rod is the part of the caliper that extends out the end of the tool to take depth measurements.

Lock screw

Not present on all calipers, the lock screw allows the caliper to be locked in place to take readings that may be in hard-to-reach positions that may not allow the caliper to be read while measuring the part.

Related articles

How to Learn CNC Programming [Best Resources]

What is CNC programming?

CNC programming is the process of creating and running a program consisting of G code in a CNC machine to move the machine and control its functions.  

There are a large range of CNC machine types available, from industrial mills and lathes to home machines such as 3d printers, laser engravers and CNC routers.

All of these CNC machines use the same G code language to control the machine.

How difficult is it to learn CNC programming?

Learning basic CNC programming is fairly easy. It involves learning how the CNC machine will react to a series of codes. Most of the codes are easy to remember with a little practice (F for feedrate, S for spindle speed) and for any of the harder to remember codes, cheat sheet type references are usually not too far away.

Learning advanced CNC programming will take more time. Practice and repetition help, as does attending local training programs or completing an online training course.

When learning CNC programming expect to apply math skills, learn to read manufacturing blueprints and work with specialized computer programs.

What are the steps involved in CNC programming?

infographic that shows three steps to making a cnc program

Plan the program

The first step in CNC programming is planning out your program. In this step you will choose the machine and tools that will use to make your part. The operations to create the part (shape part, drill hole, mill slot, etc.) as well as the order of those steps will be determined.

Write the program

Now that you know what you will use to make the part (machine and tools) and how you will make the part (the order of operations), the program can be written.

When writing the program, you will create code either by hand or with the help of software to create the instructions for the machine to run.

In this step, documentation is usually created that lists any special requirements for running the program such as the tooling to be used, offset information, and fixturing information.

Setup the CNC machine

The role of the CNC programmer will sometimes end once the program is written and documented. However, in many machine shops programmers are also responsible for setting up and/or operating the machines too.

Setting the CNC machine up will involve loading the correct tools, setting offsets, loading the program and running a first piece to verify everything is running as planned.

Types of CNC programming

Manual programming

Manual programming is when the programmer creates the G code by hand. This involves controlling all of the machine’s functions and movements through the use of code.

Manual programming of CNC programs is usually only done with very simple programs.

Conversational programming

Conversational programming involves giving the machine specific parameters or dimensions that are required and the CNC machine generates the code for you based on the input.

Conversational programming is a middle point between manual programming and programming with CAD/CAM systems. Conversational programming simplifies the programming of features that may be difficult to program manually.

Conversational programming can allow quicker programming times when compared to CAD/CAM programming options. It also generally requires far less training than what is required to work with CAD/CAM packages.

Programming with CAD/CAM

two computer monitors with CAD-CAM software running
Example CAD/CAM software

The majority of CNC programming today is done with the use of various computer aided drafting (CAD) and computer aided manufacturing (CAM) software packages. These software programs allow the creation of long, complex CNC programs with much less work when compared to manual or conversational programming.

CAD/CAM programs are capable of programming things that wouldn’t be possible with manual or conversational programming. There are many different CAD/CAM software programs available with some of the most common being AutoCAD, Fusion 360, SolidWorks, Mastercam & EDGECAM.

How to start learning CNC programming

Local college/training

One of the best ways to start learning CNC machining is to look for local education resources such as colleges, community colleges, training programs and your state’s manufacturing extension partnership (MEP).

These resources often provide unequaled instruction and hands on use of equipment.

In some areas, companies have created their own training programs which they operate to help educate their local workforce.

Self-guided training

If you don’t have local training options available, there are a large number of resources that allow you to learn CNC machining and programming on your own schedule.

YouTube has a wealth of informative instructional videos and there is an abundance of information available on other online resources such as MachinistGuides.com.

We recommend reviewing our list of the Best CNC and Machining Books to find the best reference material available.

Learning on your own can be daunting, especially when you don’t know where to start. For this reason, we have put together A Roadmap to Learn CNC Programming to help guide you and make sure you focus on the important stuff first.

Online training

For those looking for a more structured approach, there are online CNC training resources and courses available such as GCodeTutor.

The biggest benefit of online training is that it allows you to work at your own pace. The best online training programs will have help resources available as well as quizzes and projects to test your knowledge.

Types of CNC machines

CNC machines used to be extremely expensive machines that only large companies were capable of purchasing.

In recent years, the cost of CNC machines has come down quite a bit. Large scale industrial machines are still available, but they are accompanied by a new generation of machines aimed at hobbyists and makers.

Home/hobbyist machines

cnc wood router
CNC router
  • CNC routers
  • CNC plasma cutters
  • CNC laser engravers
  • 3d printers

Industrial level machines

a cnc mill with multiple fixtures and coolant lines
Industrial CNC
  • Mills
  • Lathes
  • Electrical discharge machines (EDM)

Frequently asked questions

Do you need a degree to get a job in CNC programming?

No degree is needed to become a CNC programmer, although previous training or certifications are looked at very favorably by employers.

Many employers are willing to provide on the job training to teach new employees the skills needed to perform the job.

How long does it take to learn CNC programming?

The basics of CNC programming can be learned in a short amount of time.  Learning the basics will only take a few short months.

However, CNC programming is a wide field, and it will take much longer to have a solid understanding of everything that goes into CNC programming.

To become a highly skilled CNC programmer will likely take years. Training programs vary in length from 1-4 years on average. In addition, hands on experience will be needed to truly become a master of the craft. Certainly, anyone who applies themselves and works hard to learn will shorten that timeframe considerably especially when working in a good training program.

Is CNC programming a good career?

CNC programming is a great potential career. There is a high level of demand for skilled CNC workers across the globe. Many experienced CNC programmers and machinists are expected to retire in the coming years and a lower rate of younger workers entering the field has created a high demand for skilled CNC workers.

The demand for skilled CNC workers is so large that many in the CNC industry refer to it as “the skills gap”.

This skills gap has created a good opportunity for anyone seeking a well-paying job in the industry.

What is the salary for a CNC programmer?

According to GlassDoor.com, the average CNC programmer makes about $85,000 per year.

That comes out to about $40 an hour.

CNC programming is similar to other skilled trade jobs and can pay quite well without the need for a college degree. Getting training or certifications will help improve your chances of landing that well-paying position.

What skills does a CNC programmer need?

Because most CNC programming positions require the use of specialized CAD/CAM software, the best programmers have solid computer skills.

CNC programming positions often require math skills as well. Trigonometry, geometry and algebra are all commonly used when programming. Often the computer software will perform the necessary calculations but there are many times where calculations must be verified by hand.

Luckily, most of the math skills only use a limited number of formulas. To get a better idea of the type of math skills involved, check out our Beginner’s Guide to Machine Shop Math.

What other jobs take similar skills to CNC programming?

CNC and machine operators are the closest related job to CNC programming. Often, operators are the ones who will be running the CNC programs.

It is quite common for operators to gain some experience in their machine shop and work their way up to a position in CNC programming.

CNC and machine operator positions are typically much less demanding when it comes to computer and math skills and are a great starting point for anyone interested in learning CNC machining.

9 Best CNC and Machining Books

Whether you are a seasoned machinist or a machine operator starting a new career, a good book can go a long way towards developing your understanding of the parts, pieces and processes involved in the machining trade.

We have laid out our recommendations for all skill levels and even included some quality choices for topics such as CAD and GD&T.

Check out Machinist Guides picks for best machining and CNC related books!

Best Beginner Machining Book

Machining Fundamentals

It’s not quite machining for dummies, but this text is easily the most beginner friendly book while also going in depth on the subject.

If you take a beginner machining course, this is likely the textbook that will be used. It covers everything from manual machining to CNC and everything in between. This textbook does a good job of not assuming you have previous knowledge and instead teaches all the basics and then some in an easy-to-understand format.

One of the best things about this title is that there are a lot of pictures to show you what is being taught. There is no better beginner’s book for machining. If you are looking for something that is primarily focused on CNC machining then look for one of the books listed below instead.

Best Beginner CNC Book

Machining and CNC Technology

Machining and CNC Technology is a great overall machining book similar to our Best Beginner Machining Book. 

Where this book excels is in providing an excellent introduction to CNC related topics. Too often the actual operation and setup of the machine are not given enough coverage. 

This book gives a great introduction to CNC machining and covers everything from machine setup to program planning and g code tutorials.

Machining and CNC Technology is another textbook that is so thorough it is often used for training in machine tool classes.

Best CNC Programming Book

CNC Programming Handbook

Not a book for beginners. The CNC Programming Handbook by Peter Smid goes in depth on just about every CNC programming related topic.

Everything is covered and in great detail. Personally, this isn’t the type of text I would read straight through. Instead, I recommend using it like a CNC version of the Machinery’s Handbook.

This is absolute CNC reference grade material.

The CNC Programming Handbook makes a great comprehensive desk reference. When it comes to learning CNC programming, if this book doesn’t have it then most likely no book does.

You won’t need it on a daily basis but when you come across a topic that you don’t understand, it will be an invaluable resource.

Best Beginner GD&T Book

2018 Ultimate GD&T Pocket Guide 

GD&T can be a complex topic to learn. Our best GD&T book recommendation is 488 pages! That’s a lot of information to take in. 

Luckily, there are many different “pocket guides” out there that condense it down to a beginner level so you can comprehend the basics.

This pocket guide does a good job of covering the most common applications of GD&T and it’s likely that unless you are working in inspection, it will cover everything that you need.

Even experienced inspectors can benefit from having a quick reference handy.

Best Geometric Dimensioning and Tolerancing (GD&T) Book

GD&T: Application and Interpretation 

Geometric dimensioning and tolerancing can be a difficult subject to tackle. Fortunately, this book by Bruce Wilson does a great job of breaking it down into smaller pieces.

In my opinion, when it comes it GD&T related matters, a picture says a thousand words. Luckily this book contains countless examples to make understanding some of the more difficult concepts of GD&T much simpler.

One item worth noting is that this book is based on the ASME Y14.5 2018 revision. This is the most recent revision of the drawing standard and many other textbooks available are based on older revisions of the standard. For reference, 2009 was the previous revision of ASME Y14.5.

Note: If your shop doesn’t have a copy (which they should), more experienced GD&T users may want to consider a copy of the ASME Y14.5-2018 standard to have around for reference as well.

Best Overall Machinist Reference Book

Machinery’s Handbook

This is the book by which all other references are judged. Machinery’s Handbook, which is often referred to as the Machinist Handbook, is the quintessential reference for all machining.

This is not a book for beginners, but instead for someone who already has some knowledge of machining. Every machine shop should and likely already does have a copy or two laying around. Each new edition continues to add new and relevant content to an already extensive collection of important information.

Don’t be afraid to pick up a previous edition if you can find it used or cheaper. The difference between one edition isn’t that great. Just avoid a copy that is five or ten editions out of date.

Every machinist should have a copy of this book available to them.

Best Beginner CAD Book

Fusion 360 for Makers

If you are just getting started with CAD, then in all likelihood you will be working with Fusion 360. Fusion 360 is a free (for personal use) piece of CAD software from Autodesk, makers of Inventor.  Inventor is one of the most popular pieces of drafting software used in machine shops around the world.

Learning Fusion 360 will teach you skills which will transfer to other more advanced pieces of software. Although, I should point out that Fusion 360 is no slouch and will allow you to create some pretty advanced widgets and doodads if you take the time to learn it.

Fusion 360 for Makers is a great starting point for newbies to learn the basics and get acquainted with the software.

Best Budget Beginner Book for Lathes

Basic Lathework for Home Machinists 

If you are just getting started with lathes and are looking for a guide to start you off cheap then this is the book. It is not the most comprehensive, but it does a good job laying things out for beginners.

The abundance of pictures helps machining newbies wrap their head around the parts and processes involved with metal lathes. The only complaint would be that the pictures are in black and white which makes it a little bit harder to see some of the finer details in the photos.

If you aren’t ready to dive into a literal textbook yet, then this book can get you started at a budget friendly price.

Best Budget Beginner Book for Mills

The Milling Machine for Home Machinists

Just like Basic Lathework for Home Machinists, this book is a good starter book.

One area where The Milling Machine for Home Machinists excels is the color pictures. There are a lot of them and they make it easier to understand the topics being covered.

This is not the book you want if you have been running a mill for any length of time. It covers entry level material only. Once you fully understand the information covered, think about stepping up to one of the more comprehensive machining books for beginners such as Machining Fundamentals or Machining and CNC Technology.

Conclusion

Thanks for checking out our guide to the best machining and CNC books. Hopefully they help add to your physical and mental library.

P.S. If you have a good recommendation for a machining book please share it in the comments below.

Related articles