Resolving Wire Break Errors on S7-1200 SM 1231 and SM 1232
A common commissioning situation with the SIMATIC S7-1200 system is the appearance of a "Wire Break on 0" diagnostic event on a SM 1231 analog input (AI) module or a SM 1232 analog output (AO) module, even though no field wiring is connected to the module. The CPU ERROR LED blinks, the module DIAG LED blinks, the per-channel status LEDs flash, and the diagnostic buffer records one or more "Wire Break on 0" entries. The condition is most often reported on a fresh project that is being brought up for the first time, when an apprentice or engineer has just installed the modules and is about to begin wiring.
The 24 V terminals on the module connector (L+ and M) are the module's power supply feed, not a sensor or actuator connection. The wire break diagnostic monitors the actual analog signal path, not the supply. Therefore, having 24 V on the supply terminals does not clear a wire break diagnostic on a current loop channel that is left open. This article documents the configuration path, the underlying detection principle, the verification steps, and field-proven best practices for the specific hardware combination reported in the field.
Affected Hardware Reference
The configuration described in the field report uses three S7-1200 components. The full article numbers and key specifications are summarized below for reference. Verify the exact article number and firmware version on the label of the physical module before applying the configuration, because the HF32 family includes both 8x13-bit and 8x16-bit variants depending on the firmware index, and the behavior described here applies to the 6ES7 231-4HF32-0XB0 suffix used in the report.
| Component | Article Number | Function | Key Specifications |
|---|---|---|---|
| CPU 1212C DC/DC/DC | 6ES7 212-1BE40-0XB0 | Central processor | 8 DI 24V DC / 6 DO 24V DC / 2 AI 0-10V; 50 KB code / 50 KB data work memory; PROFINET interface; bit memory 8192 bytes; firmware V4.x |
| SM 1231 AI 8x13 bit | 6ES7 231-4HF32-0XB0 | Analog input expansion | 8 AI, 13-bit resolution; ranges: +/-10V, +/-5V, +/-2.5V, 0-20mA, 4-20mA; diagnostic interrupt capable; wire break detection on current ranges |
| SM 1232 AO 4x14 bit | 6ES7 232-4HD32-0XB0 | Analog output expansion | 4 AO, 14-bit resolution; ranges: +/-10V, 0-20mA, 4-20mA; diagnostic interrupt capable; wire break detection on current outputs |
Refer to the SIMATIC S7-1200 Programmable Controller system manual on the Siemens Industry Online Support portal for the complete catalog and per-module specification, including the SM 1231 and SM 1232 chapters. The manual is searchable by article number and contains the diagnostic event reference, the per-channel configuration description, and the diagnostic interrupt description.
Root Cause Analysis
The SM 1231 and SM 1232 modules implement a wire break detection circuit on every channel that is configured for a current range. The detection principle is straightforward: the module sources a small sense current through the channel and measures the resulting loop voltage. If the loop voltage rises above an internal threshold that corresponds to an open circuit (typically when the load impedance exceeds a few kΩ for a 4-20 mA loop), the module flags a wire break. The detection is implemented in the module firmware, runs independently of the user program, and is reported to the CPU through the backplane bus as a channel diagnostic.
On receipt of a diagnostic event, the CPU performs three actions in sequence:
- Writes a time-stamped text entry to the diagnostic buffer ("Wire Break on 0" for channel 0, with the originating module and slot number).
- Activates the module DIAG LED and the per-channel error LED on the affected module.
- Calls the diagnostic interrupt OB (OB82) if it is loaded; if OB82 is not loaded, the CPU sets the ERROR LED and, depending on the configuration, may enter STOP.
For the S7-1200 analog modules in the HF32 / HD32 family, the wire break diagnostic is enabled by default in TIA Portal for current ranges. The 24 V terminals that exist on the module connector are the L+ and M power feed for the module itself (24 V DC sensor supply and module power), not a signal loop. With no sensor or actuator in the current loop, the module sees an open circuit and reports wire break on every configured current channel. The presence of 24 V on the supply terminals does not affect the diagnostic because the diagnostic measures the loop, not the supply.
Diagnostic Indicators Decoded
When a wire break is active on a S7-1200 SM 1231 or SM 1232 module, four observable indicators are activated. Each is described below with its meaning and how to read it in the field.
| Indicator | Location | Meaning | Action |
|---|---|---|---|
| CPU ERROR LED flashing | CPU 1212C front panel | At least one diagnostic event from any module is pending | Read the diagnostic buffer; identify the originating module and channel |
| Module DIAG LED flashing | SM 1231 / SM 1232 front panel | At least one channel on this module has a diagnostic event | Open the module in TIA Portal; the affected channel is marked in red |
| Per-channel LED flashing | Row of channel status LEDs on the module | The specific channel has a diagnostic (wire break, short circuit, or overflow) | Identify the channel number; cross-check with the diagnostic buffer text |
| Diagnostic buffer entry | Online & Diagnostics -> Diagnostics -> Diagnostic buffer | Time-stamped text event with module and channel reference | Double-click the entry for the full diagnostic text, including the event code |
The "Wire Break on 0" text in the diagnostic buffer means: wire break on channel 0 of the module identified in the same entry. If the entry is "Wire Break on 0" and the module is the SM 1232, the offending channel is AO 0 of the SM 1232. The CPU does not always have the same diagnostic number scheme as the module; cross-reference using the slot number shown in the diagnostic buffer or the TIA Portal device view. The slot number is sequential from left to right starting with slot 1 for the CPU.
The DIAG LED on the module is a single bi-color LED: off (no diagnostic), red flashing (module diagnostic present), or green steady (module is healthy and configured). The per-channel LEDs are red for an active channel diagnostic and off for a healthy channel. The CPU ERROR LED has a different blink rate for diagnostic events versus hardware faults; a slow blink at 0.5 Hz is the typical diagnostic rate, a fast blink at 2 Hz is typical for a hardware fault, and a steady red is typical for a STOP state.
TIA Portal Configuration: Step-by-Step Solution
The wire break diagnostic is enabled or disabled in the module's properties in the TIA Portal project. The following steps describe the path for TIA Portal V16, V17, and V18. Earlier versions (V13 SP1 through V15.1) use a similar path with slightly different menu text, and the same general principle applies. The procedure is identical for the SM 1231 and the SM 1232 except for the channel group name (Inputs versus Outputs).
- Open the project in TIA Portal and navigate to the device view (double-click "Devices & networks" in the project tree, then select the S7-1200 station).
- Select the affected module in the rack view. The module's properties dialog opens in the inspector on the right side of the window.
- Navigate to the "Properties" inspector on the right side of the TIA Portal window. If the inspector is not visible, enable it with View -> Properties (Alt+Enter).
- Expand the "Diagnostics" section in the module properties. Under Diagnostics, the channel group is listed: "Inputs" for the SM 1231, "Outputs" for the SM 1232.
- Expand the channel group and select channel 0 (or all channels, depending on whether the diagnostic is to be disabled per-channel or for the whole module).
- Open the "Diagnostics" sub-section for the selected channel. The checkboxes for "Wire break" and "Short circuit" appear, along with overflow and underflow options.
- Uncheck "Wire break" to disable the wire break diagnostic on this channel. Optionally uncheck "Short circuit" if a current loop without a defined load is also expected during commissioning.
- Repeat for every channel that will be left open during commissioning. The selection is per-channel; the diagnostic can be enabled on some channels and disabled on others.
- Compile the project (Project -> Compile -> Software (rebuild all)). The compilation must succeed; if the project contains other errors, the diagnostic setting will not be downloaded.
- Download the project to the CPU (right-click the CPU -> Download to device -> Hardware and software). Confirm the overwrite prompt.
- Power-cycle the CPU or perform a STOP-to-RUN transition (Online -> CPU operator panel -> RUN) to clear any latched diagnostic events.
Channel-Level vs Module-Level Diagnostic Options
For the SM 1231 and SM 1232, TIA Portal exposes the following diagnostic bits per channel. Understanding the difference matters when choosing which to disable during commissioning and which to leave enabled for permanent field surveillance.
| Diagnostic | Range Applicable | Behavior When Enabled and Triggered | Typical Use |
|---|---|---|---|
| Wire break | Current ranges (0/4-20mA) on AI and AO | DIAG LED + per-channel LED + diagnostic interrupt + diagnostic buffer entry | Field wiring surveillance on 4-20mA loops; detection of a disconnected sensor or actuator |
| Short circuit (output side) | Voltage outputs (SM 1232) | DIAG LED + per-channel LED + diagnostic interrupt + diagnostic buffer entry | Detection of a shorted load on a +/-10V output |
| Overflow | All ranges | Diagnostic interrupt + diagnostic buffer entry; the analog value is clamped to the upper limit | Detect signal above the configured range; useful for validating a 4-20mA loop above 20mA |
| Underflow | All ranges | Diagnostic interrupt + diagnostic buffer entry; the analog value is clamped to the lower limit | Detect signal below the configured range; useful for validating a 4-20mA loop below 4mA |
| Group diagnostics | Module level | Aggregate of all per-channel diagnostics; not configurable | One bit indicating any diagnostic on any channel of the module |
Wire break is the only diagnostic that will fire on an open current loop. Overflow, underflow, and short circuit do not trigger on an open circuit. A persistent "Wire Break on 0" therefore unambiguously points to the wire break bit, not to any of the other diagnostics. This is helpful when triaging in the field: if the diagnostic buffer shows "Wire Break" and the module is configured for a current range, the loop is open. If the buffer shows overflow or underflow on the same channel, the loop is closed and the signal is outside the configured range.
When Wire Break Diagnostics Should Stay Enabled
Disabling the wire break diagnostic is appropriate for commissioning and for channels that will remain unused for the life of the machine. It is not appropriate as a permanent fix for a wired channel. A 4-20 mA loop with the diagnostic enabled is the standard way to detect a broken cable or a disconnected sensor during production. The diagnostic is one of the most useful field-surveillance features of the S7-1200 analog modules and should remain enabled on every channel that has a physical device connected.
The recommended approach is therefore:
- Disable the wire break diagnostic on every channel that is intentionally unused in the final design. Unused channels should also be configured for a valid range (typically 4-20 mA or 0-10 V) so that the channel can be brought into service later without a configuration change.
- Keep the diagnostic enabled on every channel that has a sensor, transmitter, or load installed. The wire break diagnostic detects a disconnected sensor, a broken cable, a failed transmitter output stage, and a polarity reversal on a 2-wire device.
- Re-enable the diagnostic in a controlled change window when a previously unused channel is brought into service. Add the new channel to the I/O list, update the documentation, and re-verify the diagnostic behavior in a loopback test.
For safety-related signals, the wire break diagnostic alone is not sufficient. The signal must also be validated in the user program: check that the 4-20 mA value is within the expected engineering range, check the rate of change against the expected dynamic of the process, and use the diagnostic as a secondary confirmation. Refer to the S7-1200 system manual section on analog value processing for the recommended user-program structure, including the normalization block (NORM_X) and the scaling block (SCALE_X) for converting raw integer values to engineering units.
Best Practices for Commissioning
The "Wire Break on 0" event is a normal commissioning-state event, not a fault. The following best practices reduce noise in the diagnostic buffer during bring-up and produce a clean handover package.
- Wire break diagnostics off by default on unused channels. Configure every unused channel for the correct range (typically 4-20 mA or 0-10 V) and disable wire break. The CPU no longer raises an error for a channel that is intentionally not connected, and the diagnostic buffer stays clean.
- Use 0-10 V ranges where the device supports it. If a sensor is available in both voltage and current versions, use the voltage version during bring-up. Wire break is not reported on voltage ranges, which simplifies the first power-on. Switch to the current version once the loop is closed and the field wiring is complete.
- Use the diagnostic buffer as a configuration tool, not just a fault log. The buffer is the fastest way to verify that all diagnostics are either firing as expected (wired channels) or silent (unwired channels). A clean buffer at handover is a sign of a clean configuration.
- Load OB82 in the user program. The diagnostic interrupt OB (OB82) is called when a module raises or clears a diagnostic event. Loading OB82 with at least an empty body suppresses the CPU ERROR LED for diagnostic events on configured modules. Without OB82, every diagnostic event — even a cleared one — sets the CPU ERROR LED.
- Document the per-channel diagnostic state. Add a "Diagnostics" column to the I/O list, listing the diagnostic bits enabled per channel. This is a standard column on the SIMATIC I/O list template and is part of a clean handover package.
-
Mark unused channels explicitly in the project. Use the symbol name to indicate the channel is unused (e.g.,
AI_0_UNUSED) so that a future maintainer does not enable the diagnostic by accident and reintroduce the wire break event. - Add a comment to the I/O list for every channel with the diagnostic disabled, explaining why (e.g., "Spare channel, no field device planned"). The comment is visible in the project tree and survives a hardware swap.
Verification Procedure
After disabling the wire break diagnostic and downloading the configuration, verify the result with the following steps. The verification should be performed on every affected channel, not just channel 0, because the configuration is per-channel and a single channel can be missed.
- Go online with the CPU in TIA Portal (click the "Go online" button in the toolbar, or use the keyboard shortcut Ctrl+K).
- Open the device view and right-click the module -> "Online & Diagnostics" -> "Diagnostics". The current state of every channel is shown. Channels with the wire break diagnostic enabled and currently detecting a break are marked with a yellow or red icon; channels with the diagnostic disabled show no icon for wire break.
- Open the diagnostic buffer (Online & Diagnostics -> Diagnostics -> Diagnostic buffer). Verify that no new "Wire Break on 0" entry has been added since the download. Older entries from before the fix remain in the buffer; that is normal and can be cleared with the "Clear" button.
- Observe the LEDs on the module: the DIAG LED should be OFF (or steady green, depending on the module variant), and the per-channel LEDs for the affected channels should be OFF. The CPU ERROR LED should be OFF or, if other diagnostics are active on other modules, behave according to the residual diagnostic state.
- For a full verification, temporarily reconnect a 4-20 mA source (e.g., a process calibrator or a 4-20 mA simulator) to one of the channels that has the wire break diagnostic re-enabled. The diagnostic should clear within one conversion cycle (typically less than 100 ms for the SM 1231 and SM 1232). Disconnect the source and confirm the diagnostic returns. This validates that the diagnostic still functions on the wired channels.
- Document the verification in the commissioning report: the channel numbers, the diagnostic state, the time of the test, and the result. The report is part of the handover package and is required for most industrial customers.
Troubleshooting Matrix
The following matrix maps common "wire break" symptoms to their likely causes and the recommended action. Use it as a triage guide when a wire break event appears in the field.
| Symptom | Likely Cause | Action |
|---|---|---|
| Wire Break on every channel of a fresh SM 1231 / SM 1232 | Diagnostic enabled by default; nothing connected | Disable wire break per channel in TIA Portal hardware configuration |
| Wire Break on a single channel with a sensor installed | Cable broken, sensor not powered, sensor output stage failed, polarity reversed on a 2-wire transmitter | Check loop voltage at the sensor terminals; check polarity; replace the cable |
| Wire Break comes and goes during machine operation | Loose terminal, vibration, intermittent cable, sensor power supply droop | Re-torque the terminals; check the 24 V supply under load; replace the cable |
| Wire Break on a voltage range channel | Not possible on S7-1200 SM 1231 / SM 1232 - the diagnostic is current-only | Verify the configured range; if the range is voltage, look for overflow / underflow instead |
| Wire Break after a firmware update on the module | Project configuration retained but module firmware default changed | Re-download the project; verify the per-channel diagnostic state |
| Wire Break on a channel that was working yesterday, no wiring changes | Sensor failure, cable damage, terminal screw loose | Inspect the field wiring; measure the loop current; replace the sensor |
| Wire Break appears only when the analog output is driven above a certain value | Load impedance is too high for the configured range (current output driving a high-impedance load) | Check the load specification for the actuator; add a burden resistor if the actuator is voltage-input |
| Wire Break on a 4-20 mA loop with a HART device | HART multidrop mode, low primary variable, or device in burst mode with no current | Check the HART configuration; verify the loop current is within 3.6 to 21 mA |
| Wire Break after a module replacement | New module has the diagnostic enabled by default | Re-download the project to the new module; verify the per-channel state |
| Wire Break only on cold start, clears after warm-up | Sensor warm-up time exceeds the diagnostic response time | Increase the diagnostic evaluation time in the module properties if available; or delay the first read in the user program |
Related Documentation
The following official Siemens documents provide the full reference for the configuration described in this article. All are available on the Siemens Industry Online Support portal.
- SIMATIC S7-1200 Programmable Controller system manual - chapter on signal modules SM 1231 and SM 1232, including the diagnostic event reference and the per-channel configuration description.
- TIA Portal hardware configuration help - section "Configuring analog modules", in the TIA Portal information system.
- S7-1200 diagnostic events list - in the S7-1200 system manual appendix, listing every diagnostic event code and its meaning.
- SIMATIC S7-1200 product page - catalog numbers, firmware versions, and ordering information for the CPU 1212C, SM 1231, and SM 1232.
Why does the S7-1200 show Wire Break on channel 0 when nothing is connected?
The SM 1231 and SM 1232 modules have a wire break diagnostic that is enabled by default for current ranges (0-20 mA and 4-20 mA). With no sensor or load in the current loop, the module sees an open circuit and reports a wire break on every configured current channel. Disable the diagnostic in the module's properties in TIA Portal, or install a field device to close the loop.
Does the wire break diagnostic fire on voltage inputs and outputs?
No. The wire break detection on the S7-1200 SM 1231 and SM 1232 is implemented only for current ranges. A voltage channel left open is not flagged. If a wire break diagnostic fires on a voltage range, check that the module is actually configured for the current range; the configuration in the device view must match the field wiring.
Where do I disable wire break in TIA Portal?
Open the device view, double-click the analog module, navigate to Properties -> Diagnostics -> channel group (Inputs for SM 1231, Outputs for SM 1232) -> select channel 0 (or all channels) -> uncheck "Wire break". Compile and download the project. The change is per-channel, not module-wide.
Should I leave the wire break diagnostic disabled in production?
Only for channels that are intentionally unused. For every channel with a connected sensor, transmitter, or actuator, keep the wire break diagnostic enabled. It is one of the most useful field-surveillance features of the S7-1200 analog modules and detects broken cables and disconnected sensors during production. A disabled diagnostic on a wired channel is a configuration defect, not a fix.
Why does the CPU ERROR LED keep blinking even after the wire break is disabled?
The diagnostic buffer may still contain entries from before the fix. Clear the buffer (Online & Diagnostics -> Diagnostics -> Diagnostic buffer -> "Clear"), or perform a STOP-to-RUN transition. Also confirm that OB82 is loaded in the user program: without OB82, the CPU ERROR LED will continue to blink for any active diagnostic event, including events from other modules.
What is the difference between wire break and short circuit diagnostics on the SM 1232?
Wire break applies to current outputs (0-20 mA and 4-20 mA) and detects an open loop. Short circuit applies to voltage outputs (+/-10V) and detects a load impedance below the module's drive capability. They are independent diagnostics and can be enabled or disabled separately per channel. An open voltage output does not fire either diagnostic; only an open current output fires wire break.
How fast does the wire break diagnostic respond?
The module firmware evaluates the loop on every conversion cycle. For the SM 1231 and SM 1232, the conversion time is in the range of a few milliseconds per channel (depends on the integration time configured in the channel properties). The diagnostic event is reported to the CPU on the next backplane cycle, typically within 10 ms. The DIAG LED and the per-channel LED are updated within the same window.