CNC programming and alarms
Fanuc alarm codes: meanings and first checks by control series
Newer Fanuc controls such as the 0i-D put a prefix on the alarm number: PS for program errors, SV for servo, OT for overtravel, OH for overheat. Older controls such as the 16/18-C and 0-C use plain 3-digit numbers, and the same number can mean different things on different series.
Technical review pending. Formulas and values are cited. This notice comes down after a machinist review.
Source: FANUC maintenance manuals by series: B-64305EN/03 (0i-D), B-64695EN/01 (0i-F Plus), B-62755EN (16/18-C) and B-61395E/06 (0-C). Full titles under the tables. Summarized in our own words, not reproduced.
Same number, different meaning
- 306: APC battery voltage zero on a 16/18-C; absolute encoder deviation overflow (SV0306) on a 0i-D. A 0-C has no 306; its battery-zero alarm is 316 for axis 1.
- 307: APC battery low on a 16/18-C; axis moved too far, position lost (SV0307) on a 0i-D. Battery advice for 307 applies to the 16/18-C numbering only.
- 076: no P address in the call block on a 16/18-C; called program not found (PS0076) on a 0i-D.
- 300 and 310: on a 16/18-C, 300 means reference return needed. On a 0-C, most APC and servo alarms in the 300 and 400 ranges carry the axis number in the middle digit: 310 is axis 1, 320 is axis 2, and 424 is a servo detection fault on axis 2.
Read the series off the CNC screen or the control label before acting on a number.
| Alarm | Control series | Meaning | First checks |
|---|---|---|---|
| PS0010 | 0i-D | G code not available on this control or option set | Confirm the G code and its option exist on the machine; check which post wrote the program |
| PS0011 | 0i-D | Cutting move commanded with zero feed | Make sure an F word is active before the first cutting move |
| PS0020 | 0i-D | Arc start and end radii differ by more than the allowed tolerance | Check the arc end point, the I, J, K or R values and post rounding |
| PS0033 | 0i-D | Cutter comp cannot find an intersection between two moves | Check the lead-in move and the comp radius against the part geometry |
| PS0041 | 0i-D | Cutter comp would overcut the part | Compare the tool radius with the smallest inside feature |
| PS0076 | 0i-D | Called subprogram or macro is not in memory | Confirm the called program is loaded and its number matches the call |
| PS0085 (SR0085) | 0i-D, 0i-F Plus | RS-232 receive error during data transfer | Match baud rate, parity and stop bits on both ends; check the cable |
| PS0090 | 0i-D, 0i-F Plus | Reference return did not complete | Move the axis away from home and retry at the normal speed; check the home dog or switch |
| PS0224 | 0i-D | Automatic run started before reference return | Home all axes, then restart the program |
| SW0100 | 0i-D | Parameter write is turned on | Turn parameter write back off when the edit is done |
| SV0301 | 0i-D | Absolute encoder communication error; axis position is lost | Check the encoder cable and connectors, then re-reference per the manual |
| SV0306 | 0i-D | Absolute encoder position deviation overflow; axis position is lost | Re-reference per the manual; look for what caused the large deviation |
| SV0307 | 0i-D | Axis moved too far for the absolute encoder to track; position is lost | Re-reference per the manual; check the brake and any movement while power was off |
| SV0401 | 0i-D, 0i-F Plus | Servo amplifier ready signal dropped | Read the code on the amplifier display; check the E-stop chain and amplifier power |
| SV0410 | 0i-D | Following error too large with the axis stopped | Check for axis drift, brake, load or an amplifier fault on that axis |
| SV0411 | 0i-D | Following error too large with the axis moving | Check for binding, way lube, load and motor power |
| SV0417 | 0i-D, 0i-F Plus | Digital servo parameter setting is invalid | Review recent servo parameter changes |
| OT0500 | 0i-D | Axis past the plus-side soft limit (stored stroke limit 1) | Jog the axis back in the minus direction; check the program and work offsets |
| OT0501 | 0i-D | Axis past the minus-side soft limit (stored stroke limit 1) | Jog the axis back in the plus direction; check the program and work offsets |
| OT0506 | 0i-D | Plus-side hardware limit switch tripped | Use the machine builder's overtravel release; find out why the axis got there |
| OT0507 | 0i-D | Minus-side hardware limit switch tripped | Use the machine builder's overtravel release; find out why the axis got there |
| OH0700 | 0i-D, 0i-F Plus | Control unit overheated | Check the cabinet fans, filters and shop temperature |
| DS0300 | 0i-D, 0i-F Plus | Reference return needed before the axis can run (absolute position) | Home the axis per the machine builder's procedure |
Codes confirmed in the 0i-D maintenance manual (B-64305EN/03). Rows marked 0i-F Plus also appear as troubleshooting headings in B-64695EN/01. The 0i-F Plus troubleshooting chapter lists the RS-232 alarms with the SR prefix (SR0085 to SR0087).
| Alarm | Control series | Meaning | First checks |
|---|---|---|---|
| 000 | 16/18-C | A parameter was changed that needs a power cycle | Save the change, then cycle power |
| 076 | 16/18-C | M98, G65 or G66 block has no P address | Add the P word with the program number |
| 300 | 16/18-C | Axis needs a manual reference return (APC) | Re-reference the axis per the manual |
| 306 | 16/18-C | APC battery voltage at zero; position is lost | Replace the battery per the manual, then re-reference |
| 307 | 16/18-C | APC battery low; replace it soon | Replace the battery per the manual before it reaches zero |
| 3n0 (310, 320, ...) | 0-C (n = axis 1 to 8) | Axis n needs a manual reference return (APC) | Re-reference that axis |
| 401 | 16/18-C | Servo amplifier ready signal (DRDY) dropped | Check the amplifier LEDs, input power and E-stop circuit |
| 410 | 16/18-C | Position error too large with the axis stopped | Check for drift, brake, load or an amplifier fault |
| 411 | 16/18-C | Position error too large with the axis moving | Check for binding, load and motor power |
| 414 | 16/18-C | Digital servo system fault (detection related) | Read diagnostics 200 and 204; check the amplifier |
| 4n4 (414, 424, ...) | 0-C (n = axis) | Digital servo detection fault on axis n | Read diagnostics 720 to 727 for that axis |
| 500 | 16/18-C | Axis past the plus-side stored stroke limit 1 | Jog the axis back in the minus direction; check the program and offsets |
| 501 | 16/18-C | Axis past the minus-side stored stroke limit 1 | Jog the axis back in the plus direction; check the program and offsets |
| 700 | 16/18-C | Control unit overheated | Check the cabinet fans and filters |
| 749 | 16/18-C | Serial spindle communication error after power-on | Check the spindle link cable; cycle power on the CNC and spindle amplifier |
| 751 | 16/18-C | Spindle amplifier is reporting its own alarm (AL number) | Read the AL number on the spindle amplifier display |
| 900 | 16/18-C | ROM parity error | Call service; note the board and the screen message |
The 16/18-C rows come from B-62755EN and the 0-C rows from B-61395E/06. In the 0-C patterns, n is the axis number: 310 is axis 1, 320 is axis 2.
Source: FANUC Series 0i-MODEL D Maintenance Manual (B-64305EN/03), Appendix A alarm list and Chapter 10 troubleshooting; FANUC Series 0i-MODEL F Plus Maintenance Manual (B-64695EN/01), Chapter 10 troubleshooting; FANUC Series 16/18/160/180-MODEL C Maintenance Manual (B-62755EN); FANUC Series 0-MODEL C Maintenance Manual (B-61395E/06). Meanings and first checks are summarized in our own words, not reproduced.
How to read a Fanuc alarm
- Prefix: on the 0i-D, PS is a program or operation error, SW is parameter write, SV is servo (including the absolute encoder), OT is overtravel and OH is overheat. DS0300, the reference return alarm, is the DS code listed here. Older series show the number alone.
- Series: the control series appears on the CNC screen and on the label on the control unit. Match it to the table before you trust a meaning.
- Manual: confirm every alarm in the maintenance manual for that series. Machine builder alarms (PMC messages, often in the 1000 and 2000 ranges) are set by the builder and are not on this list; the machine manual covers them.
Servo, spindle and power alarms on a machine with high voltage in the cabinet go to qualified service. Checks inside the electrical cabinet are for qualified people only.
Shop notes
- Write down the full alarm number, prefix and screen message before you reset. The number alone is not enough across series.
- APC alarms (300 range, SV0301, SV0306, SV0307, DS0300) mean the stored axis position is gone or suspect. Re-reference before running a part.
- An overtravel alarm points to the program or offsets more often than to the machine. Find the block that sent the axis there before you run again.
- Call service when an alarm comes back after the first checks, or for any ROM, CPU or amplifier fault.
FAQ
What is Fanuc alarm SV0401 or 401?
The servo amplifier ready signal dropped. It is SV0401 on a Series 0i-D or 0i-F Plus and 401 on a Series 16/18-C. Read the code on the amplifier display, then check the E-stop chain and amplifier power. Amplifier faults on a powered machine go to qualified service.
What does alarm 300 or DS0300 mean, and why do you have to re-reference?
The control no longer trusts the stored axis position from the APC (absolute pulse coder), so the axis needs a reference return before it runs. Until it is homed, work offsets and stroke limits are measured from a zero the control cannot confirm. It is 300 on a 16/18-C, DS0300 on a 0i-D or 0i-F Plus, and 310, 320 and so on (3n0, n = axis) on a 0-C. Home the axis per the machine builder's procedure.
What do Fanuc alarms 500 and 501 mean, and how do you back off?
The axis went past stored stroke limit 1, the soft limit: 500 (OT0500 on a 0i-D) is the plus side and 501 (OT0501) is the minus side. Jog the axis back the other way, minus for 500 and plus for 501, then check the program and work offsets for the move that sent it there. A hardware limit switch (OT0506 or OT0507 on a 0i-D) needs the machine builder's overtravel release instead.
Why does alarm 306 mean different things on different Fanuc controls?
Each series has its own numbering. On a 16/18-C, 306 means the APC battery voltage is at zero. On a 0i-D, SV0306 means an absolute encoder position deviation overflow. A 0-C has no 306; its battery-zero alarm carries the axis number, such as 316 for axis 1. Read the series off the CNC screen or control label before you act on a number.
What do Fanuc alarms 414 and 424 mean?
On a 16/18-C, 414 is a digital servo system fault related to detection; read diagnostics 200 and 204 and check the amplifier. On a 0-C the middle digit is the axis, so 414 is axis 1 and 424 is axis 2 with a digital servo detection fault; read diagnostics 720 to 727 for that axis.
What does SW0100 mean on a Fanuc 0i?
Parameter write is turned on. Turn parameter write back off when the edit is done.
Last updated