maintenance
CNC Servo Drive Troubleshooting: Fanuc, Siemens
A field engineer guide to diagnosing CNC servo drive faults on Fanuc, Siemens SINUMERIK, and Heidenhain TNC controls. Covers common symptoms, alarm codes, and step-by-step troubleshooting.
In this article
- How CNC Servo Drives Work (The Short Version)
- General Troubleshooting Approach (Any Control)
- Fanuc Servo Drive Troubleshooting
- Siemens SINUMERIK Servo Troubleshooting
- Heidenhain TNC Servo Troubleshooting
- When to Call Service
- Preventing Servo Drive Faults
- Okuma OSP Servo Troubleshooting
- Haas Servo Troubleshooting
CNC Servo Drive Troubleshooting: Fanuc, Siemens, and Heidenhain Guide
When a servo drive faults, the machine stops. That is the job of the drive — to protect the axis hardware from damage by shutting down before something breaks worse. The alarm is not the problem. It is the messenger. Your job is to figure out what the messenger is trying to tell you.
This guide covers how to diagnose servo drive faults on the three most common CNC control platforms in North American shops: Fanuc, Siemens SINUMERIK, and Heidenhain TNC. Same fundamentals apply across all of them, but each platform speaks a different language when something goes wrong.
How CNC Servo Drives Work (The Short Version)
A CNC servo drive receives a motion command from the CNC control, converts it into current, and drives a servo motor to move an axis to a precise position. A feedback device — usually an encoder on the motor shaft or a linear scale on the axis — reports the actual position back to the control. The drive compares command vs. actual and corrects constantly.
When something breaks in that chain — the motor, the drive, the encoder, the cabling, the power supply — the drive throws a fault and stops the axis. The fault code tells you where in the chain the problem is.
The chain: Power supply → Drive → Motor → Encoder/feedback → Drive → Control
Fault diagnosis is about isolating which link broke.
General Troubleshooting Approach (Any Control)
Before chasing alarm codes, do these checks on every servo fault:
- Check the drive's LED or display — Most drives have a fault indicator separate from the CNC display. Note every code showing.
- Check the power supply — Low DC bus voltage causes cascading servo faults. Measure the DC bus on the drive. Fanuc: typically 280–320V DC. Siemens: varies by drive series. Heidenhain: check the UE module.
- Check the motor temperature — Overtemperature is the most common servo fault in production shops. Feel the motor. Check the thermal sensor reading in the drive diagnostics.
- Check the encoder cable — Servo encoder cables fail from flex fatigue, coolant ingress, and rodent damage. Wiggle the cable at the motor and at the drive connector while monitoring the alarm. If it clears or changes, the cable is suspect.
- Check the feedback signal — Use drive diagnostics to view the actual encoder count. If it is jumping or stuck, the encoder or cable is faulty.
- Check for mechanical binding — A mechanically bound axis will overload a perfectly healthy drive. Try moving the axis by hand with power off (on appropriate machines). Resistance indicates a mechanical issue, not electrical.
Fanuc Servo Drive Troubleshooting
Fanuc servo alarms appear as SV codes in the alarm history. The most common ones are in the 400-series.
Common Fanuc Servo Alarms
SV0401 — Servo Ready Signal Off The motor has exceeded its continuous rated current for too long. Causes: mechanical overload (binding, way lube starvation, worn ballscrew), incorrect drive parameters, wrong motor matched to drive, or ambient temperature too high in the control cabinet.
Troubleshooting: Check the actual torque/current reading in Fanuc diagnostics (parameter 3111 shows servo data). If the axis is drawing high current during normal moves, suspect mechanical load. If current is normal but the alarm fires, check thermal sensor and drive parameter settings.
SV0410 — Servo Error Too Large (Position Error Excessive) The drive commanded a position move but the actual position fell too far behind. Usually indicates: encoder fault, motor fault, mechanical binding, or drive output problem.
Troubleshooting: Check encoder feedback in diagnostics. Move the axis slowly by hand (with servo off, on appropriate machines) and watch the position readout. If it does not track, the encoder or feedback cable is faulty. If it tracks but the servo cannot hold position under load, suspect the drive or motor.
SV0417 — Digital Servo Parameter Error Parameter mismatch between the drive and the motor. Often occurs after a drive or motor replacement when the motor ID parameters were not updated.
Troubleshooting: Verify motor model number and match to Fanuc motor parameters. Motor type is set in parameter 2020. After a drive replacement, Fanuc requires re-initialization of servo parameters — consult the specific drive model documentation.
SV0462 — Servo Overheating Motor or drive exceeded thermal limit. Causes: blocked cooling, high ambient temperature, overloaded cycle, failed thermal sensor.
Troubleshooting: Check drive fan operation, cabinet cooling, and motor temperature. Let the axis cool and retry. If alarm returns quickly, check the thermal sensor and ambient conditions.
Fanuc Drive Diagnosis Tools
Fanuc servo drives have a built-in diagnostic display. In the CNC, use SYSTEM → DIAGNOSIS and look at parameters 3100–3199 for servo status data. The drive status word gives you current fault flags.
For deeper diagnosis, Fanuc SERVO GUIDE software reads oscilloscope-level data from the drive but requires a laptop and serial connection.
Siemens SINUMERIK Servo Troubleshooting
Siemens servo faults appear in the alarm list on the operator panel. They typically start with 25xxx (drive faults) or 300xxx (axis-level alarms from NCK).
Common Siemens Servo Alarms
25000-series — SINAMICS Drive Faults Siemens uses SINAMICS drives with PROFIBUS/PROFINET or DRIVE-CLiQ communication. Drive faults are forwarded to the NCK and displayed as 25xxx alarms.
Common 25xxx causes: DC link undervoltage (check supply module), motor overtemperature (check cooling), encoder fault (check DRIVE-CLiQ cable), over-current (check motor for winding fault).
26xxx — Encoder Faults Encoder faults on Siemens are separated from drive faults. If you see 26xxx alarms, focus on the encoder and its DRIVE-CLiQ cable first. DRIVE-CLiQ cables are proprietary — they carry power, encoder data, and motor ID on a single connector. A partial failure can cause intermittent faults.
300xxx — NCK Axis Alarms These come from the CNC itself, not the drive. Alarm 300205 (following error too large) is the Siemens equivalent of Fanuc SV0410. Diagnosis approach is the same — check encoder feedback and mechanical load.
Siemens Diagnosis Tools
Siemens SINUMERIK has a built-in drive diagnostic screen. Navigate to Start-up → Drive system → Drive object to see real-time drive parameters, current, temperature, and fault history. The Service Display (SD) function shows condensed status for all axes.
STARTER or SINAMICS Startdrive (TIA Portal) provides PC-based drive diagnostics with oscilloscope capability for detailed analysis.
Heidenhain TNC Servo Troubleshooting
Heidenhain TNC controls use the CC (Controller Card) and UE (Mains Adapter/Power Supply) architecture. Servo faults appear as numbered error codes, typically in the 100-series (power module faults), 200-series (drive communication), or 400-series (position control faults).
Common Heidenhain Servo Alarms
234-series — HSCI Communication Errors HSCI (Heidenhain Serial Communication Interface) connects the MC main computer to drives, encoders, and other components. 234-series alarms indicate a fault in this communication bus. Most HSCI faults trace back to: cabling (check X500 and X501 connectors on the MC), power supply voltage to HSCI devices, or a failed HSCI component.
CC faults — Controller Card Errors The CC interfaces the TNC to the drives. CC faults often have accompanying temperature indicators — Heidenhain CCs run hot and require adequate cabinet cooling. Check the CC's green/red LED status indicators before diving into software diagnostics.
Encoder faults (EnDat) Heidenhain uses EnDat protocol for encoder communication. EnDat errors indicate cable damage, encoder failure, or connector contamination. Heidenhain encoders are sealed units — they are replaced, not repaired.
Heidenhain Diagnosis Tools
Use TNCdiag (run from the TNC control or via PC connection) for real-time drive and encoder diagnostics. TNCdiag shows encoder position, temperature, current, and communication status for every axis.
The Bus Diagnostics function in the TNC system menu shows HSCI bus status and identifies which node is faulting — critical for 234-series alarm diagnosis.
When to Call Service
Stop chasing the fault yourself and call your control service agency when:
- The same alarm returns within minutes of clearing
- You find a failed component (encoder, drive module, motor) — replacement and re-commissioning require calibration
- The alarm involves safety-related circuits (emergency stop, safety-rated encoder)
- You are replacing a Fanuc servo drive and need parameter initialization
- You see multiple simultaneous alarms across different axes — this usually points to a power supply problem, not individual drive failures
Preventing Servo Drive Faults
Most servo failures are predictable. The common warning signs that appear weeks before a hard fault:
- Increasing torque/current readings during normal operation (mechanical wear)
- Intermittent position errors that clear on restart (encoder cable fatigue)
- Rising drive or motor temperatures (cooling degradation)
- Following error that trends higher over time (way lube, ballscrew wear)
Tracking these trends lets you catch the degradation curve before the machine goes down.
Okuma OSP Servo Troubleshooting
Okuma uses the OSP control platform (OSP-P300, OSP-P200, OSP-U100 series). Servo alarms on Okuma appear as EX (external/hardware) or AL alarms and are displayed on the operation panel.
Common Okuma Servo Alarms
EX1007 / EX1008 — Servo Drive Fault These alarms indicate a fault signal from the servo drive unit. Okuma drives communicate fault status back to the OSP via the MECHATROLINK or proprietary drive bus. The alarm code alone does not tell you which axis or what failed — check the drive display directly.
Troubleshooting: Navigate to Alarm → Drive Alarm on the OSP panel to see the specific drive unit and fault code. The drive itself has a 7-segment display that shows a more specific fault number. Cross-reference that number against the Okuma drive manual for your specific drive model (Okuma uses both its own drives and OEM drives depending on machine vintage).
AL-27 — Servo Motor Overheat The servo motor thermal sensor has exceeded the trip threshold. Okuma machines in production environments are particularly susceptible in summer or in non-climate-controlled shops.
Troubleshooting: Let the machine cool with the servo off. Check the cooling fan on the motor if present. Check the cabinet cooling unit — Okuma control cabinets typically have a separate refrigerated cooling unit that fails over time.
Excessive Following Error (Position Lag Alarm) Okuma OSP calls this a "contour error" or position deviation alarm. Causes are the same as other platforms: encoder fault, mechanical binding, drive fault.
Troubleshooting: Use the OSP Diagnosis → Servo Data screen to view following error for each axis in real time. Compare values during normal motion — values that trend up over time indicate mechanical wear (ballscrew, way lube).
Okuma Diagnosis Tools
The OSP Servo Data screen (Diagnosis menu) shows real-time axis current, following error, and motor temperature. Okuma also provides OSP-SUITE PC software for deeper analysis, though most shops do not have it configured.
For Okuma drive-level faults, the drive module's 7-segment display is the fastest diagnostic. Okuma drive fault codes are documented in the Electrical Maintenance Manual for your specific machine model.
Haas Servo Troubleshooting
Haas CNC machines use Haas-built servo drives and controls. The control integrates the drive diagnostics directly — fault messages are verbose and generally self-explanatory compared to other platforms.
Common Haas Servo Alarms
Alarm 104 — Low DC Bus Voltage The DC bus powering the servo drives has dropped below threshold. Causes: input power issues (low voltage from facility), power supply failure, or a large load event (like all axes moving simultaneously) pulling the bus down.
Troubleshooting: Check facility voltage at the machine disconnect. Haas machines require tight voltage tolerance — 10% low on a nominal 240V line will cause recurring Alarm 104. Check the Vector Drive (main spindle/servo power supply) for fault indicators.
Alarm 108 — Servo Overload Motor current exceeded limit. Same root causes as any servo overload — mechanical binding, way lube, worn bearings or ballscrew.
Troubleshooting: Haas has a SYSTEM → Diagnostics → Servo Load display showing live axis load percentages. If an axis is running consistently above 50% load on normal moves, investigate the mechanical system. Haas axis load values are easy to trend — check them during your morning warmup cycle.
Alarm 175 / 176 — Encoder Fault Haas alarms 175/176 indicate encoder signal loss or error. Haas encoders are typically resolver-type on older machines and optical encoders on newer ones.
Troubleshooting: Check the encoder cable at both ends — Haas machines are notorious for encoder cable failures at the drag chain exit points where the cable flexes repeatedly. Haas encoder cables are relatively inexpensive and easy to replace; try the cable before condemning the encoder.
Alarm 363 — Amplifier Fault The Haas servo amplifier has reported a fault. Haas amplifiers have a built-in LED indicator on the board — green is normal, red or no light indicates a fault.
Troubleshooting: Open the control cabinet and check the amplifier LED. Haas amplifiers are modular and Haas provides same-day replacement on most models through their service network. Note the amplifier model number (printed on the module) before calling.
Haas Diagnosis Tools
Haas integrates diagnostics directly into the control. Navigate to SYSTEM → Diagnostics for:
- Servo Load — real-time axis load percentages
- Amplifier Status — drive fault status for each axis
- Parameter list — drive parameters for each axis
Haas also has a Current Commands diagnostic that shows exactly what the control is commanding vs. what is happening — useful for chasing intermittent following errors.
The Haas Service Software (available through Haas dealers) provides deeper drive oscilloscope capability for complex servo issues.
Need to look up a specific alarm code? Search the AxisMD alarm database — 7,000+ Fanuc, Siemens, Heidenhain, Haas, Okuma, and Mitsubishi codes with causes and troubleshooting steps.
Alarm codes from this guide
Open the full cause and step-by-step fix for each code.
Keep reading
Stop guessing. Start fixing.
Search CNC alarm codes with causes and step-by-step fixes, and log maintenance requests with QR tags. Free to start.