Troubleshooting / FANUC robot SRVO alarms

FANUC Robot SRVO Alarm Codes

The SRVO servo alarms that stop a FANUC robot cell most often on R-30iA and R-30iB controllers: what each one means, the likely causes, the first checks in order, and how to log it so the same stop does not come back next week.

Where SRVO alarms show

On R-30iA and R-30iB the alarm shows on the teach pendant as facility name, number and message, for example SRVO-062 BZAL alarm (Group:1 Axis:2). SRVO is facility code 11, the servo part of the motion subsystem (sources 1, 2).

MENU > ALARM opens the Active Alarm screen (every alarm other than WARN since the last RESET), F3 HIST shows the last 100 alarms of any severity, and F5 DETAIL shows the full text, severity and cause code (source 1).

FANUC severities are WARN (no effect on motion), PAUSE, STOP (decelerated stop, motion kept), SERVO (servo power off, program paused), SERVO2 (servo power off, program aborted), ABORT and SYSTEM (needs a power cycle), with .L or .G for one program or all programs (source 1).

Most servo hardware and pulse coder alarms are SERVO or SERVO2 (source 4); fix the cause, then press RESET on the pendant or FAULT RESET on the panel, and expect some alarms (for example SRVO-058 FSSB init error or SRVO-277) to need a controller power cycle (sources 1, 2).

Safety first.
FANUC says never enter the work envelope while the robot or a program is running; if you must go in with power on, take the teach pendant with you, enable it, hold the DEADMAN switch and be ready to release it to cut servo power, and otherwise turn off and lock out the controller first (source 2).

When a motor or brake is removed, or a brake is released, an arm held up by gravity can fall, so support it with a crane or a solid support beforehand (sources 1, 2). Lethal voltage is present in the controller whenever it is connected to a power source, and switching the disconnect off removes power only from its output side (source 2).

Follow lockout/tagout and your site's safe-work procedures, and check the manual for your exact model before you act.

Quick lookup

Error alarms cut servo power and stop the cell, so in OEE they are availability losses; WARN alarms let the robot keep running until you act.

Type a number or a word (BZAL, collision, brake, battery) to filter the list. Click a code for its causes and first checks.

37 codes

CodeTypeName
SRVO-001ErrorOperator panel E-stop
SRVO-002ErrorTeach pendant E-stop
SRVO-003ErrorDeadman switch released
SRVO-004ErrorFence open
SRVO-005ErrorRobot overtravel
SRVO-006ErrorHand broken
SRVO-007ErrorExternal emergency stops
SRVO-021ErrorSRDY off
SRVO-023ErrorStop error excess
SRVO-024ErrorMove error excess
SRVO-027WarningRobot not mastered
SRVO-030ErrorBrake on hold
SRVO-037ErrorIMSTP input
SRVO-038ErrorPulse mismatch
SRVO-043ErrorDCAL alarm
SRVO-044ErrorDCHVAL alarm (PS) (HVAL alarm on R-30iA)
SRVO-045ErrorHCAL alarm
SRVO-046ErrorOVC alarm
SRVO-047ErrorLVAL alarm
SRVO-049ErrorOHAL1 alarm
SRVO-050ErrorCollision Detect alarm (CLALM alarm on R-30iA)
SRVO-057ErrorFSSB disconnect
SRVO-062ErrorBZAL alarm
SRVO-064ErrorPHAL alarm
SRVO-065WarningBLAL alarm
SRVO-067ErrorOHAL2 alarm
SRVO-068ErrorDTERR alarm
SRVO-069ErrorCRCERR alarm
SRVO-070ErrorSTBERR alarm
SRVO-071ErrorSPHAL alarm
SRVO-073ErrorCMAL alarm
SRVO-075WarningPulse not established
SRVO-136ErrorDCLVAL alarm
SRVO-230ErrorChain 1 abnormal (Chain 1 (+24V) abnormal on R-30iA)
SRVO-231ErrorChain 2 abnormal (Chain 2 (0V) abnormal on R-30iA)
SRVO-233ErrorTP OFF in T1,T2/Door open
SRVO-348ErrorDCS MCC OFF alarm

Each alarm: causes and first checks

SRVO-001: Operator panel E-stop

Hits OEE: Availability

What it means: The EMERGENCY STOP button on the controller operator panel (or operation box) is pressed, so servo power is cut.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Someone pressed the operator panel E-stop button
  • Open wire between the E-stop button and the panel board (CRT16 on R-30iA)
  • E-stop switch contacts failed open
  • A blown fuse on the E-stop board, when SRVO-213 is logged with it

First checks, in this order

  1. Twist the operator panel E-stop button clockwise to release it, then press RESET on the teach pendant
  2. If it will not reset, look in MENU > ALARM > HIST for SRVO-213 (fuse) logged at the same time
  3. With the button released, check the switch terminals and the harness to the panel board for continuity
  4. After that FANUC's order is teach pendant, panel board, then main board (take a full backup before a main board swap)

SRVO-002: Teach pendant E-stop

Hits OEE: Availability

What it means: The EMERGENCY STOP button on the teach pendant is pressed, so servo power is cut.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • The teach pendant E-stop button was pressed
  • Faulty E-stop switch inside the teach pendant

First checks, in this order

  1. Twist the teach pendant E-stop button clockwise to release it, then press RESET
  2. If the alarm stays with the button released, FANUC's remedy is to replace the teach pendant

SRVO-003: Deadman switch released

Hits OEE: Availability

What it means: The teach pendant is enabled but the deadman switch is not held at its middle position (or is squeezed too hard), so servo power is cut.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Deadman switch let go, or squeezed past the middle position, while the pendant is ON
  • Teach pendant enable switch and operator panel mode switch in the wrong positions for the job
  • Faulty deadman switch, teach pendant, mode switch or panel board

First checks, in this order

  1. Hold the deadman switch at its middle position and press RESET
  2. Check the teach pendant ON/OFF switch and the mode switch (T1, T2, AUTO) are set correctly
  3. If it will not clear, replace the teach pendant, then check the mode switch and its wiring, then the panel board

SRVO-004: Fence open

Hits OEE: Availability

What it means: In AUTO mode the safety fence or gate circuit wired to EAS1-EAS11 / EAS2-EAS21 on the panel board terminal block is open.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • A cell gate or safety door is open
  • Faulty door interlock switch or an open wire to EAS1-EAS11 / EAS2-EAS21
  • Faulty mode switch or panel board
  • A blown fuse on the E-stop board, when SRVO-213 is logged with it

First checks, in this order

  1. Make sure nobody is inside the fence, close the gate, then press RESET
  2. Check the gate switch and cable to EAS1-EAS11 and EAS2-EAS21 for continuity
  3. Only if the cell has no fence signal at all are these terminals linked; FANUC warns never to bridge them in a cell that uses the fence signal

SRVO-005: Robot overtravel

Hits OEE: Availability

What it means: An axis has hit its hardware overtravel limit switch (a new robot is also shipped in the overtravel state for transport).[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Axis driven past its software limit onto the limit switch
  • Robot just installed and still in the shipping overtravel state
  • Faulty limit switch, blown amplifier fuse FS2 (with SRVO-214) or a damaged RP1 cable (R-30iA)

First checks, in this order

  1. Hold SHIFT and press RESET
  2. Keep SHIFT held and jog the axis back into its normal range; jog is blocked in the direction it overtravelled
  3. If the robot is not calibrated, use SYSTEM > OT release to lift the jog block
  4. If it will not reset, check the limit switch, the amplifier fuse and the RP1 connector at the robot base

SRVO-006: Hand broken

Hits OEE: Availability

What it means: The hand broken (HBK) input is active: the safety joint on the tool has tripped, or the HBK signal in the robot connection cable is at 0 V.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • The safety joint (breakaway) on the end of arm tool has tripped
  • Broken or disconnected safety joint cable
  • Ground fault or open wire on the HBK line in the robot connection cable (RP1)

First checks, in this order

  1. Hold SHIFT and press RESET, then keep SHIFT held and jog the tool to a safe spot
  2. Reset or replace the safety joint and check its cable
  3. Check the RP1 connector at the robot base and the RP1 cable
  4. If the cell has no hand broken sensor, disable it in the system config screen (Hand broken), then SHIFT + RESET

SRVO-007: External emergency stops

Hits OEE: Availability

What it means: The external emergency stop input (EES1-EES11 / EES2-EES21 on the panel board terminal block) is open, usually because a cell or line E-stop wired there was pressed.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • A cell or line E-stop button wired to the controller was pressed
  • Open circuit in the external E-stop wiring or a failed switch
  • A blown fuse on the E-stop board, when SRVO-213 is logged with it
  • Faulty panel board

First checks, in this order

  1. Find and release the external E-stop that opened, clear the cause, then press RESET
  2. Check MENU > STATUS > Safety Signal to confirm Ext E-Stop is the open signal
  3. Check the switches and cable on EES1-EES11 and EES2-EES21; FANUC warns never to bridge these terminals in a system that uses external E-stops

SRVO-021: SRDY off

Hits OEE: Availability

What it means: The servo amplifier for the shown group and axis did not report ready (its magnetic contactor did not come on) when servo power was requested, with no amplifier alarm to explain it.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Another alarm logged at the same moment is the real cause
  • Wrong axis setup after adding or changing an axis (FSSB line, amplifier number or amplifier type)
  • Loose connectors between the E-stop unit and the servo amplifier, or a momentary power dip
  • Wrong teach pendant type for the controller (RIA/CE versus non RIA/CE), or a failed E-stop unit or amplifier

First checks, in this order

  1. Open MENU > ALARM > HIST and deal with any alarm logged at the same time first
  2. If an axis was just added or changed, check the FSSB line number, amplifier number and amplifier type
  3. Check machine lock settings on multi group systems and that the E-stop unit to amplifier connectors are seated
  4. Then FANUC's order is E-stop unit, then servo amplifier

SRVO-023: Stop error excess

Hits OEE: Availability

What it means: While the robot was standing still, the servo position error went over its limit ($PARAM_GROUP.$STOPERLIM), so the axis could not hold its taught position.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Brake not releasing (brake cable, wrong brake number on an auxiliary axis, blown aux brake unit fuse)
  • Overload, or an external force pushing or pulling the arm
  • Motor power or brake cable disconnected, or plugged into another motor
  • Low supply voltage, or a failed amplifier or motor

First checks, in this order

  1. Press RESET and listen or feel for the brake click on that axis; if it does not release, check the brake line in the robot connection and internal cables
  2. Check nothing is pushing the robot and that payload and duty are within rating
  3. Check the motor power and brake connectors are on the right motors and the cables are intact
  4. Measure the controller supply voltage, then suspect the amplifier or motor

SRVO-024: Move error excess

Hits OEE: Availability

What it means: While the robot was moving, the servo position error went over its limit ($PARAM_GROUP.$MOVER_OFFST), so the axis could not follow the commanded path.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Overload, or a speed and acceleration the payload cannot follow
  • Obstruction or external force on the arm
  • Brake dragging, or a motor power or brake cable fault
  • Low supply voltage, or a failed amplifier or motor

First checks, in this order

  1. Check payload and duty against the rating and slow the move if needed
  2. Check nothing blocks or pushes the arm along the path
  3. Check the brake releases and the motor power and brake connectors are correct
  4. Then follow the SRVO-023 steps: supply voltage, amplifier, motor

SRVO-027: Robot not mastered

Warning: act before it becomes a stop

What it means: Calibration was attempted but the robot (motion group) has not been mastered.[1][2][3][4]

Severity: WARN (warning only, no effect on motion)

Likely causes

  • Mastering was lost (for example after BZAL, pulse mismatch or a pulse coder change) and not redone
  • Mastering was started but not completed

First checks, in this order

  1. Open MENU > SYSTEM > Master/Cal and master the robot
  2. If Master/Cal is not in the menu, set the system variable $MASTER_ENB to 1 first
  3. After mastering, run CALIBRATE and check positions at slow speed before production

SRVO-030: Brake on hold

Hits OEE: Availability

What it means: The Brake On Hold function is enabled, so every HOLD input turns servo power off and applies the brakes; FANUC calls it a notification, not a fault.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Brake On Hold is enabled in SETUP General
  • A HOLD was input, from the pendant HOLD key or the cell's hold signal

First checks, in this order

  1. Nothing is broken: press RESET and resume the program
  2. If the cell does not want this behaviour, disable Brake On Hold in MENU > SETUP > General and cycle controller power

SRVO-037: IMSTP input

Hits OEE: Availability

What it means: The *IMSTP (immediate stop) peripheral device input is OFF, so the robot is stopped with servo power off.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • The PLC or cell logic switched the *IMSTP input OFF
  • The I/O link or wiring carrying *IMSTP to the robot was lost

First checks, in this order

  1. Check the *IMSTP state on the UOP input screen
  2. Turn *IMSTP back ON from the PLC or cell, then press RESET
  3. If the PLC shows it ON but the robot sees it OFF, check the I/O link and wiring

SRVO-038: Pulse mismatch

Hits OEE: Availability

What it means: The pulse coder count read at power on does not match the count saved at power off, so the controller no longer trusts that axis position.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Axis moved while power was off (brake release unit used, or the axis dropped from a brake fault)
  • A SYSMAST.SV saved at another position, or from another robot, was loaded
  • Wrong brake number or brake type setting (2 axis brake option)
  • Pulse coder or its backup battery was replaced

First checks, in this order

  1. Check MENU > ALARM > HIST; if SRVO-222 came with it, follow that alarm
  2. Correct the brake number or brake type setting, or reload this robot's own SYSMAST.SV
  3. Do a pulse reset: set $MCR.$SPC_RESET to TRUE, or press F3 RES_PCA on Master/Cal and answer YES, then press RESET
  4. Compare the pendant position with a known reference; if it is wrong, remaster the axis

SRVO-043: DCAL alarm

Hits OEE: Availability

What it means: The regenerative energy coming back from the motors was more than the servo amplifier could dump as heat (regenerative discharge overload).[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Frequent hard acceleration and deceleration on the axis
  • A vertical axis lowering a heavy load and regenerating a lot of energy
  • Blown amplifier fuse FS3, a poorly cooled or disconnected regenerative resistor, or a stopped external fan (R-30iA)
  • Input voltage out of rating or a phase loss on the transformer secondary

First checks, in this order

  1. Ease the motion: lower acceleration or speed, especially on heavy vertical moves
  2. Check fuse FS3 in the servo amplifier and find the cause before replacing it
  3. Check the external fan, clean the regenerative resistor and louvers, and check the CRR63A/CRR63B resistor connectors
  4. Measure the three phase input at the main breaker, then replace the E-stop unit or amplifier per the maintenance manual

SRVO-044: DCHVAL alarm (PS) (HVAL alarm on R-30iA)

Hits OEE: Availability

What it means: The DC link voltage of the main circuit power supply is abnormally high.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Three phase input voltage too high, made worse by hard deceleration
  • Payload above rating, so regenerative energy builds up
  • Regenerative resistor open, or its CRR63A/CRR63B connectors loose (R-30iA)
  • Servo amplifier failure

First checks, in this order

  1. Measure the three phase input at the servo amplifier; the R-30iA manual says check the line if it reads 240 VAC or more
  2. Check the payload is within the rating
  3. Check CRR63A and CRR63B are tight, then check continuity between pins 1 and 2 of the cable side connectors; open means replace the regenerative resistor
  4. Replace the servo amplifier if all of the above is good

SRVO-045: HCAL alarm

Hits OEE: Availability

What it means: An abnormally high current flowed in the main (power) circuit of the servo amplifier for the shown axis.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Short circuit or ground fault in the motor power cable (U, V, W to ground)
  • Motor winding fault
  • Servo amplifier power stage failure

First checks, in this order

  1. Power off, disconnect the motor power cable and the brake cable at the amplifier (so the axis cannot drop), power on: if HCAL returns, replace the amplifier
  2. Check insulation between U, V, W and ground on the power cable and motor
  3. Measure U-V, V-W and W-U with a low range ohmmeter; unequal readings mean a bad motor or cable

SRVO-046: OVC alarm

Hits OEE: Availability

What it means: The servo software's running estimate of RMS motor current (used to model motor temperature) went over the allowed value, so it stops the axis to protect the motor and amplifier from thermal damage; FANUC calls OVC the overcurrent alarm.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Duty cycle or payload above the rating, or very aggressive motion
  • External force, or something increasing the mechanical load on the axis
  • Brake not fully releasing (brake cable, wrong brake number, blown aux brake unit fuse)
  • Low supply voltage or wrong transformer setting, then a failed amplifier, motor or power cable

First checks, in this order

  1. Check the payload setting and duty against the rating and soften the program if needed
  2. Check the brake on that axis releases (listen for the click) and its cable is connected
  3. Check nothing pushes the arm and the axis is not carrying extra mechanical load
  4. Measure the supply voltage and transformer setting, then follow FANUC's order: amplifier, motor, E-stop unit, power and brake cables

SRVO-047: LVAL alarm

Hits OEE: Availability

What it means: The control power supply voltage (+5 V and others) inside the servo amplifier is abnormally low.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Fault in the servo amplifier's internal control power circuit
  • Fault in the controller power supply unit

First checks, in this order

  1. Press RESET once and note whether it comes straight back
  2. Replace the servo amplifier
  3. If it continues, replace the power supply unit

SRVO-049: OHAL1 alarm

Hits OEE: Availability

What it means: An overheat thermostat in the controller tripped (the transformer thermostat on R-30iA), or a fuse in the servo amplifier blew.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • Cabinet fan stopped or vent holes clogged
  • Robot running a very hard duty cycle
  • Thermostat connection loose (transformer CPOH to E-stop unit CRM73 on R-30iA)
  • Blown amplifier fuse, or a failed amplifier or transformer

First checks, in this order

  1. Check the cabinet fans run and clean blocked vents
  2. Let it cool and ease the duty cycle if it only trips in heavy running
  3. Check the CPOH to CRM73 thermostat connection (R-30iA)
  4. Then replace the servo amplifier, then the transformer

SRVO-050: Collision Detect alarm (CLALM alarm on R-30iA)

Hits OEE: Availability

What it means: The servo software estimated a disturbance torque far above normal on an axis and treats it as a collision.[1][2][3][4]

Severity: SERVO (servo power off, program paused)

Likely causes

  • A real collision, tip stick or external force
  • Wrong payload data (mass, center of gravity, inertia), overload, or ACC override above 100
  • High friction when the robot is cold or has stood idle a long time
  • Brake not releasing, low supply voltage, or a failed amplifier, motor, cable or reducer

First checks, in this order

  1. Hold SHIFT and press RESET, release only RESET, and keep SHIFT held while jogging the axis away from the obstacle
  2. Check the payload settings match the real tool and part
  3. After a long stop or in the cold, run slowly for a while before full speed
  4. Check brake release and supply voltage; the allowed disturbance level is set on STATUS > Axis > Disturb

SRVO-057: FSSB disconnect

Hits OEE: Availability

What it means: Communication on the FSSB optical link between the main board (axis control card) and the servo amplifier was interrupted.[1][2][3]

Likely causes

  • Blown fuse in the power supply unit (F4 on R-30iA, F3 on R-30iB) or in the servo amplifier (FS1)
  • Damaged or unplugged FSSB optical fiber cable
  • Ground fault on the pulse coder supply (RP1 cable or arm internal pulse coder cable)
  • Failed axis control card, servo amplifier or main board

First checks, in this order

  1. Check the power supply unit and servo amplifier fuses
  2. Check, reseat or replace the optical fiber cable between the axis control card and the amplifier
  3. Check the RP1 cable and the arm internal pulse coder cables for a ground fault
  4. Take a full controller backup before replacing the axis control card, amplifier or main board

SRVO-062: BZAL alarm

Hits OEE: Availability

What it means: The pulse coder backup battery is empty or not connected, so the absolute position data of that axis encoder has been lost and the robot must be remastered.[1][2][3][4][5]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Robot base batteries went flat, often because BLAL (SRVO-065) was not acted on in time
  • Batteries removed or swapped while the controller was powered off
  • Battery cable inside the robot disconnected or grounded
  • Failed pulse coder

First checks, in this order

  1. With controller power ON and the robot in E-stop, replace the batteries in the robot base battery box
  2. If the alarm returns with fresh batteries, check the battery cable inside the robot, then the pulse coder
  3. Do a pulse reset ($MCR.$SPC_RESET to TRUE, or Master/Cal F3 RES_PCA then YES) and cycle power
  4. Clear SRVO-075 by jogging each alarmed axis about one motor turn, then remaster (quick master if a reference was saved)

SRVO-064: PHAL alarm

Hits OEE: Availability

What it means: The phase of the pulse signal generated by the pulse coder is abnormal.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Failed pulse coder
  • A pulse coder communication fault; when DTERR, CRCERR or STBERR appear with it, PHAL is not the real cause

First checks, in this order

  1. Check MENU > ALARM > HIST: if DTERR, CRCERR or STBERR came with it, follow those alarms instead
  2. Otherwise replace the pulse coder and remaster the axis

SRVO-065: BLAL alarm

Warning: act before it becomes a stop

What it means: The pulse coder backup battery voltage has dropped below the allowed minimum; position data is still held, but it will be lost (BZAL) if the batteries run out.[1][2][3][4][5]

Severity: WARN (warning only, no effect on motion)

Likely causes

  • Batteries at end of life (FANUC America recommends replacing them every year)
  • An earlier BLAL warning was reset and ignored

First checks, in this order

  1. Replace the batteries as soon as possible with controller power ON, so the position data is kept
  2. Put the robot in E-stop before opening the battery box and check the battery type and polarity
  3. Press RESET after the change; if BLAL comes straight back, check the battery box and cable

SRVO-067: OHAL2 alarm

Hits OEE: Availability

What it means: The thermostat inside the pulse coder or motor tripped because the motor got too hot.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Duty cycle or payload above the robot's rating
  • Motor fault, when it trips even with the motor cool

First checks, in this order

  1. Check the duty cycle and load against the rating and reduce them
  2. Let the motor cool; if the alarm still comes on a cool motor, replace the motor

SRVO-068: DTERR alarm

Hits OEE: Availability

What it means: The controller sent a request to the serial pulse coder but no data came back.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Loose or broken pulse coder cable (RP1 at the amplifier, robot connection cable, arm internal cable)
  • Cable shield not grounded, letting noise in
  • Failed pulse coder or servo amplifier

First checks, in this order

  1. Check the pulse coder (RP1) connector at the servo amplifier and the robot connection cable connectors are tight
  2. Check the cable shield is clamped to the grounding plate in the cabinet
  3. Then replace in FANUC's order: pulse coder, servo amplifier, RP1 cable, robot interconnection cable

SRVO-069: CRCERR alarm

Hits OEE: Availability

What it means: The serial data from the pulse coder was corrupted during transfer (failed its CRC check).[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Noise on the pulse coder line from a poor shield or ground
  • Damaged or loose pulse coder cable
  • Failed pulse coder or amplifier

First checks, in this order

  1. Same as SRVO-068: check the pulse coder connectors and cable first
  2. Check the shield ground at the grounding plate
  3. Then replace pulse coder, servo amplifier, then cables

SRVO-070: STBERR alarm

Hits OEE: Availability

What it means: The serial data from the pulse coder had a start bit or stop bit error.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Noise on the pulse coder line from a poor shield or ground
  • Damaged or loose pulse coder cable
  • Failed pulse coder or amplifier

First checks, in this order

  1. Same as SRVO-068: check the pulse coder connectors and cable first
  2. Check the shield ground at the grounding plate
  3. Then replace pulse coder, servo amplifier, then cables

SRVO-071: SPHAL alarm

Hits OEE: Availability

What it means: The feedback speed reported by the pulse coder is abnormally high.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Noise on the pulse coder feedback from a poor ground or shield
  • Pulse coder fault (if PHAL is logged with it, PHAL is the main problem)
  • Failed servo amplifier or pulse coder cable

First checks, in this order

  1. If PHAL (SRVO-064) is logged with it, work on PHAL first
  2. Check grounding and shielding of the pulse coder cables
  3. Then replace the pulse coder (and remaster), the amplifier, the robot connection cable and the arm internal cable, in that order

SRVO-073: CMAL alarm

Hits OEE: Availability

What it means: The pulse coder may be faulty, or electrical noise is making it miscount.[1][2][3][4]

Severity: SERVO2 (servo power off, program aborted)

Likely causes

  • Noise from poor shielding or a poor controller earth
  • Failed pulse coder

First checks, in this order

  1. Check the controller earth and that the robot connection cable shields are clamped to the grounding plate
  2. Replace the pulse coder and remaster
  3. Expect SRVO-075 afterwards; jog the axis to clear it before mastering

SRVO-075: Pulse not established

Warning: act before it becomes a stop

What it means: The absolute position of the pulse coder has not been established yet; it normally follows a BZAL or CMAL recovery.[1][2][3][4]

Severity: WARN (warning only, no effect on motion)

Likely causes

  • Normal step after a BZAL or CMAL recovery
  • The axis has not been jogged far enough since the pulse reset

First checks, in this order

  1. Press RESET
  2. Jog the alarmed axis in joint mode about one motor revolution until the alarm stops coming back
  3. Clear it on every alarmed axis before mastering

SRVO-136: DCLVAL alarm

Hits OEE: Availability

What it means: The DC link voltage of the servo amplifier main circuit is abnormally low.[1][2][3]

Likely causes

  • Low or missing input phase, or a wrong transformer setting
  • A momentary power interruption
  • Circuit breaker in the E-stop unit off, when it happens before the magnetic contactor closes
  • Failed E-stop unit or servo amplifier, or an alpha i SV amplifier not installed correctly (R-30iB)

First checks, in this order

  1. Measure the controller input on all three phases and check the transformer setting
  2. Check for short supply dips on the plant feed
  3. If it appears before the contactor closes, check the E-stop unit breaker and the wiring to the amplifier
  4. Then replace the E-stop unit, then the servo amplifier

SRVO-230: Chain 1 abnormal (Chain 1 (+24V) abnormal on R-30iA)

Hits OEE: Availability

What it means: The two channels of a dual safety signal disagree: a chain 1 contact (E-stop, fence, servo disconnect) is closed while the matching chain 2 contact is open.[1][2][3]

Likely causes

  • One contact of a dual channel E-stop, fence or door switch failed or is miswired
  • Wrong teach pendant type for the controller (RIA/CE versus non RIA/CE), when it appears right after power on
  • Fault in the panel board, E-stop unit or servo amplifier

First checks, in this order

  1. Check MENU > ALARM > HIST for the alarms logged with it (SRVO-266 to 275, SRVO-370 to 385) to find which signal mismatched
  2. Repair that switch or wiring; FANUC warns not to reset the chain alarm until the fault is found and fixed
  3. Chain reset: press and release an E-stop, press F4 RES_1CH on the active alarm screen, then press RESET
  4. A plain RESET before the chain reset only gives SRVO-237 Cannot reset chain failure

SRVO-231: Chain 2 abnormal (Chain 2 (0V) abnormal on R-30iA)

Hits OEE: Availability

What it means: The two channels of a dual safety signal disagree: a chain 1 contact is open while the matching chain 2 contact is closed.[1][2][3]

Likely causes

  • One contact of a dual channel E-stop, fence or door switch failed or is miswired
  • Wrong teach pendant type for the controller, when it appears right after power on
  • Fault in the panel board, E-stop unit or servo amplifier

First checks, in this order

  1. Use the alarm history to find which safety signal mismatched, as for SRVO-230
  2. Repair the faulty contact or wiring before any reset
  3. Chain reset: press and release an E-stop, press F4 RES_1CH on the active alarm screen, then press RESET

SRVO-233: TP OFF in T1,T2/Door open

Hits OEE: Availability

What it means: The mode switch is in T1 or T2 but the teach pendant is switched OFF, or the controller cabinet door is open.[1][2][3]

Likely causes

  • Teach pendant ON/OFF switch left OFF in a teach mode
  • Controller cabinet door open
  • Hardware fault in the teach pendant, its cable, the mode switch or the panel board

First checks, in this order

  1. Turn the teach pendant switch ON to teach, or set the mode switch to AUTO for production
  2. Close the controller door and press RESET
  3. If it stays, FANUC's order is teach pendant, teach pendant cable, mode switch, panel board, E-stop unit, servo amplifier

SRVO-348: DCS MCC OFF alarm

Hits OEE: Availability

What it means: The controller commanded the servo power magnetic contactor (MCC) to open, but DCS saw that it did not turn off.[1][2][3]

Likely causes

  • Magnetic contactor in the E-stop unit stuck closed
  • Faulty E-stop unit or panel board
  • A problem with equipment wired to the E-stop unit connector CRMA74 (R-30iB) or CRM72 (R-30iA)

First checks, in this order

  1. Check whatever is wired to CRMA74 (R-30iB) or CRM72 (R-30iA) on the E-stop unit
  2. Replace the E-stop unit
  3. On R-30iA, replace the panel board if the alarm stays

Log it, or the same alarm comes back

A servo alarm stops the robot, and in a cell that usually stops the line, so in OEE terms it is a breakdown. Log the SRVO number with the minutes lost and the program line, and keep a count of warnings that repeat before they turn into stops.

  • Reason code: the SRVO number plus the cell, for example FANUC SRVO-050, cell 4, so a collision stop that happens on one fixture every week becomes visible.
  • Loss bucket: a stop that needs a reset, a part or a technician is an availability loss (breakdown). Stops shorter than your micro-stop threshold go to performance (minor stops). The six big losses page shows where each one belongs.
  • What to count: how often each code fires per week and the minutes it costs. Two numbers a week turn "that alarm comes up sometimes" into a ranked list. The MTBF and MTTR calculator and the downtime cost calculator do the math.

The free OEE tracker logs each stop with its reason and turns the week into a downtime Pareto, so the code that costs the most rises to the top.

For robot faults in general (collisions, overtravel, encoder batteries, safety stops), fabrico.io has a longer guide: industrial robot fault troubleshooting. An error code tells you what the robot controller detected, not what happened in the cell in the seconds before. Fabrico's camera-based OEE software syncs camera video with machine data, so you can replay the moment the cell stopped next to the error.

Frequently asked questions

How do I clear SRVO-062 BZAL and remaster a FANUC robot?

Replace the pulse coder batteries in the robot base with controller power ON and the robot in E-stop, then do a pulse reset (set $MCR.$SPC_RESET to TRUE, or press F3 RES_PCA on MENU > SYSTEM > Master/Cal and answer YES) and cycle power. Clear the SRVO-075 Pulse not established alarm by jogging each alarmed axis about one motor revolution, then remaster: FANUC's R-30iA manual says quick mastering after BZAL or pulse mismatch, and zero or fixture position mastering after a pulse coder change. If Master/Cal is not shown, set $MASTER_ENB to 1 first.

What does the FANUC SRVO-046 OVC alarm mean?

OVC is FANUC's overcurrent alarm: the servo software keeps a running RMS estimate of motor current, uses it to model motor temperature, and stops the axis when the estimate passes the allowed value, before the winding or amplifier is damaged. The usual causes are overload or aggressive motion, an external force or extra mechanical load on the axis, or a brake that is not fully releasing. Check payload settings, duty, brake release and supply voltage before replacing the amplifier or motor.

What is the difference between DTERR, CRCERR and STBERR on a FANUC robot?

All three are serial pulse coder communication faults with the same FANUC remedy. DTERR (SRVO-068) means the pulse coder sent no data back to a request, CRCERR (SRVO-069) means the data was corrupted on the way, and STBERR (SRVO-070) means a start or stop bit was wrong. Check the RP1 and robot connection cable connectors and the shield ground first, then replace the pulse coder, servo amplifier and cables in that order; a PHAL alarm logged with them can be ignored.

What is the difference between BLAL and BZAL, and can I change the robot batteries with the power off?

BLAL (SRVO-065, a WARN) means the pulse coder battery voltage is low but the position data is still held; BZAL (SRVO-062) means the battery is empty or disconnected and the position data is lost, so the robot must be remastered. FANUC says to replace the battery immediately after BLAL while the system power is turned on, with the robot in E-stop, because removing the batteries with the controller off loses mastering. FANUC America recommends replacing these batteries every year.

Is there a FANUC robot error codes PDF?

Yes. The full list is the R-30iB/R-30iB Mate Operator's Manual (Alarm Code List) B-83284EN-1, the R-30iA version is B-82594EN-1, and FANUC America issues the same content as the Controller Software Error Code Manual (MARRBERCD04121E for R-30iB). Get the edition that matches your controller and software from FANUC or the integrator that supplied the cell. On the robot itself, MENU > ALARM, F3 HIST and F5 DETAIL show the full message, severity and cause code of any alarm.

Sources

Codes and meanings follow the manufacturer documentation below. Wording is ours, simplified for the shop floor; the manual for your exact model and software version wins if it differs.

  1. FANUC R-30iB CONTROLLER OPERATOR'S MANUAL (Alarm Code List) B-83284EN-1/02
  2. FANUC America SYSTEM R-30iB and R-30iB Mate Controller Software Error Code Manual MARRBERCD04121E REV D, 2013
  3. FANUC R-30iA CONTROLLER MAINTENANCE MANUAL (For Europe) B-82595EN-1/06
  4. FANUC Robotics SYSTEM R-J2 Mate Controller LR TOOL Setup and Operations Manual B-80694EN-11/01, appendix C.2 Alarm Codes
  5. FANUC America Tech Transfer: FANUC Changing Batteries (Dec 3, 2020)

See the moment the cell stopped

Fabrico, a light MES with computer vision, syncs camera footage with machine and timeline data, so you can replay the exact moment the cell stopped and review the cause next to the robot's error. Cameras also catch short stops and a line that is switched on but not producing, the losses nobody writes down. Machines connect through a PLC, a Fabrico IoT device or an AI camera.

Book a Fabrico demo
The lookup stays free.

Related: ABB robot error codes · FANUC servo amplifier alarm codes · industrial robot troubleshooting · spot welder · palletizer

Other alarm code lookups: FANUC: servo amplifier · spindle amplifier | Siemens: MICROMASTER 440 · MASTERDRIVES · SINAMICS G120 · SINAMICS V90 servo · SINAMICS V20 | ABB: ACS550 drive · ACS800 drive · robot IRC5 | Okuma: OSP alarms | Haas: alarm lookup | Mitsubishi: MELSERVO servo · FR-D700 and FR-E700 inverters · FX PLC | Allen-Bradley: Kinetix and Ultra3000 · MicroLogix · PowerFlex 753 and 755 · PowerFlex 70 and 700 · 1336 and 1305 | Yaskawa: V1000 drive · SERVOPACK servo · Motoman robot | Delta: VFD drives · ASDA servo | Eaton: DC1 and SVX9000 drives | Control Techniques: Commander SK and M200 | Kollmorgen: AKD servo | Lenze: SMVector, 8200, 8400, i500 | Magnetek: IMPULSE and DSD 412 | Omron: MX2 and RX inverters · G5 and 1S servo | WEG: CFW500, CFW300, CFW11, CFW08 | Hitachi: WJ200 inverter | Toshiba: E3, Q9, P9, S15, nC3, AS3 | AutomationDirect: GS10, GS20, GS4, GS1 to GS3 | SANYO DENKI: SANMOTION servo | Parker: SSD 590+, 690+, AC10 | KEB: COMBIVERT F5 | Epson: robot RC700, RC90 | B&R: ACOPOS servo | Schneider Electric: Lexium 32 servo | Bosch Rexroth: IndraDrive | Vacon: NX, VACON 100 and 20 | Fuji Electric: FRENIC-Mini, Multi, Ace, MEGA | LS Electric: S100, G100, iG5A | Panasonic: MINAS A6 and A5 servo | Invertek: Optidrive E3, P2, Eco | SEW-Eurodrive: MOVITRAC B and MOVIDRIVE B

Related tools: full troubleshooting directory · OEE calculator · downtime cost · MTBF / MTTR · glossary

OEE essentials: OEE calculator · What is OEE · How to improve OEE · Six big losses · Availability · TEEP · Cost of downtime · OEE benchmark · Free OEE tracker · Free OEE software · How to track downtime · How to implement OEE · Light MES vs full MES