Overview
The SIMATIC S7-300 family remains in widespread service across brownfield installations, but integrating these CPUs into TIA Portal V15..V19 introduces several field-specific decisions that newer projects avoid by default. Three decisions dominate a successful integration: (1) whether the CPU is actually present in the TIA Portal hardware catalog, (2) whether the project firmware matches the firmware flashed on the physical module, and (3) whether to validate user logic against PLCSIM or against a physical rack with real I/O. Each decision has downstream consequences for commissioning laptops, point-to-point communication adapters, and online diagnostics.
This article covers the engineer field-notes approach to each decision, with concrete catalog part numbers, firmware-version mapping, port-availability tables, and a troubleshooting matrix for the most common download-time errors encountered with S7-300 CPUs in TIA Portal.
Prerequisites
- TIA Portal V15, V15.1, V16, V17, V18, or V19 installed with the matching SIMATIC S7-300 HSP (Hardware Support Package) for the relevant firmware revisions.
- A SIMATIC S7-300 CPU from the 312, 314, 315, 317, or 319 series, or a compact CPU such as 312C, 313C, 314C, 315C, 315F, or 317F.
- For physical commissioning: a PG/PC with Ethernet (Profinet) or with an MPI/Profibus adapter (PC Adapter USB A2, part number 6GK1571-1AA00, or CP 5711, part number 6GK5711-1EX00).
- For PLCSIM validation: S7-PLCSIM V15..V19 installed and licensed (floating or single).
- STEP 7 V5.5 SP2/SP3 available as a fallback if the device is not in the TIA Portal catalog.
S7-300 Catalog Coverage in TIA Portal
The S7-300 device library in TIA Portal is exhaustive for active catalog numbers but historically lagged STEP 7 V5.5 for retired modules. Confirm catalog presence before selecting a CPU.
| CPU Family | Typical Order Number (MLFB) | Catalog in TIA Portal? | Notes |
|---|---|---|---|
| CPU 312 | 6ES7312-1AE14-0AB0 | Yes (FW ≥ V3.3) | Single-bit operations, basic |
| CPU 314 | 6ES7314-1AG14-0AB0 | Yes (FW ≥ V3.3) | Standard mid-range |
| CPU 315-2 DP | 6ES7315-2AH14-0AB0 | Yes | Profibus DP master/slave |
| CPU 315-2 PN/DP | 6ES7315-2EH14-0AB0 | Yes | Profinet 2-port switch |
| CPU 317-2 PN/DP | 6ES7317-2EK14-0AB0 | Yes | Large program, bit memory |
| CPU 319-3 PN/DP | 6ES7319-3FL00-0AB0 | Yes | High-performance |
| CPU 312C | 6ES7312-5BF04-0AB0 | Yes | Compact with DI/DO |
| CPU 313C | 6ES7313-5BG40-0AB0 | Yes | Compact, AI/AO |
| CPU 314C-2 PN/DP | 6ES7314-6EH04-0AB0 | Yes | Compact + Profinet |
| CPU 315F-2 PN/DP | 6ES7315-2FJ14-0AB0 | Yes (FW ≥ V3.3) | Failsafe |
| CPU 315T-2 DP | 6ES7315-6TH13-0AB0 | Partial (HSP required) | Technology CPU |
| Old 312 IFM / 314 IFM | 6ES7312-1AC00 / 6ES7314-1AC00 | No | Use STEP 7 V5.5 |
If a CPU does not appear in the TIA Portal device catalog, do not attempt to substitute an HSP entry for an unsupported part number; the engineering toolchain will refuse the download. Instead, fall back to STEP 7 V5.5 SP3 or migrate the program source.
Communication Port Availability by Generation
Pre-2010 S7-300 CPUs frequently ship with only MPI or Profibus interfaces and no Ethernet. Confirm the available ports before sourcing a programming cable.
| Generation | X1 (MPI/Profibus) | X2 (DP/PN) | Profinet 2-Port Switch | Programming Adapter Required |
|---|---|---|---|---|
| Pre-2002 (e.g. 312 IFM, 314 IFM) | RS-485 MPI only | None | No | PC Adapter USB A2 or CP 5711 |
| 2002-2008 (CPU 31x-2 DP) | RS-485 MPI/DP combo | Profibus DP master | No | PC Adapter USB A2 or CP 5711 |
| 2008-2012 (CPU 31x-2 PN/DP) | RS-485 MPI/DP combo | Profinet 2-port switch | Yes | Standard Ethernet cable (RJ45) |
| 2012+ (CPU 31x-2 PN/DP, latest) | RS-485 MPI/DP combo | Profinet 2-port switch | Yes | Standard Ethernet cable (RJ45) |
| Compact C-CPUs (312C, 313C, 314C-2 PN/DP) | RS-485 MPI/DP combo | Profinet (PN variants only) | Yes (PN only) | Depends on variant |
PLCSIM vs Physical CPU Trade-Offs
PLCSIM is a faithful reproduction of the S7-300 user-program execution semantics, but it cannot exercise the integrated Profinet/Profibus stacks, the diagnostic buffer of the real CPU, or any hardware-dependent OB (e.g., OB82 on a missing Profinet device, OB121 on a programming error in the real CPU's microcode). Use the matrix below to decide which runtime to validate against.
| Test Target | PLCSIM V15..V19 | Physical S7-300 CPU |
|---|---|---|
| LAD/FBD/SCL logic execution | Equivalent | Equivalent |
| Bit-memory, timers, counters, IEC timers/counters | Equivalent | Equivalent |
| DB/MB/PIW/PAW data consistency | Equivalent | Equivalent |
| Profinet diagnostics (OB82, OB86) | Not triggered | Real behavior |
| Profibus DP slave diagnostics | Not triggered | Real behavior |
| Diagnostic buffer replay | Limited | Full history |
| Force table behavior | Equivalent | Equivalent (with safety lock) |
| Web server (CPU 31x PN/DP) | Limited | Full |
| Fail-safe I/O (F-CPU) | Partial (PLCSIM V18+) | Full |
| Real DI/DO/AI/AO response time | Not modeled | Real |
| Cycle time / OB1 scan | Near-realistic | Real |
Rule of thumb: Use PLCSIM for logic validation, recipe handling, mode/state machine tests, and communication tag exchanges with simulated partners. Use a physical CPU when validating Profinet/Profibus topology, time synchronization, failsafe behavior, or any diagnostic-driven OB.
Firmware Mismatch Resolution Procedure
When the project firmware does not match the firmware flashed on the physical CPU, TIA Portal raises a warning at download time. The warning does not block the download but it does light the CPU's error LED (SF/DIAG). Follow the procedure below to resolve.
- Read the actual firmware on the physical CPU: Online > Accessible devices > select the CPU > Online & diagnostics > Diagnostics > Module information. Note the firmware version string (e.g.
V3.3.12). - In the project tree, right-click the CPU and select Properties > General > Catalog Information. Compare the project firmware (e.g.
V3.3.17) to the live firmware. - If the project firmware is newer, TIA Portal will offer to update the firmware on the CPU as part of the download. Accept the prompt; the CPU will be reflashed and then loaded.
- If the project firmware is older, TIA Portal will offer to downgrade. Decline the downgrade, then change the project firmware: Properties > General > Select firmware version > choose the version matching the physical module.
- If the project firmware is missing from the HSP installed, install the matching HSP from the Siemens Online Software Delivery (OSD) portal and restart TIA Portal.
- After alignment, recompile the project (Ctrl+B) and download. Confirm no firmware warning appears and the SF LED is off after a power cycle.
Download-Time Warnings Reference
The following warnings and errors are the most common when first downloading to a physical S7-300 CPU from TIA Portal.
| Warning/Error Text | Cause | Resolution |
|---|---|---|
| "The firmware version of the project differs from the firmware version of the module." | Project firmware ≠ live firmware | Update project or live firmware per the procedure above |
| "Module does not support all the configured functions." | Project uses F-CPU features on a non-F module | Swap CPU or remove F-blocks |
| "The module is configured as a different type." | Catalog MLFB does not match the physical CPU | Re-detect CPU via Online > Accessible devices > Hardware detection |
| "Online connection could not be established" | Wrong interface selected (Ethernet vs MPI/Profibus) | Set PG/PC interface to match the cable in use |
| "DCP identify failed" or "Node could not be reached" | Profinet name/IP mismatch or cable issue | Assign Profinet device name via Online > Accessible devices > Assign Profinet device name |
| "Password-protected block prevents download" | Know-how-protected block in project | Remove protection or supply the source for recompile |
| SF LED on after successful download | Firmware mismatch stored or OB not loaded | Cycle power, clear diagnostic buffer, reload |
Step-by-Step: First Commissioning of an S7-300 with TIA Portal
- Open TIA Portal and create a new project. Select Add new device > SIMATIC S7-300 > CPU matching the order number in the rack.
- If the CPU is a Profinet variant (PN/DP), configure the Profinet interface: assign IP address, subnet mask, and Profinet device name. The Profinet device name must be assigned to the physical CPU via Online > Accessible devices > Assign Profinet device name before the CPU will respond to Profinet I/O controllers.
- Configure the Profibus DP master interface (if applicable) under Properties > Interface > PROFIBUS address. Default DP address is 2.
- Insert the rack configuration: power supply (PS 307), CPU, and signal modules (SM 321/SM 322/SM 331/SM 332). Slot order must match the physical rack.
- Compile the hardware configuration. Resolve any catalog mismatch warnings.
- Write a minimal user program: OB1 with one input-to-output mapping (e.g.
I 0.0 -> Q 0.0) to validate the download. - Connect the PG to the CPU via the appropriate interface. For Profinet, use a standard RJ45 patch cable directly to the CPU's X2 port. For MPI/Profibus, use a PC Adapter USB A2 (6GK1571-1AA00) at 187.5 kbps or 19.2 kbps depending on the CPU's MPI profile.
- In TIA Portal, set Online > Accessible devices > PG/PC interface to the chosen adapter (e.g.
Intel(R) Ethernet Connection / TCPIPorPC Adapter USB A2 (MPI)). - Download the project (Ctrl+L). Accept any firmware alignment prompts.
- Verify the SF/BA/DC/BF (if Profinet) LEDs: SF off, BA/DC flashing green, BF off. Toggle input I0.0 with a wire link to 24 V and confirm output Q0.0 tracks.
Recommended Compact CPU Choices for New TIA Portal Work
If you are selecting a CPU for a new project on legacy S7-300 hardware, prefer compact CPUs that integrate DI/DO and Profinet to reduce rack size and commissioning time.
| CPU | MLFB | Integrated DI/DO | Integrated AI/AO | Profinet | Work Memory |
|---|---|---|---|---|---|
| CPU 312C | 6ES7312-5BF04-0AB0 | 10 DI / 6 DO | 0 | No (MPI/DP only) | 64 KB code / 64 KB data |
| CPU 313C | 6ES7313-5BG40-0AB0 | 24 DI / 16 DO | 4 AI / 2 AO | No (MPI/DP only) | 128 KB code / 128 KB data |
| CPU 314C-2 PN/DP | 6ES7314-6EH04-0AB0 | 24 DI / 16 DO | 4 AI / 2 AO | Yes (2-port switch) | 192 KB code / 256 KB data |
| CPU 315-2 PN/DP | 6ES7315-2EH14-0AB0 | 0 (rack-based) | 0 | Yes (2-port switch) | 384 KB code / 512 KB data |
Verification Checklist
- Project firmware string matches the live CPU firmware string (read via Online & diagnostics > Module information).
- SF LED off after power cycle.
- BA/DC LED flashing green at the configured scan rate.
- BF LED off (Profinet variants) with at least one Profinet device reachable.
- Diagnostic buffer clear of entries dated after the last download.
- PG/PC interface set to the correct adapter in Online > Accessible devices.
- Profinet device name assigned to all Profinet devices (CPUs, ET200S, ET200SP, etc.).
- PLCSIM and physical CPU run the same OB1 logic and produce identical DB content for the same input vectors.
Troubleshooting Matrix
| Symptom | Likely Cause | First Diagnostic Step | Fix |
|---|---|---|---|
| CPU not found in Accessible devices | Wrong PG/PC interface | Open Set PG/PC interface; verify the active adapter | Select the correct TCPIP or PC Adapter entry |
| CPU found but download hangs at 0% | Wrong Profinet name on CPU | Right-click accessible CPU > Assign Profinet device name | Assign the name configured in the project |
| SF LED stays on after download | Firmware mismatch or missing OB | Read diagnostic buffer | Align firmware or reload all OBs |
| BF LED flashing on Profinet CPU | Profinet cable fault or device offline | Check link LEDs on X2 ports | Replace cable or bring device online |
| BF LED on Profibus CPU | Profibus terminator missing or slave address wrong | Check DP plug termination resistor | Enable termination on the end nodes; correct slave address |
| Cannot connect via MPI on old CPU | No MPI adapter installed on PG | Verify Windows Device Manager for PC Adapter driver | Install PC Adapter USB A2 driver from Siemens Industry Online Support |
| PLCSIM works but physical CPU does not | Profinet/Profibus diagnostic OBs not loaded | Check OB82, OB86, OB122 are present in the project | Add the missing OBs and reload |
| Download blocked with "password protected" | Know-how-protected blocks in project | Open the protected block, supply the source | Recompile from source or remove the block |
Field Notes
The S7-300 firmware lifecycle is mature: V3.3.x is the dominant current production firmware. Project firmware and live firmware can drift apart after an in-place firmware update performed in the field with a SIMATIC memory card. Always perform an Online > Upload from device (software) archive before any bulk firmware operation.
For programming-port decisions, prefer CPUs with Profinet 2-port switches because they allow direct connection from any standard PG with an RJ45 jack and avoid the legacy MPI/Profibus adapter tooling. Reserve MPI/Profibus for legacy CPUs and for projects that must integrate with existing Profibus DP networks.
For program-validation scope, treat PLCSIM as a logic-only test bed. Profinet/Profibus diagnostics, failsafe behavior, and OB82/OB86/OB122 firing depend on the real CPU and the real I/O. A green PLCSIM run is necessary but not sufficient for a release sign-off.
For catalog coverage, the S7-300 library in TIA Portal V18/V19 is complete for all active MLFBs; for retired IFM-era modules (e.g. 312 IFM, 314 IFM), keep STEP 7 V5.5 SP3 installed as a fallback editor.
FAQ
Will TIA Portal refuse to download if the firmware version differs between project and physical CPU?
No. TIA Portal raises a warning at download time and asks whether to align the firmware. Accept the prompt to update or downgrade; the download then proceeds. The SF LED will remain on until the firmware finishes aligning on the CPU, after which a power cycle clears it.
Can I use PLCSIM to validate Profinet or Profibus diagnostics on an S7-300?
No. PLCSIM reproduces OB1, OB10..OB17, OB35..OB38, and the IEC timer/counter runtime, but it does not trigger OB82 (I/O fault), OB86 (rack/station failure), or Profibus DP slave diagnostics. Run those tests against a physical CPU with real I/O.
My S7-300 CPU has only an MPI port. What do I need to connect a modern laptop?
Use a Siemens PC Adapter USB A2 (6GK1571-1AA00) or CP 5711 (6GK5711-1EX00). The driver is bundled in TIA Portal. Set the PG/PC interface to PC Adapter USB A2 (MPI) with the transmission rate matching the CPU's MPI profile (typically 187.5 kbps for S7-300).
Does an S7-300 project run unchanged if I move from PLCSIM to a physical CPU?
Yes, provided the hardware configuration (rack layout, module order, I/O addresses) matches the physical CPU and the I/O modules. Differences appear only when Profinet/Profibus topology, failsafe logic, or diagnostic-driven OBs are involved; those must be tested on the real CPU.
Which compact S7-300 CPU is recommended for a new TIA Portal project with integrated I/O and Profinet?
The CPU 314C-2 PN/DP (6ES7314-6EH04-0AB0) combines 24 DI / 16 DO, 4 AI / 2 AO, and a Profinet 2-port switch in a single module. It eliminates the need for a CP module and supports direct RJ45 connection from any standard PG running TIA Portal V15 or later.