Overview
The FILE TOTAL CHECK ERROR on a Motoman ERC-series controller (ERC K6, K6SB, K10S) is a non-recoverable checksum fault raised by the system file manager when the CMOS backup SRAM, parameter file, or absolute-encoder file fails its CRC test at boot. On the Motoman K6SB platform, the alarm most frequently appears after an extended power-down when the on-board lithium battery has discharged below its retention threshold, after a controller PCB swap, or after a partial parameter initialization. The alarm also appears in a reduced form (MAKE ABS DATA: <FAILED>) when absolute position reference data is missing or corrupt.
This guide consolidates the recovery sequence used on a 1993 vintage Motoman K6SB (ERC controller, refurbished in 2009) after a two-month storage period produced a File No: 255 total check error, progressing through File No: 1 and File No: 0 states, then a MAKE ABS DATA: <FAILED> alarm with multi-servo status flags. The recovery chain covers battery replacement, polarity verification, full parameter initialization, encoder-battery shorting, re-mastering of absolute data, and verification through teach-pendant jogging in both Teach and Auto modes.
Problem Details
The reported symptom chain on a Motoman K6SB after battery depletion is:
-
Power-up alarm:
FILE TOTAL CHECK ERROR, File No: 255— indicates that one or more system files in the backup SRAM have failed their checksum. -
After first Initialize Robot (Mode 11): alarm shifts to
FILE TOTAL CHECK ERROR, File No: 1— partial file set rebuilt; parameter blocks (RC, RC2) remain suspect. -
After RC/RC2 initialization: alarm migrates to
MAKE ABS DATA: <FAILED>with servo status words for SV1–SV4, axis groups 1–3. -
After Mode 11 without RC/RC2 init: alarm remains at
FILE TOTAL CHECK ERROR, File No: 0, confirming the absolute-encoder file layer is the surviving problem.
Decoding the SV Status Word
The ERROR STATUS panel on a Motoman ERC reports per-axis status as a bit-mapped word. A representative capture from the failing unit is:
| Servo Pack | Axis Group | Hex Code | Binary | Interpretation |
|---|---|---|---|---|
| SV1 | 1 (S-axis) | 00 | 0000_0000 | No fault |
| SV1 | 2 (L-axis) | 01 | 0000_0001 | Bit0 set — absolute data lost |
| SV1 | 3 (U-axis) | 00 | 0000_0000 | No fault |
| SV2 | 1 | 01 | 0000_0001 | Bit0 — absolute data lost |
| SV2 | 2 | 00 | 0000_0000 | No fault |
| SV2 | 3 | 07 | 0000_0011 | Bits 0,1 — absolute data + multi-turn lost |
| SV3 | 1 | 00 | 0000_0000 | No fault |
| SV3 | 2 | 00 | 0000_0000 | No fault |
| SV3 | 3 | 00 | 0000_0000 | No fault |
| SV4 | 1–3 | 00 | 0000_0000 | No fault |
Bit 0 (0x01) on the Motoman ERC servo status word denotes absolute data lost. Bit 1 (0x02) typically denotes multi-turn data lost. A code of 0x07 (= 0b0000_0111) on SV2 group 3 indicates absolute data, multi-turn counter, and one auxiliary flag have all been lost — a classic signature of a fully discharged encoder backup battery on that motor's resolver/encoder board.
Root Cause Analysis
The FILE TOTAL CHECK ERROR alarm is a checksum mismatch between the system file image stored in battery-backed SRAM and the file expected at boot. The most common contributing factors on the Motoman ERC K6SB are:
- Discharged lithium backup battery: The ERC controller retains parameters and absolute encoder data using a 3.6 V primary lithium cell (typically ER14505 or equivalent, fitted to both the controller PCB and the robot base). After 2+ months of unpowered storage — especially in an unheated shop — the cell can drop below the SRAM retention voltage, scrambling file headers.
- Reverse-connected battery: The 2-pin JAE connector on the ERC controller door can be inserted in either orientation. A reversed polarity instantly forward-biases the SRAM protection diode, corrupting the entire file system on power-up.
-
Corrupt absolute-encoder file: Even with fresh batteries, if the absolute-position file layer (managed by the servo pack's
MAKE ABS DATAroutine) was already inconsistent, it must be regenerated through the "Make Abs Data" calibration step. - Bleed-over faults from grease contamination: While not a direct cause of FILE TOTAL CHECK, the observed grease on the B-axis input shaft indicates a maintenance issue (Harmonic Drive SK-1 grease over-application) that can load the resolver/encoder and indirectly trip a position-tracking alarm if left unresolved.
Safety Prerequisites
Before opening the controller cabinet or removing the robot's base cover, observe the following Motoman ERC-specific lockout/tagout discipline:
- Main disconnect OFF — open the upstream 3-phase breaker and apply LOTO with personal lock.
- Wait 5 minutes for the DC bus capacitors to bleed below 50 V DC (verify at TP+ / TP- test points on the Motoman JANCD-XCP01 or equivalent servo amplifier).
- Verify zero energy at the controller input terminals and at the robot base encoder connector.
- Counterbalance the arm — K6SB uses a spring + pneumatic counterbalance on the S and L axes. Bleed the air supply at the regulator before detaching any covers.
- Document mechanical zero — before any encoder reset, scribe alignment marks on each axis housing so the "all arrows aligned" master home position can be re-verified later.
Battery Replacement Procedure
The Motoman ERC K6SB uses two independent lithium backup batteries:
| Location | Chemistry | Nominal Voltage | Function |
|---|---|---|---|
| Controller PCB (behind front door) | Li-SOCl2 primary | 3.6 V | SRAM retention (parameters, files) |
| Robot base (S/L/U/R/B/T axis encoder pack) | Li-SOCl2 primary | 3.6 V | Absolute-encoder multi-turn counter retention |
Step 1 — Replace controller battery
Open the ERC controller front door. Locate the 2-pin JAE connector adjacent to the CPU board (CX-series controller board on K6SB units). Pull the old cell from its holder.
Step 2 — Replace robot base battery
On the K6SB, the encoder backup battery is housed inside the base column, accessible after removing the lower cover plate. The harness terminates in a similar JAE 2-pin connector. Replace the cell, verify polarity (red = +, black = −), and re-seat the connector with the JAE lettering visible.
Step 3 — Verify both cells under load
With controller power still OFF, apply the new cell and measure open-circuit voltage: a fresh Li-SOCl2 primary should read 3.55–3.65 V. If a cell reads < 3.3 V, it is end-of-life even when new (counterfeit or shelf-discharged) and must be replaced. The reported field condition of "new battery reading only 1.5 V" is a clear indication of a defective or alkaline (non-lithium) substitution — replace with a genuine Li-SOCl2 ER14505 or equivalent.
Controller Initialization Sequence (Mode 11)
The Motoman ERC Main menu includes a hidden maintenance sub-mode used to rebuild corrupted file structures. The procedure is:
-
Boot into Main mode: At the teach pendant, hold
MENU+SELECTwhile cycling controller power. The display enters the Main (initialization) menu. -
Enter mode 11: Type
1 1 ENTER. The cursor lands onInitialize Robot. -
Press cursor-up one line to scroll from the default
Initializeentry toInitialize Robot. -
Press ENTER. The unit runs the file rebuild — typically 30–90 seconds. Wait until the screen displays
complete. -
Initialize RC and RC2 — these are the robot-calibration parameter blocks. Selecting
RCre-establishes the axis-scaling data; selectingRC2re-establishes the second-generation (post-refurb) calibration block. - Reboot into Normal mode by cycling the controller power switch with the teach pendant in Remote/Off.
Expected post-sequence alarm:
- Best case —
FILE TOTAL CHECK ERROR, File No: 0cleared; system promptsMAKE ABS DATA. - If
MAKE ABS DATA: <FAILED>appears — proceed to the absolute-encoder reset described in the next section.
MAKE ABS DATA Recovery (Encoder Battery Shorting)
When MAKE ABS DATA fails after a successful Mode 11 init, the absolute-encoder multi-turn counters have lost their reference. The ERC controller exposes a maintenance path to short the encoder backup and force a fresh "all axes zero" reference. The documented field sequence is:
- With controller power OFF, locate the encoder battery harness at each axis motor (S, L, U, R, B, T). On K6SB units these are 2-pin connectors at the rear of each servo motor.
- Short the encoder battery pins momentarily (1–2 seconds) using a jumper wire. This forces the encoder to forget its absolute reference.
- Repeat for every axis encoder on the robot — skipping one will leave that axis with the original (now meaningless) reference and the controller will re-throw
MAKE ABS DATA: <FAILED>. - Restore controller power. Cycle to Normal mode.
- From the teach pendant: select
MENU → SETUP → FUNCTION → MAKE ABS DATA. Confirm each axis.
Alternative reference — pin 10/12 shorting on the encoder harness:
- Some Motoman ERC encoder cables expose a service pin pair (commonly pins 10 and 12 on the CN2 encoder connector) that, when shorted with controller power ON, force the servo pack to drop its absolute counter. Confirm pinout against the JANCD-XXX servo pack wiring diagram for the specific K6SB build.
Servo Status After Encoder Reset
Once the encoder short is applied and power is cycled, the SV status words should return to all zeros:
SV1 1: 00 0000_0000 SV1 2: 00 0000_0000 SV1 3: 00 0000_0000
SV2 1: 00 0000_0000 SV2 2: 00 0000_0000 SV2 3: 00 0000_0000
SV3 1: 00 0000_0000 SV3 2: 00 0000_0000 SV3 3: 00 0000_0000
SV4 1: 00 0000_0000 SV4 2: 00 0000_0000 SV4 3: 00 0000_0000
If any axis retains a non-zero code (especially 0x01 or 0x07), the encoder battery on that motor is still good (counter not actually cleared) or the harness is open. Re-short and verify.
Application Setup and Servo Enable
With absolute data cleared, configure the robot for first motion:
- Set application to Handling:
MENU → SETUP → FUNCTION → APPLICATION → HANDLING. Confirm with ENTER. - Set operation mode to Teach on the mode selector switch.
- Enable servo: hold the DEADMAN grip on the back of the teach pendant, press and hold Servo On Ready, then press the three-position enable trigger. The
READYlamp should illuminate;ERRORshould be off. - Verify enable at low speed (10%): jog each axis individually using the axis keys. Listen for abnormal noise; observe the position counters on the Position screen.
Home Position and Absolute Data Calibration
Understanding Absolute Data
Absolute data is the offset — measured in encoder pulses — between the mechanical zero reference (master "all arrows aligned" pose) and the resolver/encoder electrical zero. On the Motoman ERC, each axis carries a unique 32-bit absolute offset value. At power-on, the servo pack reads the encoder position, adds the offset, and reports the world-frame joint angle.
The values are stored in the controller's parameter block and are also printed on the ABS Data Sticker inside the controller cabinet door. They are typically 5-digit integers (sometimes negative) and correspond to one specific mechanical master pose — the factory-calibrated home position with all alignment arrows co-linear.
Mechanical Master Pose — K6SB
| Axis | Motion | Home Reference |
|---|---|---|
| S | Base rotation | Arrow on base aligned with arrow on column |
| L | Lower arm (shoulder) | Arrow on lower arm aligned with column mark |
| U | Upper arm (elbow) | Arrow on upper arm horizontal, aligned with forearm mark |
| R | Roll | Arrow on wrist housing aligned with forearm |
| B | Bend | Arrow on wrist aligned with roll mark |
| T | Twist | Arrow on flange aligned with wrist mark |
Calibration Workflow
-
Batch-calibrate from the teach pendant:
MENU → SETUP → FUNCTION → CALIBRATE → BATCH CAL. The system will move each axis through its own homing routine. - Compare displayed ABS data to the sticker on the cabinet door. A difference of < 100 pulses per axis is acceptable (drift). A difference of > 1000 pulses indicates either: (a) the servo motor has been replaced at some point, or (b) the master pose is not actually the home position.
-
Verify master pose: with controller in Position screen and all axes reading
0, the arm should be in the precise factory home pose — L vertical, U and B horizontal, S and T arrows aligned with base. - Manually correct if needed: with servo OFF, loosen the resolver/encoder mounting on the affected axis, rotate the encoder housing until the displayed pulse count matches the sticker value, then re-torque the encoder clamp bolts (typically 4–6 Nm).
Verification Procedures
- Alarm-clear verification: cycle controller power three consecutive times. Each boot must complete without FILE TOTAL CHECK ERROR or MAKE ABS DATA failure.
- Teach-mode motion test: at 10% override, jog each axis through its full travel range. Confirm no hard-limit bumper contact, no over-travel alarms, no abnormal servo loading.
- Auto-mode program test: create a 5-point program (P1 to P5) with linear moves at 100 mm/s. Run in Auto mode with hold-step enabled. Verify cycle repeatability within ±0.5 mm at the TCP.
- Position display verification: at P1, record the displayed Cartesian (X, Y, Z, Rx, Ry, Rz) and joint (S, L, U, R, B, T) coordinates. Power down for 60 seconds, power back up, re-master, and re-jog to P1. Cartesian deviation must be < 1 mm; joint deviation must be < 50 pulses.
- Battery retention verification: with controller OFF, measure battery voltage after 24 hours. A healthy Li-SOCl2 primary should retain > 3.50 V.
Mechanical Inspection: B-Axis Grease Migration
The field report noted grease on the B-axis input shaft cover. On K6SB units, the B-axis wrist passes through a Harmonic Drive SK-1 greased reducer. Over-application of grease (or use of a non-SK-1 compatible grease) can migrate past the input shaft and accumulate under the cover plate. Inspect and remediate as follows:
- Remove the B-axis cover plate (4× M5 socket-head bolts).
- Wipe accumulated grease from the input shaft and surrounding housing.
- Inspect the shaft seal (Lip-type, part number depends on build year — cross-reference the K6SB parts manual). Replace if hardened or displaced.
- Re-grease the Harmonic Drive with Motoman-specified Harmonic SK-1 (or equivalent — e.g., Harmonic Drive Systems SK-1A grease, NLGI grade 0). Apply through the designated zerk fitting on the input shaft only.
- Quantity per K6SB service manual: approximately 15–20 g per wrist axis. Do not exceed — the SK-1 grease expands under motion and over-greasing is the proximate cause of migration.
- Replace cover plate with a new gasket if the original is compressed.
Field-Proven Pitfalls
| Pitfall | Symptom | Mitigation |
|---|---|---|
| Reversed battery polarity at controller | All FILE TOTAL CHECK files corrupt on first power-up after battery swap | Verify with DMM before connecting; JAE lettering faces operator |
| Skipping RC2 init on a refurb unit | Alarm migrates between File 0 and File 1 on successive boots | Initialize both RC and RC2 parameter blocks |
| Shorting only one encoder battery | MAKE ABS DATA fails for the un-shorted axis only | Short every axis encoder; verify all SV status words read 0x00 |
| Door-sticker ABS values used after motor swap | Master pose deviates from factory; Cartesian drift | Use new motor's resolver zero; re-master; update door sticker |
| Alkaline AA substituted for Li-SOCl2 | Voltage reads ~1.5 V; SRAM corrupted within weeks | Use only Li-SOCl2 primary; verify 3.6 V nominal |
| Over-greasing B-axis with non-SK-1 grease | Grease migration, bearing contamination, possible reducer damage | Use only Harmonic SK-1/SK-1A; observe quantity limits |
Cross-Reference to Modern Yaskawa Platforms
The ERC K6SB belongs to Motoman's pre-XRC generation. Modern successors — NX100, DX200, FS100, and YRC1000 — handle the same fault class differently:
- On NX100/DX200, the equivalent alarm is 4107 (Absolute data error) or 4108 (Encoder backup battery low). Recovery uses
SETUP → FUNCTION → ENCODER BATTERY → RESET. - On FS100, alarms 3120, 3130, 3140, 3150 cover the record-file integrity family, with 3130 being a direct functional analog to the ERC FILE TOTAL CHECK. See the FS100 ERROR LIST in the Yaskawa Knowledge Center.
- On YRC1000, the alarm is 4107 (Absolute data lost) and is resolved via
MAIN MENU → ROBOT → ABSOLUTE DATA → RESET.
The conceptual workflow — battery replacement → parameter initialization → absolute data reset → mechanical re-master → verification — is preserved across all Motoman generations, only the menu paths and alarm numbers differ.
FAQ
What does FILE TOTAL CHECK ERROR File No: 255 mean on a Motoman ERC K6SB?
It is a checksum-mismatch alarm indicating that the controller's battery-backed SRAM has lost one or more system files — most commonly because the 3.6 V lithium backup cell has dropped below the SRAM retention threshold. The file number (0, 1, 255) identifies which slot in the file table failed; 255 typically indicates the master file descriptor.
How do I clear a MAKE ABS DATA FAILED alarm after a Motoman ERC initialization?
With controller power OFF, momentarily short the encoder battery harness at every servo motor on the robot (S, L, U, R, B, T) to force each absolute counter to reset. Restore power, enter MENU → SETUP → FUNCTION → MAKE ABS DATA, and confirm each axis. Verify all SV status words read 00 0000_0000 before jogging.
Which Mode number initializes a Motoman ERC controller?
Boot the controller into Main mode by holding MENU + SELECT while powering on, type 11, scroll up to Initialize Robot, and press ENTER. Then initialize both RC and RC2 parameter blocks before rebooting into Normal mode.
What is the correct polarity for the ERC controller battery connector?
The 2-pin JAE connector on the ERC K-series CPU board is symmetrical and can be inserted reversed. The correct orientation places the JAE lettering on the connector body facing the operator. Red lead (positive) lands on the cell holder's spring terminal; black lead (negative) on the flat terminal. Confirm with a DMM before applying power — reversed polarity will instantly corrupt the entire file system.
Why are my Motoman absolute data values different from the door sticker after calibration?
The door-sticker values are recorded at the factory for a specific motor/encoder pairing and master mechanical pose. If the servo motor has been replaced, the encoder has been re-zeroed, or the controller has undergone a Mode 11 initialization, the displayed values will differ. Update the door sticker to match the new correctly-mastered values — the original numbers are only valid for the original factory configuration.