FANUC codes
FANUCProgram/G-codeIntermediate15-30 minutes

046

Fanuc Alarm 046 - ILLEGAL REFERENCE RETURN COMMAND

FANUC ALARM 46

A command for return to the second, third, or fourth reference position is in error. The address P command is in error.

Root Cause Summary

Alarm 046 occurs when the CNC detects an improper reference return command (G28, G30, G30.1, etc.) attempting to return to the 2nd, 3rd, or 4th reference position with an incorrect or missing P address specification. The system expects a valid P code (P2, P3, or P4) to designate which reference position is targeted, and the alarm triggers when this specification is illegal, missing, or conflicts with parameter settings that haven't enabled multiple reference positions.

Causes and Fixes

  1. 1

    Review the NC program line that triggered the alarm. Verify G30 commands include a valid P address: G30 P2 (2nd reference), G30 P3 (3rd reference), or G30 P4 (4th reference). Note that G28 returns to 1st reference and does not use P address.

  2. 2

    Check program syntax for correct format: G30 P_ X_ Y_ Z_ (intermediate point) or G30.1 P_ (direct return). Ensure no spaces or incorrect characters between G30 and P address.

  3. 3

    Correct the program by specifying valid P code. Example: Change 'G30 X0 Y0 Z0' to 'G30 P2 X0 Y0 Z0' for 2nd reference position return.

  4. 4

    Re-run the program after editing. If alarm persists, verify the P value is within the range 2-4 and matches an enabled reference position in parameters.

DIY Feasiblehigh confidence

Call a technician if:

  • ·Parameter backup/restore needed
  • ·Machine coordinate system corruption suspected
  • ·Multiple reference position alarms persist

Prevention

  • Always verify reference position parameters before programming G28/G30 with P addresses
  • Use consistent P address values across programs
  • Document configured reference positions for operators

Common Mistakes

  • Using P1 or P0 in reference return commands
  • Forgetting to configure parameter 1241-1252 values
  • Not enabling reference positions in parameter 1240

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.