Resolving Fanuc PS0001 TH Error: Step-by-Step CNC Parity Guide
Troubleshoot the Fanuc PS0001 TH Error. Learn to configure Parameter No. 0000 bit 0 and bit 1, check RS-232-C cables, and resolve CNC parity alarms.
Introduction
A sudden halt in data transmission instantly stops the CNC machine, freezing the tool turret mid-sequence and leaving the operator staring at a flashing PS0001 TH Error on the screen. This communication parity drop is not a minor programming glitch; it represents a hard data transmission failure that aborts execution to protect the machine from corrupted G-code instructions. When an invalid character parity format is transmitted through a damaged RS-232-C cable or an incorrectly configured I/O printed circuit board, the Fanuc controller immediately isolates the failure and cuts off program reading to prevent catastrophic mechanical runaways.
Technical Summary
| Field | Description / Value |
|---|---|
| Command / Function | I/O Data Transfer (Tape/RS-232-C Interface Input Parity) |
| Group / Modality | Non-modal / Communication |
| Brands Covered | Fanuc |
| Critical Parameters | Parameter No. 0000 Bit 0 (TVC), Parameter No. 0000 Bit 1 (ISO) |
| Main Constraint | Communication settings (baud rate, parity, data bits, stop bits) must perfectly match between the transmitting device and the CNC system settings. |
Quick Read
- Analyze diagnostics immediately: Consult the diagnostics screen to inspect the exact read code and block position where the parity violation occurred.
- Check cabling integrity: Visually inspect the physical RS-232-C cable for damage, shielding breaks, or improper grounding that introduces electrical noise.
- Match parity and format codes: Configure Parameter No. 0000 Bit 1 (ISO) to 0 to select the ISO punch format, matching the transmitter encoding.
- Manage block character count: Deactivate the TV parity check by setting Parameter No. 0000 Bit 0 (TVC) to 0 if program blocks contain an odd number of characters.
- Review related commands: Verify external subprogram calls (M198) and data inputs (G10) to ensure program structures match required communication protocols.
- Isolate faulty boards: Audit the physical I/O printed circuit board if communication errors persist despite matching parameters and intact cabling.
Basic Concepts
Data transfer between external storage devices and Fanuc controllers relies on standardized tape code parity rules under ISO or EIA formats. When reading from an external tape or laptop via RS-232-C interfaces, the controller verifies every character's binary structure against strict parity conventions. If the number of bits in a single read character does not conform to the expected format, a PS0001 TH Parity Alarm is immediately triggered, safely aborting all NC operations. This prevents corrupted G-code data from initiating unintended movements on physical components such as the tool turret or the spindle chuck.
To avoid these system interrupts, programmers must align the communication settings on both the transmitting software and the machine. Mismatched parity settings, physical damage to cables, or failures on the I/O printed circuit boards represent the primary causes of this error. Operators can utilize the diagnostics screen to determine the exact character and its position relative to the block before attempting to resolve the transfer issue. Regular audits of these communication nodes, similar to configuring the axis loops for the SV0414 Digital Servo System Alarm, are essential for CNC reliability. If the entire control interface overheats, it can lead to fatal parity card drops resembling the state of Fanuc OH0700/OH0701 Overheat Alarms, making proper hardware environments crucial.
Command Structure
The transmission and execution of G-code programs via the reader/puncher interface do not use a standard modal G-code block. Instead, data input operates under specific control configurations defined in the CNC's system parameters. These parameters govern how the internal reader interprets the punch code format and controls parity checking routines during program ingestion.
Proper programming requires aligning these bit-level parameters to match the tape format. For example, if Parameter No. 0000 is incorrectly set, the controller will fail to read standard G-code lines like N1 G50 X10.0 Z20.0 or N2 G00 W50.0. Technicians must understand the specific address layout of these control parameters to configure the reader interface properly. Never command three or more parameters in a single G-code statement unless authorized by the system configurations.
Control Parameter Address Layout:
| Parameter Address | Bit Name | Valid Settings | Function / Description |
|---|---|---|---|
| Parameter No. 0000 Bit 0 | TVC | 0 (Disabled), 1 (Enabled) | Controls the TV (Tape Vertical) parity check. If set to 0, suppresses the TV check which alarms on odd character counts. |
| Parameter No. 0000 Bit 1 | ISO | 0 (ISO Format), 1 (EIA Format) | Controls the punch code format. Setting this to 0 specifies ISO format, resolving encode errors. |
Brand Applications
Fanuc
Fanuc control architectures utilize a dedicated reader/puncher interface to ingest programs. The system integrates standard EIA and ISO formats through Parameter No. 0000. When a TH parity violation occurs, Fanuc immediately raises Alarm PS0001 (or Alarm 1590 on specific models) and aborts execution. To diagnose the failure, operators can access the Diagnostics Screen to pinpoint the precise character and block offset where the transmission failed. This granular logging safeguards physical components such as the spindle clamp and the tool turret by stopping movements before corrupted G-code block execution begins.
Brand Comparison
| Fanuc Series / Model | Parity & Format Configuration | Alarm Codes & Diagnostic Behavior |
|---|---|---|
| Fanuc Series 16i / 18i / 21i | Configured via Parameter No. 0000. Supports TVC and ISO parity selection. | Triggers Alarm PS0001 / PS0002. Displays diagnostic screen details with precise block offset. |
| Fanuc Series 0i / 0i-F | Shares standard Parameter No. 0000 mapping for TVC and ISO bit fields. | Triggers Alarm PS0001 (TH Error) or PS0002 (TV Error). Includes modern Ethernet I/O backup options alongside RS-232-C. |
| Fanuc T Series vs. M Series | Both series utilize the same Parameter No. 0000 definitions. | Lathes throw Alarm 014 for "ILLEGAL LEAD COMMAND" during tool paths, whereas Machining Centers throw "CAN NOT COMMAND G95" under identical G-code deviations, showing control mapping variations. |
Technical Analysis
Analyzing the mechanical impact of data transmission errors reveals a strict safety design. When a TH Parity Alarm (PS0001) occurs, the Fanuc system terminates the communication stream. The NC halts execution, dropping the ready line to prevent faulty coordinates or commands from moving the axes. This prevents physical crashes that could damage the spindle, vise jaw, or chuck.
Model-specific diagnostic behaviors highlight the differences in alarm architectures. For instance, a communication error can trigger a simple PS0001 parity fault or a broader SR0085 communication error depending on the physical I/O link unit used. While newer Fanuc Series 31i/32i systems feature detailed sub-codes, older Series 0i and 16i/18i/21i controls rely heavily on diagnostic parameters to pinpoint character offsets. By inspecting the diagnostics screen, maintenance personnel can determine if the error is a software formatting mistake or a hardware voltage drop along the RS-232-C transmission line. When tracing coordinate discrepancies or transfer halts during reference returns, comparing the behavior with PS0090/DS0300 Reference Return Alarms highlights how Fanuc segregates physical motion alarms from purely digital parity interruptions.
Program Examples
; Fanuc: N1 G50 X10.0 Z20.0
; Fanuc: N2 G00 W50.0
; Fanuc: N3 G91 U100.0
dry run
Prior to running these blocks on the machine, perform a transmission dry run with Parameter No. 0000 Bit 0 (TVC) set to 0. Verify that the file transfers completely without triggering PS0001. Ensure that the G50 coordinate system setup, G00 rapid traverse, and G91 incremental positioning execute safely on the controller interface with axis movements locked.
Error Analysis
| Alarm / Error Code | Trigger Condition | Operator Symptom | Root Cause / Resolution |
|---|---|---|---|
| PS0001 / 1590 | Character with incorrect parity detected during data reading from external device or tape. | Flashing alarm on the screen, immediate halt to program transmission and axis movements. | EIA vs. ISO parameter mismatch or broken RS-232-C cable. Set Parameter No. 0000 Bit 1 (ISO) to 0. |
| PS0002 / 1591 | Number of characters in a single program block is odd while the TV parity check is active. | Immediate alarm trigger when reading an odd-character block, program execution stops. | Adjust program block lengths to have an even number of characters, or set Parameter No. 0000 Bit 0 (TVC) to 0. |
| SR0085 | Overrun, parity, or framing error detected in the I/O interface communication. | Flashing SR0085 alarm, transmission stops mid-file. | Mismatched baud rates, incorrect input data bit lengths, or faulty I/O printed circuit board. |
| PS0539 | Extended spindle name is improperly commanded for clamp speed control. | Program execution halts when spindle speed clamp is read. | Correct the spindle speed clamp syntax and verify the spindle name parameters. |
| PS0366 | Improper G-code specified when the turret change tools method is active. | Turret operation halts immediately with alarm, preventing tool index. | Correct G-code syntax for turret tool changes and audit ladder sequence. |
Application Note
A physical defect in the RS-232-C communication cable or a voltage fluctuation on the I/O printed circuit board triggers a catastrophic PS0001 TH Parity Alarm, halting axis movement mid-sequence and freezing the tool turret. To prevent costly tool breakage and scrap parts, operators must check the diagnostics screen to identify the exact character and block distance where the transfer failed. If the error occurs during active data input using G10 parameters or external M198 subprogram calls, technicians must verify that the transmitter format is set to ISO and the parameter No. 0000 Bit 1 is configured to 0. If the ladder utilizes complex tool change logic or spindle speed clamp values, similar programming mistakes can impact physical machine elements, generating Alarm 0366 on the turret or Alarm 0539 on the spindle clamp. Methodical testing of these digital signals protects mechanical assemblies from running unguided instructions.
Related Command Network
- M198 (External subprogram call): Executes programs from external storage cards or reader devices, making the execution highly sensitive to parity errors if communication parameters are misaligned.
- G10 (Parameter/data input): Programmatically writes parameters and coordinate system data, which will trigger a TH error if the input stream contains formatting deviations.
- M03/M04 (Spindle control commands): Controls the rotation of the spindle, which will immediately spin down to a stop if a parity error triggers an NC alarm.
- G28 (Reference position return): Moves the machine axes to their primary home reference points, which must be executed successfully before initiating automated program data transfers.
Conclusion
Resolving TH Parity Alarms on Fanuc controls requires a transition from random debugging to systematic setting verification. By matching the transmission ISO format with Parameter No. 0000 Bit 1 set to 0 and checking the diagnostic character offset, technicians can isolate the exact cause of communication drops. Regular inspections of RS-232-C shielding, proper grounding, and routine parameter audits will keep production lines running smoothly and prevent unexpected halts.
Frequently Asked Questions
How do you recover a Fanuc machine after a PS0001 TH Parity Alarm?
To recover from a PS0001 alarm, clear the alarm on the control panel, then access the diagnostics screen to find the exact character and block offset of the failure. Verify that your RS-232-C cable shielding is grounded, ensure the transmission program contains no corrupted symbols, and restart the transfer process from the beginning of the program.
What is the difference between PS0001 TH Error and PS0002 TV Error?
The PS0001 TH Error is triggered by a binary character parity mismatch during transmission, while the PS0002 TV Error is triggered when a block has an odd number of characters while the TV Vertical Parity Check is enabled. To resolve PS0002, set Parameter No. 0000 Bit 0 (TVC) to 0, which suppresses the odd-character check and allows blocks of any length to pass.
Why does a mismatched EIA or ISO format trigger a TH Parity Alarm?
The EIA and ISO punch formats use different binary bit structures for characters. If the transmitting device sends data in EIA format while Parameter No. 0000 Bit 1 (ISO) is set to 0 (ISO format), the controller will misinterpret the incoming bits and raise a PS0001 alarm. You must set Parameter No. 0000 Bit 1 to match the format of your transmitter to ensure clean data transfer.
Still not resolved?
Ask our AI assistant about this topic in natural language. Grounded in verified sources, no hallucinations.

- CNC CARE Co-Founder (May 2025 - Present)
- Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
- Reis CNC Service Engineer (2003 - 2005)
- Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)
With over 25 years of experience working in all areas of the CNC machine industry, I continue my activities as a co-founder of CNC CARE, where we offer brand-independent consulting, engineering, and original spare parts services.
Related Articles
Other articles on this topic
G73 and G83 Peck Drilling Cycles: High-Speed and Deep-Hole Milling
Program G73 and G83 peck drilling cycles on Fanuc, Siemens, and Mitsubishi CNCs. Learn parameters, clear alarms, and optimize high-speed deep-hole milling.
G50.2 and G51.2 Polygon Turning: Synchronized Lathe Machining
Learn how to program G50.2 and G51.2 polygon turning on Fanuc, Siemens, and Mitsubishi CNC controls. Master spindle synchronization parameters, alarms, and G-code examples.
G31 Skip Function and CNC Probe Programming: Fanuc, Siemens, Mitsubishi
Master G31 skip function and probe programming on Fanuc, Siemens, and Mitsubishi CNCs. Prevent crashes, resolve alarms, and configure servo lag parameters.
G07.1 Cylindrical Interpolation: Guide for Fanuc, Siemens, Mitsubishi
Master G07.1 cylindrical interpolation on Fanuc, Siemens, and Mitsubishi CNCs. Learn axis mapping parameters, alarm fixes, and syntax rules to prevent crashes.