---
title: "Why a Boring Bar Crashes Into the Back of the Part"
description: "A boring bar hits the back of the part when the Z depth runs too far: wrong depth, wrong Z zero, an absolute mix-up, or a bad retract. Here are the causes and fixes."
url: https://gcodepractice.com/journal/lathe-boring-bar-crashed-into-back-of-part-g-code/
canonical: https://gcodepractice.com/journal/lathe-boring-bar-crashed-into-back-of-part-g-code/
author: "Lawrence Arya"
authorUrl: https://www.linkedin.com/in/vibecoding/
published: 2026-06-04
updated: 2026-06-04
category: "Guides"
tags: ["lathe", "boring", "crash", "g-code", "safety basics"]
lang: en
---

# Why a Boring Bar Crashes Into the Back of the Part

> **TL;DR** A boring bar crashes into the back of the part when it travels too far in Z: a programmed depth that is too deep, a wrong Z work shift, an absolute and incremental mix-up, or a retract done in the wrong order. Boring is blind, so leave clearance from the back wall, verify Z zero and offsets, confirm G90, and single block the first pass.

This is an educational explanation of a common lathe crash, not operating instructions for your specific machine. Always follow your machine's manual and shop procedures, and verify depth and offsets before boring.

Boring is internal work: the bar reaches down inside a hole where you cannot see the tip. On a lathe the Z axis runs along the part, so the depth of a bore is a Z move. That is exactly why this crash is so common. One Z number too far, and the bar drives into the back wall of a blind bore or the far end of the part, as the [lathe and boring overview](https://en.wikipedia.org/wiki/Lathe) describes.

## Why the back wall gets hit

Every cause comes down to the same thing: the tool ended up deeper in Z than the part allows.

| Cause | What happens | Fix |
| --- | --- | --- |
| Depth value too deep | Programmed Z passes the back wall | Leave clearance from the bottom |
| Wrong Z zero / work shift | The whole job is shifted deeper | Verify Z zero before cutting |
| Absolute vs incremental mix | A Z move stacks from the wrong reference | Confirm `G90` is active |
| Wrong tool offset | The control mislocates the tip | Re-check the tool geometry offset |
| Bad retract order | Bar drags or stays at depth | Come off the wall, then exit |

## Depth is the dangerous number

The most common version is simply a Z that goes too far: a blind bore is, say, 30 mm deep, but the program feeds to a Z that reaches 32 mm. Because you cannot see it, nothing warns you until the bar bottoms out. Always leave a deliberate clearance between the programmed depth and the real back wall, and treat the depth value as the number to double-check. A wrong Z zero does the same thing to every move at once, which is the lathe version of the offset problems behind a [G00 crash](/journal/why-did-my-cnc-crash-on-g00/). The positioning behavior of these Z moves is documented in the [LinuxCNC reference](https://linuxcnc.org/docs/html/gcode/g-code.html).

## Absolute vs incremental, again

An absolute and incremental mix-up is brutal in a bore. Leave `G91` active when the program expected `G90`, and a Z move adds to where the tool already is instead of going to a fixed depth, so it sinks further than intended. This is the same trap explained in [G90 vs G91 crash prevention](/journal/g90-vs-g91-crash-prevention/), but with no clearance to spare because the tool is already inside the hole.

## Retract off the wall first

Getting out matters as much as getting in:

| Step | What you do |
| --- | --- |
| 1 | At depth, move X slightly toward the center to leave the bore wall |
| 2 | Rapid Z out of the hole |
| 3 | Then reposition for the next pass |

Retracting Z while the tool is still pressed on the wall drags the insert and can gouge the bore. Coming off in X first breaks contact cleanly. The standard [code references](https://www.cnccookbook.com/g-code-m-code-cnc-list-cheat-sheet/) show these as ordinary positioning moves, but the order is what keeps the bar safe.

## Prove it before you cut

Because boring is blind, verification matters more than usual. Single block the first pass, keep a hand on feed hold, and confirm the depth, the Z zero, and the mode first. That is the same discipline as [safely testing a program without crashing](/journal/how-to-safely-test-a-g-code-program-without-crashing/), and it pairs with the lathe spindle caution in [G50 max spindle speed](/journal/g50-max-spindle-speed-crash-lathe/). The code literacy to catch a wrong depth quickly is what a practice routine on the [G-code practice hub](/g-code-practice/) builds.

## Bottom line

A boring bar hits the back of the part when Z travels too far: too deep a depth, a wrong Z zero, an absolute mix-up, a wrong offset, or a bad retract. Leave clearance from the back wall, verify Z zero and offsets, confirm `G90`, retract off the wall in X before exiting, and single block the first pass.

## Sources

- [Wikipedia: Lathe (boring, internal work)](https://en.wikipedia.org/wiki/Lathe)
- [LinuxCNC G-code reference (positioning, Z moves)](https://linuxcnc.org/docs/html/gcode/g-code.html)
- [CNCCookbook: G-code and M-code cheat sheet](https://www.cnccookbook.com/g-code-m-code-cnc-list-cheat-sheet/)

## Frequently asked questions

### Why did my boring bar crash into the back of the part?
Because it traveled too far in Z. Boring is blind, so any error that sends Z deeper than intended drives the bar into the back wall: a depth that is too deep, a wrong Z zero, an absolute versus incremental mix-up, or a bad retract.

### What order should you retract a boring bar?
Come off the bore wall before exiting: move X slightly toward the center to break contact, then rapid Z out. Retracting Z while still on the wall can drag and gouge.

### How do you stop boring crashes when learning?
Leave clearance from the back wall, verify the Z zero and tool offsets, confirm absolute mode, and single block the first pass with a hand on feed hold. Treat the depth as the most dangerous number.

### What is the best way to learn lathe G-code safely?
Drill the codes with active recall so positioning codes and modes are automatic. A free app like G-Code Sprint quizzes the everyday codes and repeats whichever ones you miss.

*G-Code Sprint is a study and practice tool only. Always follow your instructor, employer, machine manual, and shop safety procedures.*

---

Source: https://gcodepractice.com/journal/lathe-boring-bar-crashed-into-back-of-part-g-code/
Author: Lawrence Arya — https://www.linkedin.com/in/vibecoding/
