Resolving S7-315-2DP Profibus DP STOP with Parameter Assignment

David Krause11 min read
ProfibusSiemensTroubleshooting
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

1. Problem Overview

When a SIMATIC S7-315-2DP (6ES7315-2AG10-0AB0) is configured as a Profibus DP master against a S7-313C-2DP (6ES7313-6CF03-0AB0) slave, the master CPU can fall into STOP mode at startup with the diagnostic buffer entry:

STOP caused by parameter assignment error or unpermissible difference between preset and actual configuration

The same fault is observed when a SIMATIC S7-316-2DP (6ES7316-2AG00-0AB0) is used as the master. The slave remains in RUN, but its SF (System Fault) LED lights steadily. The issue is reproducible with both the 315-2DP and 316-2DP masters against the 313C-2DP slave, indicating the fault is not isolated to one specific master CPU. The mismatch can also surface after a firmware update or a hardware reconfiguration when a Profibus node that is physically present in the rack is not represented in the STEP 7 hardware configuration (HW Config).

Engineering implication: An unconfigured but powered Profibus node on the same backplane or segment is a frequent cause of "preset ≠ actual" STOPs. Always reconcile the physical rack contents with HW Config before commissioning.

2. Affected Hardware, Order Numbers, and Firmware

Module Order Number (MLFB) Recommended Firmware Role
S7-315-2DP 6ES7315-2AG10-0AB0 V2.0.12 (or latest 2.x) DP Master (Class 1)
S7-316-2DP 6ES7316-2AG00-0AB0 V2.0.12 (or latest 3.x) DP Master (Class 1)
S7-313C-2DP 6ES7313-6CF03-0AB0 V2.0.12 (or latest 2.x) DP Slave
CP 341 6ES7341-1AH01-0AE0 V1.0.x (if used) PtP/Serial (non-DP)

Firmware updates are performed using SIMATIC Field PG or a standard PC with STEP 7 and an S7 FW Update Tool. Always use the Siemens Product Support entry for the module's MLFB to obtain the latest FW package.

3. Root Cause Analysis

The dominant root cause for this symptom set is a physical/topological mismatch between HW Config and the actual rack contents. The diagnostic buffer in this case is consistently populated by the asynchronous OB dispatcher calling:

  • OB82 – Diagnostic interrupt (module removed/faulted, or channel diagnostic)
  • OB85 – Priority class error (update/process image access failure)
  • OB86 – Rack/DP slave failure (loss of a Profibus station)
  • OB87 – Communication error
  • OB121 – Programming error (I/O access fault on PII/PIQ)
  • OB122 – I/O access error (direct peripheral access failed)

When the CPU is parameterized with a Profibus topology that lists a master and one or more slaves, but a physically installed module — for example a CP 341 that is not configured in HW Config — is on the same backplane, the master attempts to discover and map all installed modules during startup. The mismatch raises a distributed I/O parameter assignment fault, the operating system requests OB86, OB82, OB85 in sequence, and the CPU transitions to STOP because the preset configuration cannot be reconciled with the actual configuration.

The OBs themselves do not cause the STOP — they only mask the fault. The CPU still goes to STOP when the parameter assignment error is non-recoverable, regardless of whether the OBs are loaded.

4. Reading the S7-300 Diagnostic Buffer

Open the online diagnostic buffer in STEP 7:

  1. Right-click the CPU in SIMATIC Manager > Online > Accessible Nodes.
  2. Select PLC > Diagnostic/Setting > Diagnostic Buffer.
  3. Open the most recent STOP event and drill into the Event Details.

Typical entries and their meaning for this fault class:

Event ID Meaning Typical Cause
0x4947 STOP by parameter assignment error DP slave mismatch / missing GSD module
0x39xx Module removed/inserted CP 341 physically present, not in HW Config
0x3582 DP: Station failure Slave not powered, broken bus connector, wrong termination
0x39C4 Diagnostic interrupt from DP slave Wrong module in slot, slot mismatch
0x2521 OB not loaded OB85/86/82 missing in user program

For each Station failure entry, the diagnostic buffer contains the DP diagnostic address (e.g., 1022, 2045) of the affected slave. Cross-reference that address with the slave's Properties > Profibus Interface > Diagnostic Address in HW Config.

5. STEP 7 Hardware Configuration (HW Config) Workflow

  1. Open the S7 project in SIMATIC Manager and double-click Hardware on the master station.
  2. In HW Config, drag the S7-300 rail and place:
    • PS 305 / PS 307 power supply (slot 1)
    • CPU 315-2DP (slot 2) with DP master interface enabled
    • Any additional modules (DI/DO/AI/AO/FM/CP) on slots 4–11
  3. Open the DP master properties on the CPU and set:
    • Address: 2 (default)
    • Operating mode: DP Master
    • Baud rate: 1.5 Mbps (default 12 Mbps for 315-2DP — use the lowest baud common to all nodes if cabling is long)
  4. Right-click the DP master system line, choose Add Master System if not present, and Add Slave. Insert the S7-313C-2DP GSD-equivalent station (drag from catalog or load its GSD from Siemens GSD Library).
  5. Map at least one slot in the slave to a Profibus I/O area, e.g., 16 DI (input bytes 0–1) and 16 DO (output bytes 0–1).
  6. Save and compile (Station > Save and Compile). The consistency check will warn if any module in the configured topology cannot be resolved.
  7. Download to the master CPU (target system > selected CPU).
Tip: Even if the CPU is a 315-2DP acting as master, you must still load the slave configuration into the master's HW Config — the master owns the bus parameter set. The slave's HW Config in turn receives the master assignment via PROFIBUS, not via direct download.

6. Organization Block (OB) Loading Strategy

The S7-300 CPU does not require every fault OB to be loaded. Loading OB85 alone is sufficient to suppress the priority class error, but loading OB82, OB86, and OB122 in addition gives the user program a chance to react and keeps the CPU in RUN while the fault is investigated. Recommended set for DP master/slave startup:

  • OB1 – main cyclic program
  • OB82 – diagnostic interrupt handler (e.g., latch error counters in DB)
  • OB85 – priority class error (required to keep CPU in RUN on PII/PIQ faults)
  • OB86 – rack/DP slave failure handler (raise comms-down flag)
  • OB100 – warm restart (optional but recommended)

Avoid loading all of OB81, OB83, OB84, OB87, OB121, OB122 unless the user program actually services them; an empty OB simply returns and the CPU continues — that is acceptable, but each extra OB enlarges the load image and the work-memory footprint. The S7-300 CPU 31xC and CPU 31x Manual lists the exact OB call priorities and their stack behavior.

7. Step-by-Step Resolution Procedure

  1. Confirm firmware parity. Open the online PLC > Module Information and check that the master (315-2DP or 316-2DP) and slave (313C-2DP) firmware is at the latest released version (typically V2.0.12 for the 313C-2DP family). Update via the SIMATIC S7 FW Update tool if older.
  2. Physically audit the rack. Power down the master station and remove every module that is not part of the running process. In particular, check for CP 341 modules, IM 360/361 interface modules, or any unconfigured DP coupler that is bolted to the rail but not wired into the DP segment.
  3. Reconcile HW Config. Open HW Config and ensure every module present on the physical rail has a corresponding entry on the configured rail. If a CP 341 must remain in the rack (even un-wired), it must be added to HW Config with the correct order number and a valid slot address.
  4. Re-check DP topology. Open the master DP master system > Properties > Bus Parameters and verify:
    • Baud rate matches the slowest slave
    • HSA (Highest Station Address) ≥ every slave's Profibus address
    • Repeater is not creating a topology loop
    • Termination resistors ON at both physical ends of the segment only
  5. Re-load the master and slave projects. In SIMATIC Manager select PLC > Download to each CPU. Use Delete/Reset first if persistent parameter blocks are corrupted.
  6. Cycle power on both stations and observe the diagnostic buffer. The first OB86 call is expected (the slave starts after the master) and should clear within the configured retry window. If STOP persists, capture the latest diagnostic buffer event IDs and compare to the table in §4.
  7. If STOP persists: open STEP 7 > Options > Report System Error (RSE). RSE automatically generates all required OBs, FB 126, DBs, and a WinCC-style alarm view that shows exactly which slave is failing. This is the single fastest way to localize a DP parameter assignment problem.

8. CP 341 Specific Notes

The CP 341 (6ES7341-1AH01-0AE0) is a point-to-point module, not a Profibus node. When placed on the same S7-300 rail as a 315-2DP master, it is invisible to the DP bus itself — but STEP 7 still must see it in HW Config if it is physically present. Three common misconfigurations:

  1. CP 341 physically present, not in HW Config → STOP with parameter assignment error.
  2. CP 341 in HW Config but the wrong MLFB variant (RS232C vs. RS485 vs. 20 mA) → STOP with module-compare error.
  3. CP 341 correctly configured, but the loadable driver is missing for ASCII/3964(R)/RK512 → cyclic OB85 without STOP, but DP comms appear noisy because OB85 keeps firing.

To remove the CP 341 cleanly from a project:

  1. Delete the CP 341 from HW Config rail.
  2. Compile and save (Station > Save and Compile).
  3. Download HW Config to the master CPU.
  4. Physically remove the CP 341 from the rail or leave it (the master will now ignore it).

If the CP 341 must stay in the rack, add it to HW Config with the correct order number; no further wiring change is required as long as the CP 341's serial ports are unused.

9. Wiring and Bus Termination

Profibus DP cable (Siemens 6XV1830-0EH10 violet, or 6XV1830-3EH10 for trailing cable) must be terminated at both physical ends of the segment only. The 9-pin D-sub connector on the CPU and on the DP slave should have the on-board switchable termination (typically a slide switch between pins 6 and 9) engaged only at the end stations. Mid-segment stations must have termination OFF, otherwise reflections cause Station failure OB86 calls and eventually parameter assignment errors during startup when the bus does not respond cleanly to the master's GetCfg request.

Shielding: connect the cable shield to the connector hood using 360° bonding. Route Profibus at least 200 mm from VFD power cables to keep common-mode noise below the DP receiver threshold.

10. Verification and Commissioning Checklist

Check Expected Result How to Verify
Master CPU mode RUN, green RUN LED solid, SF off CPU front panel + Module Information
Slave CPU mode RUN, green RUN LED solid, SF off, BF off CPU front panel + Module Information
Bus fault LEDs (BF) OFF on both stations Visual + Module Information
Diagnostic buffer No STOP events after power cycle Online > Diagnostic Buffer
I/O exchange Inputs update in master DB, outputs toggle from master Monitor in VAT / watch table
Cyclic OB86 None (or single transient during startup) Diagnostic Buffer + RSE viewer
Bus parameters All slaves visible at correct addresses HW Config > DP Master System > Bus Nodes

11. Troubleshooting Matrix

Symptom Likely Cause Fix
Master STOP at startup, "parameter assignment error" Unconfigured module (e.g., CP 341) on the rail Remove module or add to HW Config
Slave SF LED on, master BF LED on Wrong bus terminator, broken cable, slave un-powered Check terminators, cable continuity, slave 24 V
OB85 fires cyclically, no STOP Process image access on a missing I/O area Verify PII/PIQ addresses match HW Config mapping
OB86 fires, slave "comes and goes" Loose connector or EMI Re-seat D-sub, retighten connector screws, check shield
Master STOP with event 0x39C4 Slot mismatch in slave Compare actual slave slot modules with HW Config slave slots
Communication works over MPI but not Profibus DP master not enabled or wrong interface selected In CPU properties, enable DP interface as master, set address and baud
Master STOP after firmware update FW update left partial block; old project not reloaded Reset CPU (MRES), download HW Config + blocks, then restart

12. Preventive Best Practices

  • Always run Report System Error (RSE) in STEP 7 when starting a new DP project. RSE generates the correct OBs, FBs, and DBs and produces a self-diagnosing alarm view for free.
  • Maintain a single canonical HW Config per project. Never edit rack contents on the bench without updating the offline project before download.
  • Use the STEP 7 V5.5 SPx / TIA Portal Consistency Check function before download to catch missing modules early.
  • Label every Profibus connector with the station address and termination state. A label that says "TERM-ON" or "TERM-OFF" saves hours of debugging.
  • Keep a spare CP 341 and CPU 313C-2DP in the cabinet for swap-troubleshooting; both have long lead times and an offline replacement rules out hardware in under 5 minutes.

FAQ

Why does my S7-315-2DP go to STOP with "parameter assignment error" right after RUN/RUN-P?

Almost always a topology mismatch: a module is physically on the rail (commonly a CP 341) but is not in HW Config, or the slave's slot configuration does not match the actual inserted modules. The CPU's preset ≠ actual check at startup forces a STOP. Remove the unconfigured module or add it to HW Config.

Do I need to load OB82, OB85, OB86, OB87, OB121, OB122 to keep the CPU in RUN?

No. The CPU enters STOP because of the parameter assignment error itself, not because OBs are missing. Loading OBs masks peripheral and rack faults and can keep the CPU in RUN for diagnostic purposes, but only a correct configuration prevents the STOP.

Can the 315-2DP and 313C-2DP communicate over MPI instead of Profibus DP?

Yes. Both CPUs have an MPI interface as standard. Configure GD (Global Data) communication or simple PUT/GET S7 communication in NetPro. For deterministic I/O exchange, Profibus DP is preferred; for simple data sharing at slower cycle, MPI is sufficient and easier to debug.

What is the latest recommended firmware for the 313C-2DP and 315-2DP?

For the S7-300 CPU 31x family the latest released firmware is typically V2.0.12 for the 313C-2DP and 315-2DP, and V3.x for the 316-2DP/317-2DP. Always confirm against the live Siemens Product Support page for the exact MLFB before updating.

How can I identify which Profibus slave is causing the OB86 fault?

Open the diagnostic buffer entry for the OB86 call; the event details contain the DP diagnostic address (e.g., 1022) of the failed slave. Cross-reference that with HW Config > Slave > Properties > Profibus Interface > Diagnostic Address. Running Report System Error (RSE) in STEP 7 also displays the failing station in a plain-text alarm view.

Back to blog