Resolving CP 343-1 Parameter Errors on S7-300 PLC STOP

David Krause13 min read
S7-300SiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Resolving CP 343-1 Parameter Errors on S7-300 PLC STOP

A Siemens SIMATIC S7-300 CPU that drops to STOP immediately after a CP 343-1 (order number 6GK7 343-1EX30-0XE0) is inserted into the rail is almost always responding to a parameterization mismatch detected on a PROFINET or PROFIBUS slave referenced by the CP. The CPU's diagnostic buffer typically shows an entry of the form "Parameter assignment error on module / I/O address 272", often labeled with the event ID 0xE1 / 0x3311 or 0x394B. This guide walks through the field-proven diagnostic path: reading the buffer, creating the missing OBs, reconciling HW Config, and clearing the CP 343-1 to a clean state.

Field note. A second identical machine that works with the same STEP 7 project is the strongest possible evidence that the local hardware is the problem, not the project file. Focus the diagnosis on the rack, the CP, and the wiring rather than on the STEP 7 source.

1. Problem Overview and Symptoms

The reported fault pattern is reproducible:

  • CPU transitions to STOP within one to three scan cycles after power-on or after download.
  • SF (group fault) LED on the CPU is steady red; BF (bus fault) on the CP 343-1 may also be lit depending on the slave type.
  • Diagnostic buffer (path: PLC → Diagnostic Buffer in STEP 7 / TIA Portal) shows a parameter assignment error pointing to a specific slot or I/O start address, in this case 272 (decimal), which equals 0x110.
  • Swapping the CP 343-1 to a known-good machine does not reproduce the fault. Swapping the project's CP 343-1 with the one from the good machine on the failing machine does reproduce the fault. Conclusion: the rack, the slot, or the slave behind the CP is the source of the parameterization error, not the CP itself.

2. Affected Hardware and Firmware Context

The order number 6GK7 343-1EX30-0XE0 identifies the standard CP 343-1, not the CP 343-1 Lean. Both share the same firmware upload mechanism but differ in functional scope and on-board memory.

Order Number Designation Firmware Range PROFINET IO Controller TCP Connections
6GK7 343-1CX00-0XE0 CP 343-1 Lean V1.0 – V3.0 No 8
6GK7 343-1EX30-0XE0 CP 343-1 V1.0 – V3.0 Yes (V2.0+) 16
6GK7 343-1EX40-0XE0 CP 343-1 (PN, extended) V3.0+ Yes 32

The CP 343-1 manual lists the relevant operating states for the module, including "stopped with error", which is entered when the memory is reset by the operator or when the configuration handshake with the CPU fails. Refer to CP 343-1 manual (PDF, Siemens Support, attachment 8777308) for the full state machine.

Caution. The address 272 shown in the diagnostic buffer is a slot/logical address, not a TCP/UDP port. A common field mistake is to treat this number as something editable in NetPro; it is not. The address is assigned by HW Config and is what the CPU uses to find the affected slave module.

3. Reading the S7-300 Diagnostic Buffer

Open the buffer from STEP 7 with the CPU online (PLC → Accessible Nodes or PLC → Diagnostics/Settings → Diagnostic Buffer). Most events relating to module parameterization are coded as follows:

Event ID Meaning Typical CPU Action
0x3311 Parameter assignment error on module STOP if OB not loaded
0x394B Module does not match the configured one STOP if OB82/OB86 not loaded
0x3561 Distributed I/O: station failure STOP if OB86 not loaded
0x3921 Module removed/inserted under power STOP if OB83 not loaded

Each event row contains the slot number in plain text and the logical base address in decimal. For a 16-channel digital input slice in a PROFIBUS DP slave, address 272 typically points to byte 272 of the input process image (PII), but the same address can also be a PROFINET device slot. Always open the entry to see "Module address" and "Detailed information".

4. Root Cause: Distributed I/O Failure Without OB86

The single most common reason for a CPU to go to STOP after a CP 343-1 is installed is the absence of OB86 (Rack/Slave Fault) in the S7 program. By default, the CPU calls OB1 only. If a configured slave fails to respond, the CPU's operating system needs an OB to handle the failure; without one, the CPU transitions to STOP.

Three nested root-cause categories usually produce the address 272 fault:

  1. Hardware mismatch. The module physically installed in the slot does not match the order number or firmware in HW Config. The handshake fails, the CPU logs 0x394B, and OB86 would have caught it.
  2. Topology / wiring fault. PROFIBUS connector termination is wrong, or a PROFINET cable is in the wrong port, or the slave has no power. The CP reports the slave as failed, and OB86 would have caught it.
  3. Configuration fault. The CP 343-1 is not bound to a configured Ethernet subnet, the IP address is in a different subnet than the CPU, or the gateway is wrong. The CP cannot complete the startup parameterization of the slaves below it, and the CPU logs the first failed slave at address 272.
Engineering tip. A standalone S7-300 program created without the distributed I/O wizards is shipped with no OB86, OB82, OB83, OB100, or OB121. If the project is a copy of a non-distributed project, those OBs need to be added explicitly. They are inserted with empty bodies to keep the CPU running when the event fires.

5. Required Organization Blocks for Fault Tolerance

The following OBs should be present in the Blocks folder of the S7 program. They can be created in STEP 7 by right-clicking the Blocks folder, choosing Insert New Object → Organization Block, and downloading them to the CPU.

OB Name Triggered By Why It Matters
OB82 I/O Point Fault Channel-level diagnostics on a module Prevents STOP on a single channel fault
OB83 Insert/Remove Module Hot-swap event on a slotted module Allows live module replacement
OB86 Rack/Slave Fault PROFIBUS DP or PROFINET IO station failure Critical for any DP/PN slave
OB100 Warm Restart Power-on with retentive data Initial start-up logic
OB121 Programming Error Access to non-existent DB or wrong type Prevents STOP on STL/DB errors

Create each as an empty OB. In STEP 7 V5.x, choose the OB number from the list. In TIA Portal for an S7-300, the OB type is selected from the dropdown. The body remains empty; the presence of the OB is what matters.

6. Hardware Configuration (HW Config) Verification

Open HW Config in STEP 7 (S7 Program → Hardware). The CP 343-1 is in slot 4 by default (slot 1 = power supply, slot 2 = CPU, slot 3 = IM if any, slot 4 = first CP). The configuration tree on the left must show:

  • Rail 0 / Slot 0: PS 307 (or equivalent)
  • Slot 2: CPU 31x with the same order number and firmware as the physical module
  • Slot 4: CP 343-1 with order number 6GK7 343-1EX30-0XE0
  • Optional slot 3: IM 360/361 for expansion racks

Click the CP 343-1 and check Properties → Ethernet Interface. The CP must be assigned to a configured Ethernet subnet. If "Not networked" is shown, this is the most common cause of a parameterization error on the slaves the CP serves.

For PROFINET IO, the CP 343-1 (firmware V2.0 or later) is the IO controller. Open PROFINET IO → IO Devices and confirm each device has a green check mark, that the device number matches the physical device, and that the slot configuration matches the modules installed in the field station.

7. CP 343-1 Network Configuration

The CP 343-1 needs three things to bring up the distributed I/O stack: a valid IP address, a subnet mask, and a gateway (if the slaves are reached through a router). The following block shows the typical configuration for a 6GK7 343-1EX30-0XE0 in a machine cell:

IP address     : 192.168.0.10
Subnet mask    : 255.255.255.0
Gateway        : 192.168.0.1 (omit if no router)
PROFINET name  : cp343-1-cell1
MAC address    : 00-0E-8C-AB-CD-EF (printed on front of CP)
Subnet name    : Ethernet(1)

Validate the configuration from the programming PC:

  1. Connect the PC to the same switch as the CP.
  2. Open a command prompt and execute ping 192.168.0.10. A reply confirms the IP is alive and the subnet is consistent.
  3. If the CP has no IP (first commissioning), use PLC → Ethernet Node → Browse or the PST tool to assign it.
  4. Open Accessible Nodes in STEP 7 and confirm the CP shows up at the configured address.
Warning. Do not assign the CP 343-1 and the CPU 31x the same IP address. Both devices have their own Ethernet interface; the CPU's integrated PN/IE port and the CP 343-1 are independent nodes. A duplicate IP causes the CP to fail its ARP handshake, the slaves never parameterize, and the CPU logs a slave fault at the first address the CP was supposed to serve.

8. Module Order Number and Firmware Verification

The CP 343-1 reports its order number and firmware to the CPU during startup. If HW Config specifies a different revision, the CPU logs 0x394B (module does not match). The physically installed module can be read in two ways:

  1. From the front label of the CP, e.g. 6GK7 343-1EX30-0XE0 / FW V2.0.
  2. Online: in HW Config, right-click the CP and select PLC → Module Information. The order number, firmware, and serial number are listed under Identification.

Compare this against the order number and firmware in the offline project. If they differ, either change the HW Config to match the physical CP, or replace the CP with the model that matches the project. Do not change the IP address range of the CP in an attempt to fix a parameterization error; the address is not the cause.

9. CP Memory Reset and the "Stopped with Error" State

The CP 343-1 retains its configuration in non-volatile memory. If the memory is reset (for example, by holding the reset button on the front of the CP for 10 seconds with power applied), the CP goes to a "stopped with error" state. According to the CP 343-1 manual, the CPU does not automatically detect that the CP memory was reset, so the CP remains in this state until a configuration download is performed.

To recover a CP from this state:

  1. Connect STEP 7 to the CPU and go online.
  2. Open HW Config and select the CP 343-1.
  3. Right-click and choose PLC → Download to Module (or use the menu Target System → Load).
  4. Wait for the CP to complete the startup sequence. The SF LED goes out, the RN (Run) LED becomes steady green, and the slaves below the CP are reported as reachable.
Warning. After a CP memory reset, all IP and PROFINET name settings on the CP are returned to defaults. Plan to re-assign the IP first using PST or STEP 7 Ethernet Node → Browse, then download the full configuration.

10. Step-by-Step Recovery Procedure

The following procedure reproduces the sequence used by experienced field engineers when an S7-300 CPU stops immediately after a CP 343-1 is added.

  1. Read the diagnostic buffer with the CPU online. Note the event IDs and the module address (272 in this case).
  2. Create the missing OBs in the S7 program: OB82, OB83, OB86, OB121. Use empty bodies. Compile and download the blocks.
  3. Open HW Config and verify that the CP 343-1 is in the correct slot and assigned to a configured Ethernet subnet.
  4. Verify the order number and firmware of the physical CP against HW Config. Resolve any mismatch.
  5. Re-assign the IP address of the CP. Use the Ethernet Node → Browse tool to find the CP by its MAC address. Assign a free IP from the machine cell's range.
  6. Ping the CP from the programming PC to confirm the link and IP.
  7. Download the HW Config to the CPU. The CPU forwards the configuration to the CP at startup.
  8. Power-cycle the rack (or perform a CPU stop-to-run transition) to clear the diagnostic buffer and re-trigger startup.
  9. Read the diagnostic buffer again. It should now show a clean startup without the 0x3311 / 0x394B entry.
  10. Validate distributed I/O by monitoring the input process image and forcing a known output on a slave.

11. Verification Tests

Once the CPU stays in RUN, perform these checks before returning the machine to production:

Test Tool Expected Result
Diagnostic buffer is clean STEP 7 / TIA online No entries for OB86, OB82, OB83 in last hour
CP 343-1 LEDs Visual RN steady green, SF off, BF off
PROFINET device diagnostics STEP 7 → PROFINET IO Diagnostics All devices show "OK" status
Process image continuity Variable table (VAT) online Inputs update; outputs toggle from VAT
TCP/ISO connection test (if used) Open Communication Wizard or NetPro Active connection, send/receive counters incrementing
Cold start simulation Power down / power up CPU returns to RUN within 5 s, all slaves reachable

12. Field Notes and Common Pitfalls

Three pitfalls repeat in the field. Each is easy to miss and produces the same symptom — CPU in STOP after CP 343-1 is added:

  • Address 272 is not editable. The diagnostic buffer shows where the CPU saw the fault, not a parameter to change. Re-assigning the I/O start address of a module does not fix the underlying problem; it only moves the fault to a different address. Verify the physical module first.
  • Subnet mismatch. The CP 343-1 belongs to an Ethernet subnet in HW Config. If that subnet is the default "Ethernet" with no address, the CP cannot route any PROFINET IO startup frames. Drag the CP onto the configured subnet in NetPro and re-download.
  • CP 343-1 versus CP 343-1 Lean. The Lean variant (6GK7 343-1CX00-0XE0) does not support PROFINET IO Controller. If a project was created for the Lean variant and a 6GK7 343-1EX30-0XE0 is physically installed, the configuration will be rejected because the device description in HW Config does not match the plugged-in device.

If the parameterization error persists after following the steps above, capture a screenshot of HW Config (both the rack and the PROFINET tree), the full diagnostic buffer, and the CP module information page, and escalate to Siemens Technical Support with those artifacts.

FAQ

What does the diagnostic buffer entry "Parameter assignment error at address 272" mean on a CP 343-1?

It means the CPU could not complete the parameterization of a distributed I/O slave referenced by the CP 343-1, with the fault originating at the module whose logical input start address is 272. The address is informational, not a parameter to change. Verify the physical module against HW Config and ensure OB86 is present in the S7 program.

Why does the S7-300 CPU go to STOP when a CP 343-1 is inserted but the same project works in another machine?

The most common cause is the absence of OB86 in the program: the CPU has no fault handler for distributed I/O failures, so any slave handshake error stops the CPU. Add OB86 (empty body) and download. The second most common cause is a hardware mismatch on the local rack or a wiring fault that does not exist on the other machine.

How do I create OB86 in STEP 7 for an S7-300 program?

In the SIMATIC Manager, open the Blocks folder, right-click and select Insert New Object → Organization Block. In the dialog, choose type OB and number 86. Leave the body empty, save, compile, and download to the CPU. The OB is now registered and the CPU will call it instead of going to STOP on a rack/slave fault.

What is the difference between CP 343-1 (6GK7 343-1EX30) and CP 343-1 Lean (6GK7 343-1CX00)?

The standard CP 343-1 supports PROFINET IO Controller (firmware V2.0+) and up to 16 TCP connections; the CP 343-1 Lean does not support PROFINET IO Controller and is limited to 8 TCP connections. A project built for the Lean cannot run on a standard CP without swapping the device in HW Config.

How do I recover a CP 343-1 stuck in the "stopped with error" state?

Hold the reset button on the front of the CP for 10 seconds with power applied to clear the memory, then re-assign the IP address using STEP 7 Ethernet Node → Browse or the PST tool, and download the HW Config from STEP 7 to the CPU. The CP will then accept the configuration and leave the error state. Refer to the CP 343-1 manual on Siemens Support for the full reset and download sequence.

Back to blog