What to check when the path is missing or looks wrong
How to narrow down the cause when CNC Path Analyzer draws no path or an unexpected one: machine type, plane, start position, cycle addresses and called programs, in that order.
First, look at the two lines in the warning
When path calculation stops, the tool shows the cause line and, if the problem occurred inside a cycle, the cycle call line. For example, if one line in a G71 profile block is the problem, the cause line is that line inside the profile and the call line is the G71 block. Telling the two apart shows immediately whether the cycle command or the profile needs fixing.
1. Machine type and plane
If a lathe program is set up as a machining center, or the other way round, the same G-code takes on a different meaning. Typically, G83 and G84 interpret addresses differently on lathes and mills, and lathe X is a diameter while milling X is a plain coordinate. If an arc looks wrong, also check the G17/G18/G19 plane selection. How to determine arc direction is explained in the G02/G03 article.
2. Start position and coordinate mode
The X/Z (or X/Y/Z) start position must be established before a cycle. G90 is absolute and G91 is incremental, and lathes may also specify incremental moves with U/W. After moves referenced to the machine origin such as G28, G30 or G53, or after polar coordinate mode ends, the tool may treat the current position as "unknown" for safety. Once a position is commanded again in absolute coordinates, calculation continues.
3. Cycle addresses and profiles
The meaning of each cycle's addresses and common mistakes are explained with examples in the Learning Center articles on G71, G72, G76, G83 and G84.
- G71/G72: check that the start point is outside the profile, that the P block commands only X (G71) or only Z (G72), and that the profile changes in one direction only.
- G76: check that the addresses of the first and second blocks are not mixed up and that P and Q are integers in units of 0.001 mm.
- Lathe G83/G84: whether R is incremental or absolute depends on the controller series and compatibility settings. If the tool suggests a reference interpretation, select it only after confirming that the candidate R point and end point are correct.
- K0: in supported contexts, only the cycle conditions are stored and the cycle runs at the next positioning block.
4. Called programs
The P number in M98 P_ is not a file name or slot number; it links to the O number inside the called program. A warning appears if the same O number exists twice, if a called program has no M99 at the end, or if programs keep calling each other.
When there is no warning but the shape looks wrong
- Units: if you read a
G20(inch) program as millimeters, the size is off by a factor of 25.4. - Display coordinate system: check that the view you want is selected: lathe X-Z, machining center X-Y, or X-Y-Z.
- Per-tool display: some tool paths may be switched off in the tool layers.
- Program end: anything after
M30orM02is not drawn. If you placed a subprogram at the end of the same file, it runs only when called (M98).
Common warnings and where to look first
| Warning | Where to look first |
|---|---|
| Decimal point check | Lines whose coordinates lack a decimal point; the machine's decimal input mode (pocket-calculator type or not) |
| Cycle start point inside the profile | The positioning block just before G71/G72 and the X/Z of the first profile block |
| Profile does not change in one direction | Lines between P and Q where X (G71) or Z (G72) reverses |
| Arc definition error | End point of the previous block, R sign, I/J/K values and end-point radius |
| Position unknown | The first move after G28/G53 is incremental or commands only some axes |
| Called program not found | Whether the program with the O number matching M98 P was loaded as well |
5. Check with the smallest example that reproduces the issue
When you contact us, do not send entire production NC programs or company or customer information. A 10–20 line synthetic program that reproduces the problem, the selected machine type, controller and coordinate system, the expected behavior and the cause line shown on screen are enough. Deleting lines one by one until the problem disappears usually reveals the cause along the way. How to send it is described in Contact and error reports.