FANUC codes
FANUCProgram/G-codeBasic10-20 minutes

039

Fanuc Alarm 039 - CHF/CNR NOT ALLOWED IN G41/G42

FANUC ALARM 39

Chamfering or corner R was specified with a start-up, cancel, or G41/G42 switch in tool nose radius compensation mode.

Root Cause Summary

Alarm 039 occurs when a chamfer (CHF) or corner rounding (CNR) command is programmed during tool nose radius compensation (G41/G42) startup, cancel, or mode switching. The Fanuc control cannot calculate proper compensation geometry when CHF/CNR modifiers are active during these transition blocks, as the compensation offset requires at least two consecutive linear or circular moves to establish the offset vector.

Causes and Fixes

  1. 1

    Review the program block that triggered the alarm. Locate the G41 or G42 command and check if CHF or CNR appears in the same block or the immediately following block.

  2. 2

    Remove the CHF or CNR command from the compensation startup block. Insert at least one full linear move (G01) after the G41/G42 command before using CHF/CNR modifiers.

  3. 3

    Verify tool nose radius value is correctly set in the offset register (OFFSET SETTING screen > GEOMETRY for tool nose radius). Typical parameters are #5001-#5200 (geometry offsets) depending on control series.

  4. 4

    Test the modified program in single block mode to confirm compensation vector establishes properly before any CHF/CNR commands execute.

    Ensure at least two consecutive blocks exist after G41/G42 before using CHF/CNR to allow proper offset calculation.

DIY Feasiblehigh confidence

Call a technician if:

  • ·Parameter 5004 changes required
  • ·Persistent alarms after program corrections
  • ·Complex multi-axis compensation issues

Prevention

  • Always separate G41/G42 activation from CHF/CNR by at least 2 blocks
  • Use G40 cancel before switching between G41 and G42
  • Program geometric modifications only during stable compensation states
  • Maintain minimum 2x tool radius approach distance for compensation startup

Common Mistakes

  • Combining G41/G42 with CHF/CNR in same block
  • Programming CHF/CNR immediately after compensation activation
  • Direct switching between G41 and G42 without G40 cancel
  • Insufficient approach distance for compensation vector calculation

Related Alarms

Seeing Multiple Alarms?

Seeing another alarm with this one? Enter the code.

Get machine-aware diagnosis

AxisMD logs alarms against your actual machines, tracks patterns, and gives AI context your manual doesn't have.

Start free

Was this guide helpful?

Always verify with your machine manual or a certified technician before performing service procedures.