FANUC Spindle Amplifier Alarm Codes Full List: SPM/PSM Two-Digit LED 01–88 (A/b0/C0 Letter Codes) + Replace-vs-Wire Decision

You are standing at the cabinet reading the two digits on the spindle amp’s LED. Two mistakes waste the most time: treating “SP9012 on the CNC” and “12 on the amplifier” as two different faults, and swapping a good power module because of a bad code list. This page is sorted by the two digits actually shown on the SPM display, with plain-English meaning, first action, and the decisive check for each.

1. Know the cast: SPM / PSM / SVM / spindle motor

In a FANUC serial spindle (α / αi series) the cabinet holds several power modules side by side. Which one is lit, and with what, matters:

  • PSM (Power Supply Module): rectifies 3-phase 200 V into the DC link (~300 V) and regulates it, and feeds 24 V control power to the whole stack. Its own LED shows power-side codes like 01/02/04/05/07.
  • SPM (Spindle Module): hangs on the DC link and drives the spindle motor. Almost all the two-digit codes in this article appear on this SPM STATUS window.
  • SVM (Servo Module): also on the DC link, but drives the feed axes (X/Y/Z). It raises Sv alarms (e.g. SV0301), not the SPM codes here—don’t mix them.
  • Spindle motor itself: carries the thermostat and encoder (MZi/BZi/CZi or magnetic sensor). It shows nothing, yet “motor overheat 01” and “coder disconnect 27” usually originate there.

There is also a confusingly named SPMC (αC-series built-in spindle amp): it reuses the same numeric codes as SPM, but a few (e.g. 12, 35) mean something else. Those are flagged “SPMC” in the table.

Power and signal chain of SPM / PSM / SVM / spindle motor

2. How to read the display: numeric codes + letter codes (A / A0–A4 / b0 / C0–C2)

The SPM front has a two-digit 7-segment LED (STATUS window). Standing by it shows 0; on alarm it shows the code and the ALM red LED lights. Three families:

  1. Pure numeric 01–59: common to all standard α/αi units. This is the main table in section 3.
  2. Numeric 69–88: only on αi SP units equipped with the Safety Function (safety speed monitoring, safety parameters). Machines without the safety option never show this range.
  3. Letter codes: not numbers—control/communication faults—

– A / A0: SPM control program not running; A1/A2: control program processing error; A3: control-board clock error; A4: SRAM parity error.

– b0: communication error between modules (SPM–PSM)—check the cable between the two blocks first, then suspect a module.

广告

– C0/C1/C2: serial communication data error between CNC and spindle module (fiber JA7A/JA7B or the CNC-side board).

Reading tip: the code is raised by the SPM itself and is the same fault shown on the CNC as “SP90xx” (see section 5). A letter code usually means don’t touch the power terminals yet—it is a control board / fiber / 24 V matter.

Display rules: numeric 01–59, safety 69–88, letter codes A/A0–A4/b0/C0–C2

3. Alarm code full list (sorted by the two digits on the display)

The “Triage” column maps to the three paths in section 4: Replace (module/PSM body—still alarms with cable off, or control-board fault) / Wire (cable, connector, motor, incoming) / Param (init & polarity) / Mech (load, fan, regen). “SPMC” marks αC-series only.

CodeEnglishMeaningFirst action (triage)Decisive check / common cause
01Motor overheatSpindle motor overheatMech · fanMotor thermostat tripped; check cooling fan, mechanical bind, sustained overload
02Excess speed deviationSpeed deviation too largeWire · paramActual speed can't follow command; speed sensor/cable, load, speed-detect param
03DC link fuse blownDC link fuse blownReplaceSevere overcurrent (often blown IGBT); SPM internal fuse, usually module swap
04Input fuse / phase lossInput fuse / phase lossWire (PSM side)PSM 3-phase 200 V incoming phase loss; check incoming terminals & CX
05Control P.S. fuse blownControl P.S. fuse blownWireAF2/AF3 control-power fuse blown
06Overspeed (analog) / temp sensorOverspeed (analog) or temp sensorWireAnalog spindle; motor temp sensor or cable open
07Overspeed (digital)Overspeed (>115% max)Param · wireSpeed-detect param wrong, power-cable phase reversed, amp fault
08+24 V overvoltage+24 V input overvoltageWireInput voltage high; check 24 V supply
09Heat sink overheatHeat sink overheatMech · fanAmp cooling fan, cabinet airflow blocked
10Low input voltageLow input voltageWireIncoming voltage sag; check wiring & supply
11DC link overvoltageDC link overvoltageWire (PSM side)Regen energy during rapid decel; check PSM / regen resistor
12DC link overcurrentDC link overcurrentReplace · wireCRITICAL: motor/power-cable short, IGBT/IPM blown; trips on command = this
13CPU memory faultCPU memory faultReplaceControl-board fault, swap SPM control PCB
14ROM alarmROM alarmReplaceROM abnormal
15Spindle switch seq.Spindle switch / orient seq.ParamMagnetic-pole sensor or orient param, MCC timing
16RAM faultRAM faultReplaceNVRAM/RAM fault, swap control board
17NVRAM faultNVRAM faultReplaceSwap control board
18ROM checksumROM checksumReplaceProgram ROM checksum, swap control board
19IU offsetU-phase current-detect offsetReplaceUsually SPM control-board fault (on at power-up)
20IV offsetV-phase current-detect offsetReplaceSame, V phase
21VCMD offset / sensor polarityPosition sensor polarity wrongParamAfter swap, param #4000.0 / #4001.4 polarity reversed
22TSA offsetTSA offsetReplaceControl-board fault
23ER offsetER offsetReplaceControl-board fault
24Serial data errorSerial data errorWireNormal if CNC is off; if it stays, check JA41/JA7A/7A7B fiber & SPM control board
25Serial transfer stoppedSerial transfer stoppedWireSame, link broken
26Cs speed sensor errCs contour speed sensor errWireCs contour speed sensor / cable
27Position coder disconnectPosition / encoder signal openWireCheck JYA4/JYA3 encoder cable, encoder itself
28Cs pos sensor disconnectCs contour pos sensor openWireCs contour position sensor / cable
29Continuous overloadContinuous / short-time overloadMechSustained overload (≈30 s / 9 V load meter); check cut & clamp
30Input circuit overcurrentInput-side overcurrentWire (PSM side)PSM / incoming / AC reactor overcurrent; differs from 12—see section 4
31Motor lock / V-sig lostMotor won't turn / V-sig lostWire · mechMechanical jam, broken belt, bad speed sensor
32Serial LSI RAM faultSerial LSI RAM faultReplaceControl-board fault
33DC link precharge failDC link precharge fail / undervoltWire (PSM side)PSM charge timeout, incoming phase loss, DC-link issue
34Parameter out of rangeParameter out of rangeParamSpindle param wrong; not initialized after swap
35Gear ratio out of rangeGear ratio out of rangeParamOrient magnetic-sensor param; SPMC meaning differs
36Error counter overflowError counter overflowParamGear ratio / position-gain param too large
37Decel fail after EMGNo decel after EMGParamMotor accelerates after EMG; speed-feedback pulse param wrong
39Cs 1-rot pos errCs 1-rot signal pos errWire · paramCs contour detector param / cable
40Cs 1-rot missingCs 1-rot signal missingWireSame, signal not generated
41Pos coder 1-rot pos errPos coder 1-rot pos errWire · paramPos-coder pulse-count param wrong
42Pos coder 1-rot missingPos coder 1-rot missingWireSame, signal not generated
43Diff-spindle coder disconnectDiff-speed spindle coder openWireMaster-spindle coder open in differential-speed mode
44A/D converter errorA/D converter errorReplaceControl-board A/D fault
46Thread 1-rot failThread 1-rot signal failWireEncoder sync signal abnormal during threading
47Pos coder pulse abnormalPos coder pulse count abnormalWire · paramMZ/BZ pulse count abnormal, param wrong
49Diff speed overspeedDiff-speed overspeedParamMaster/slave spindle sync speed diff too large
50Sync calc overflowSync calc overflowParamSync param wrong
51DC link undervoltageDC link undervoltageWire (PSM side)Low-voltage form of 33 logic
52ITP signal stopped 1CNC sync ITP stopped 1WireInter-module sync fiber
53ITP signal stopped 2CNC sync ITP stopped 2WireSame
54Long-duration overcurrentLong-duration overcurrentMech · wireFast accel or short; check load & cable
55Switch signal mismatchSpindle switch signal mismatchParamHi/lo winding switch contactor / signal mismatch
56Ctrl fan stoppedControl fan stoppedMechAmp internal fan stopped
57PSM regen overtempPSM regen resistor overtempWire (PSM side)PSM regen resistor overtemp
58PSM main fan overtempPSM main fan overtempWire (PSM side)PSM main-circuit fan overtemp
59PSM internal fan stoppedPSM internal fan stoppedWire (PSM side)PSM internal cooling fan stopped (same number, different module than SPM 59)
69Safety speed exceededSafety speed exceededParamαi SP with Safety only: safety speed monitor tripped
70Abnormal axis dataAbnormal axis dataParamSafety axis-data abnormal
71Abnormal safety paramAbnormal safety paramParamSafety param wrong
72Motor speed mismatchMotor speed mismatchWire · paramMotor speed inconsistent under safety monitor
73Motor sensor disconnectMotor sensor disconnectWireSafety encoder / motor sensor open
74CPU test alarmCPU test alarmReplaceControl-board CPU self-test
75CRC test alarmCRC test alarmReplaceControl-board CRC self-test
76Safety func not executedSafety func not executedParamSafety function not commissioned
77Axis number mismatchAxis number mismatchParamSafety config axis number wrong
78Safety param mismatchSafety param mismatchParamSafety params disagree on cross-check
79Abnormal initial testAbnormal initial testParamSafety initial test abnormal
81Motor sensor 1-rot errMotor sensor 1-rot errWireSafety motor sensor 1-rot signal
82Motor sensor 1-rot missingMotor sensor 1-rot missingWireSame, not detected
83Motor sensor signal errMotor sensor signal errWireSafety motor sensor signal
84Spindle sensor disconnectSpindle sensor disconnectWireSafety spindle sensor open
85Spindle sensor 1-rot errSpindle sensor 1-rot errWireSafety spindle sensor 1-rot signal
86Spindle sensor 1-rot missingSpindle sensor 1-rot missingWireSame, not detected
87Spindle sensor signal errSpindle sensor signal errWireSafety spindle sensor signal
88Radiator fan stoppedRadiator fan stoppedMechRadiator fan stopped
A / A0Control prog not runningSPM control program not runningReplaceControl board / program not up
A1 / A2Control prog errorControl program errorReplaceControl-board fault
A3Clock errorClock errorReplaceControl PCB clock
A4SRAM paritySRAM parityReplaceControl-board SRAM
b0Module comm errorModule comm error (SPM–PSM)Wire · replaceCheck cable between blocks first, then SPM/PSM control board
C0/C1/C2CNC–SPM serial errCNC–SPM serial data errWireFiber JA7A/JA7B or CNC-side serial spindle board

Note: letter codes A/b0/C0 are not in the same window logic as the numbers but all light the ALM red LED. See b0 → check the inter-module cable first; see C0–C2 → check the CNC–SPM fiber first. Don’t start by swapping a power module.

4. Triage: replace the module / chase the wire / fix the parameter

The most valuable field judgment is separating “the amp is bad” from “cable / motor / parameter” so you don’t swap an expensive board by mistake. The table groups the high-frequency codes by first action, with the one-shot decisive check.

AlarmFirst actionDecisive check (how to confirm)
03 / 12 (when IGBT blown) / 13 / 16 / 18 / 19 / 20 / 32 / 44 / A0–A4ReplaceStill alarms immediately with motor U/V/W disconnected at the amp → power stage or control board shorted, it's the amp; A class and 19/20 at power-up are basically control board
04 / 05 / 24 / 25 / 27 / 30 / 31 / 33 / 43 / b0 / C0–C2WireFault follows cable/connector/motor: alarm clears when cable removed → downstream (cable or motor); 24 clears after re-seating/replacing fiber → comm link; incoming phase loss 04/33 → PSM incoming
07 / 15 / 21 / 34 / 35 / 36 / 37 / 49 / 50ParamNot initialized after swap, polarity #4000.0/#4001.4 reversed, speed/gear-ratio param wrong; fixing param clears it
01 / 02 / 09 / 11 / 29 / 54 / 56 / 88Mech / load / fanMotor overheat → fan & cut; overvoltage 11 → regen; overload 29 → clamp & load meter; fan stop 56/88 → airflow
11 / 30 / 33 / 51 / 57 / 58 / 59Check PSM (power module)These often appear with a PSM-side alarm (e.g. SPM 30 with PSM 1, SPM 33 with PSM 5); fix the power module first

12 vs 30 (the frequent mix-up): 12 is DC-link overcurrent—trips the instant you command the spindle, usually motor/power-cable short or IGBT/IPM blown. 30 is AC input-side overcurrent—tied to PSM, incoming reactor, 3-phase incoming, often with a PSM-side alarm. Use the “cable-off” method (section 6) to locate before swapping.

Triage decision tree: replace / wire / param / mech / check-PSM — first call and confirmation

5. SP vs SPM on the CNC: SP9012 and SPM 12 are the same fault, not two

The biggest field confusion: “SP9012” on the CNC screen and “12” on the spindle amp LED are the same fault shown in two places—not two alarms.

  • On a serial spindle the CNC maps the amp alarm to the SP90xx family: SP9001 = amp 01 motor overheat, SP9012 = amp 12 DC-link overcurrent, SP9027 = amp 27 coder open … the last two digits are exactly the SPM LED code.
  • So when the CNC shows SP9012, the SPM LED will also read 12, and the object to fix is identical. Don’t clear the SP alarm on one side while “repairing” the amp on the other—double-handling tends to widen the fault.
  • The genuinely different family is the old analog spindle 7xx alarms (e.g. 749/754): those are at the CNC’s analog interface level, with no SPM LED to match, and are handled differently (analog speed command / tachogenerator).
广告

Memory rule: serial spindle SP90xx = amp LED xx; analog spindle 7xx = a different beast.

6. Service notes: protect the person first, then the machine

  1. Lock out and wait ≥ 5 minutes: the SPM/PSM DC link holds ~300 V; the charge LED (CHARGE) must be off before it’s safe. Touching U/V/W or the bus bar before discharge risks shock and module blow-up.
  2. Never unplug the encoder (JYA4/JYA3) live: coder-open 27 often follows a hot-plug, and live plugging also kills the encoder and SPM interface. Power down and discharge first.
  3. Always re-initialize spindle parameters after a swap: after replacing the SPM or spindle motor, re-check the motor model code (e.g. 4133), auto-set params, and sensor polarity #4000.0/#4001.4—polarity alarm 21 is almost always this step skipped.
  4. Use the “cable-off” method to locate, then decide to swap: disconnect the motor U/V/W at the amp and command low speed—still trips 12 immediately → amp power stage shorted; no trip → problem is downstream cable or motor. Megger the cable/motor at 500 V DC; phase-to-ground below ~1 MΩ is your fault.
  5. Count the bus-bar screws before swapping: missing screws on the SPM/PSM bus bars cause poor contact and in turn raise 30. Seat every screw on both blocks when reinstalling (a point repair shops repeat).
Five safety steps: discharge wait, no live encoder unplug, re-init after swap, cable-off locate, bus-bar screw count

Frequently Asked Questions

What is the difference between a FANUC spindle amplifier alarm and a CNC alarm?

The spindle amplifier (SPM) raises 01–88 numeric codes or A/b0/C0 letter codes on its own LED; the CNC maps those to SP90xx (serial spindle) or shows analog-spindle 7xx alarms. They are the same fault viewed from two places—on a serial spindle, SP9012 is simply amp code 12. The difference is only “where you look,” not “whether it’s one fault.”

Does SPM showing 24 mean the amplifier is bad?

Not necessarily, and usually not the amp body. 24 is a serial communication data error between CNC and spindle module: if it shows because the CNC is powered off while the SPM is up, that’s normal and clears when the CNC comes on. If it persists after power-up, re-seat or replace the JA41/JA7A/JA7B fiber and connectors first; only then suspect the SPM control board. Don’t swap the power module up front.

How do I tell FANUC spindle amplifier alarm 12 and 30 apart?

12 = DC-link overcurrent, fault in the SPM power stage, spindle motor, or power cable (trips on command, usually short / IGBT blown). 30 = AC input-side overcurrent, fault in the PSM, incoming reactor, or 3-phase incoming, often with a PSM-side alarm at the same time. In the field use the “cable-off” method: still trips with motor U/V/W off → amp; no trip → downstream cable/motor; if a PSM alarm accompanies it, check the power module first.

Last updated: 2026-10-25

Where to go next

  • FANUC Troubleshooting — the full guide library: alarms, diagnosis numbers, servo, spindle, PMC and electrical faults, organised by symptom.
  • CNC Repair Tools — which instrument measures what: multimeters, clamp meters, insulation testers and oscilloscopes, with the specification that actually matters.
  • Remote Technical Support — have the readings reviewed with you: alarm reverse lookup, PMC ladder analysis and servo tuning advice by call. Repair companies and integrators welcome.

Read the guide, get the right instrument, or walk the diagnosis through with someone — pick whichever you need.

Also available in Chinese: FANUC 主轴放大器报警代码全表:SPM/PSM 两位数码管 01–88 逐条对照(含 A/b0/C0 字母码)+ 换板还是查线判定
The original Chinese version — same procedure, with the full field notes.
© 版权声明
THE END
喜欢就支持一下吧
点赞7赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容

广告