Overview: S7-300 Ethernet Communication Path
The SIMATIC S7-300 family uses the integrated PROFINET interface of the CPU (e.g., CPU 315-2 PN/DP, CPU 317-2 PN/DP, CPU 319-3 PN/DP) or a separate CP 343-1 communications processor for TCP/IP-based engineering access. The engineering station (PG/PC) running STEP 7 V5.x or TIA Portal joins the same IPv4 subnet as the CPU and uses the PG/PC Interface assignment to route the S7 protocol over the PC's NIC.
Unlike PROFIBUS (MPI/DP) where the PG address is bound to the PROFIBUS node and must be unique, Ethernet communication is governed by two simple rules: the PG/PC and the S7-300 CPU must share the same subnet mask, and no two nodes may carry the same IPv4 address. When either rule is violated, STEP 7 raises a connection error and the Accessible Nodes view returns an empty list.
Note: The PROFINET interface on the S7-300 is backward-compatible with standard TCP/IP. STEP 7 still calls the assignment "Ethernet" or "TCP/IP" in older projects even though the physical port is PROFINET (X1, RJ45, 100 Mbit/s full duplex).
Prerequisites
- STEP 7 V5.5 + SP2 or higher, or TIA Portal V13+ with the S7-300 HSP (Hardware Support Package).
- Original STEP 7 project (or a project that contains the offline hardware configuration of the target CPU). Without the project, only "Accessible Nodes" works and online editing is limited.
- Known IPv4 address and subnet mask of the CPU's PROFINET/CP interface, read either from the project (HW Config → Properties → Ethernet) or from a previous project archive.
- RJ45 patch cable (straight-through for switch, crossover for direct PG↔CPU; most modern NICs auto-MDI/MDIX so a single straight cable is sufficient).
- Administrator rights on the engineering station to modify the TCP/IP stack and to set the PG/PC interface.
- Windows firewall rule allowing S7ONLINE (TCP/102) and ISO-on-TCP (TCP/102 + TCP/TCP/UDP) outbound traffic.
PG/PC Interface Configuration in SIMATIC Manager
The Set PG/PC Interface tool binds STEP 7 to a specific Windows access point. The two relevant access points for Ethernet work are S7ONLINE (STEP 7) → TCP/IP and (for older SIMATIC NET installations) S7ONLINE → ISO Ind. Ethernet.
- Close SIMATIC Manager.
- Open the Windows Start menu and launch Set PG/PC Interface (Start → SIMATIC → STEP 7 → Set PG/PC Interface).
- In the Interface Parameter Assignment Used list, expand S7ONLINE (STEP 7).
- Select the entry that matches the NIC you will use, e.g.
TCP/IP → <your NIC>.TCPIP.1. - Click OK. The system stores the assignment in the registry under
HKLM\SOFTWARE\Siemens\AUTSW\S7ONLINE\Interfaces.
Assigning the Engineering Station IP Address
The IPv4 parameters of the PC NIC must be in the same subnet as the CPU. Siemens' default plant network convention (also visible in the example IP from the field case: 10.10.0.x) is to use one Class-A private range across the plant and to reserve a fixed address for every device.
| Node | IPv4 Address | Subnet Mask | Default Gateway | Notes |
|---|---|---|---|---|
| S7-300 CPU 315-2 PN/DP | 10.10.0.10 | 255.255.255.0 | 10.10.0.1 | PROFINET X1, configured in HW Config |
| Engineering PG/PC | 10.10.0.50 | 255.255.255.0 | 10.10.0.1 | Must differ from CPU by last octet only |
| HMI Panel (TP/OP) | 10.10.0.20 | 255.255.255.0 | 10.10.0.1 | Same subnet, unique IP |
| SCADA / WinCC station | 10.10.0.30 | 255.255.255.0 | 10.10.0.1 | Same subnet, unique IP |
To assign the IP under Windows:
- Control Panel → Network and Sharing Center → Change adapter settings.
- Right-click the NIC → Properties → Internet Protocol Version 4 (TCP/IPv4) → Properties.
- Select Use the following IP address.
- Enter IP, mask, and gateway from the table above.
- Click OK on both dialogs.
Verify the assignment with a command prompt:
ipconfig /all
ping 10.10.0.10
A successful ping (4/4 replies, <1 ms on a direct link) confirms Layer 3 reachability. If ping fails, the issue is physical or lower-layer, not STEP 7.
Bringing the CPU Online
- Open the project in SIMATIC Manager.
- Right-click the S7-300 station → Open HW Config.
- From the menu PLC → Ethernet → Edit Ethernet Node or the toolbar button Ethernet Node. STEP 7 broadcasts a DCP Identify request on the configured NIC. The CPU returns its MAC, IP, and PROFINET device name.
- If the node is not listed, click Browse on a directly connected CPU by typing the IP address into the Node address field and pressing Enter. The CPU replies through its PROFINET interface.
- Click OK to confirm, then close the dialog. HW Config now resolves the partner.
- From the menu PLC → Download to Target Device (or Ctrl+L) to download hardware configuration. Alternatively, PLC → Online → Go Online opens the online view without modifying the CPU.
Resolving the "Set Local Node Address Is Already in Use" Error
The error message Online: the set local node address is already in use occurs when STEP 7 tries to bind the S7-Online protocol stack to an IP address that another process on the PC is already using. This is the most common Ethernet access error and is independent of the CPU's IP: it is reported by the local TCP/IP stack.
| Cause | Diagnostic | Remedy |
|---|---|---|
| PG/PC IP duplicates another live host |
arp -a shows two entries for the same IP, or another device replies to ping of your own IP |
Reassign the PC to an unused address in the same subnet |
| Two STEP 7 instances open simultaneously | Task Manager shows multiple S7WEBSVC.EXE or SIMATIC Manager.exe
|
Close all but one instance; restart the S7-Online service |
| Old S7DOS / S7ONLINE service from a previous installation bound to the IP | Netstat: netstat -ano | findstr :102 shows an unexpected PID |
Restart the SIMATIC S7DOS Help Service or reboot the PC |
| Hyper-V, VirtualBox, or VPN virtual NICs in bridging mode |
ipconfig /all shows virtual adapters with overlapping IP |
Disable bridging, set the virtual adapter to a different subnet, or bind S7ONLINE to the physical NIC only |
| PG/PC interface points to wrong NIC | Set PG/PC Interface lists two TCP/IP entries | Select the entry that matches the physical NIC connected to the CPU |
- Open Set PG/PC Interface and select S7ONLINE (STEP 7) → TCP/IP → <correct NIC>.
- Close SIMATIC Manager completely.
- Open a command prompt as Administrator and run:
net stop s7onlinesvc & net start s7onlinesvc(or simply reboot the PG). - Verify with
netstat -ano | findstr :102that no stale process is bound. - Restart STEP 7 and try Accessible Nodes again.
Accessible Nodes vs. Project-Online
STEP 7 supports two distinct online paths:
| Mode | Menu Path | Requires Offline Project? | Capability |
|---|---|---|---|
| Accessible Nodes | PLC → Ethernet → Edit Ethernet Node or PLC → Show Accessible Nodes | No | Read diagnostic buffer, set IP, perform firmware update, view online status of modules |
| Project-Online | Open the project, then PLC → Online → Go Online | Yes | Download blocks, online program editing, compare offline/online, archive the project |
When a new project is created for an unknown CPU, use Accessible Nodes first to identify the device, then Upload Station to PG (PLC → Upload Station to PG) to build a matching offline project.
Loading and Verifying the Program
- Confirm Accessible Nodes shows the CPU's IP and a green status icon.
- From the project, right-click the S7 program → Download. The S7-300 transfers OB, FB, FC, DB, SDB, and SFC blocks to the CPU's load memory.
- Open the online view: PLC → Online → Go Online. STEP 7 displays RUN, STOP, or HOLD in the status bar.
- Switch the CPU to RUN-P from PLC → Operating Mode to start the user program. RUN-P allows both program execution and online editing; RUN blocks online write attempts.
- Open a block in online view, right-click → Monitor/Modify to view tags live.
- Use PLC → Diagnostic → Diagnostic Buffer to confirm no startup faults are present (typical error IDs: SF LED on → SF in the diagnostic buffer with event ID 0x0001 through 0x00FF).
Common S7-300 Ethernet Fault Codes and Indicators
| CPU LED / Symptom | Meaning | Action |
|---|---|---|
| SF (red) on, BF (bus fault) on PN interface | No physical link or duplicate IP on subnet | Check cable, check IP uniqueness with arp -a, reboot CPU |
| BF flashing, SF off | PROFINET device name mismatch | Assign PROFINET name from HW Config or via Topology Editor |
| SF on, BF off | User program fault (OB not loaded, arithmetic error) | Read diagnostic buffer, download all OBs (especially OB1, OB82, OB100) |
| CPU in STOP, MRES not responding | Memory reset required | Turn key to MRES for 3 s, release, repeat once. Reload project. |
| Online error: "The set local node address is already in use" | Local IP conflict or stale S7DOS service | See the previous section |
| Online error: "Connection to partner broken" | TCP keepalive timeout, CPU in STOP, or firewall dropped TCP/102 | Allow TCP/102 in Windows Firewall, set CPU to RUN-P, check switch port |
Switch and Network Considerations
For a single PG↔CPU link, a direct cable is sufficient. Once a switch is introduced, observe these constraints:
- Use a managed switch with PROFINET QoS (DSCP priority 6 for PROFINET RT frames) when real-time I/O shares the network with engineering traffic.
- Disable Energy Efficient Ethernet (EEE, IEEE 802.3az) on the switch port. S7-300 PROFINET interfaces do not negotiate EEE and the link may drop intermittently.
- Set the switch port to 100 Mbit/s full duplex, auto-negotiation off, if you observe CRC errors on the CPU's port statistics (PN X1 diagnostics → Port statistics).
- Avoid daisy-chaining PROFINET devices with office-grade switches that drop broadcast storms. PROFINET uses LLDP for topology; unmanaged switches do not propagate LLDP correctly and may break device replacement without re-assignment.
Migration Path: STEP 7 V5.x to TIA Portal
Existing S7-300 Ethernet projects can be migrated to TIA Portal V16+ via Project → Migrate project. The PROFINET interface IP, subnet, and device name migrate unchanged. The PG/PC interface in TIA Portal is bound per project under Online → Accessible devices and is no longer global. After migration, perform an Upload device to PG as a verification step and compare block checksums against the legacy archive.
Verification Checklist
-
ipconfig /allshows the PG IP and the correct subnet mask. -
ping <CPU IP>returns <1 ms with 0% loss on a direct link. - STEP 7 Set PG/PC Interface shows S7ONLINE (STEP 7) → TCP/IP → <NIC>.
- SIMATIC Manager Accessible Nodes lists the CPU with the correct IP and module order.
- Project online view shows the CPU in RUN or RUN-P after download.
- Diagnostic buffer contains no entries with ID 0x2520 (IP duplicate) or 0x2530 (PROFINET name missing).
- User program executes: a forced output or a tag monitor confirms scan cycle progress.
FAQ
Why does STEP 7 report "the set local node address is already in use" even when the CPU is in STOP?
The error refers to the engineering PC's own IP, not the CPU. The S7-Online stack fails to bind to an IPv4 address already held by another local process. Reassign the PC NIC to a free address in the CPU's subnet (e.g., 10.10.0.50 / 255.255.255.0 if the CPU is 10.10.0.10) and restart the S7DOS service or reboot the PG.
What is the difference between "Accessible Nodes" and "Go Online" in STEP 7?
Accessible Nodes uses a DCP broadcast on the PG/PC interface to discover any S7 station on the wire; it works without an offline project. Go Online requires the offline project that matches the target CPU (same order number, same IP) and unlocks project-bound functions such as block download, online compare, and online program editing.
Do I need to change the PG/PC interface for MPI, PROFIBUS, and Ethernet separately?
Yes. The PG/PC interface is bound to a physical adapter and a protocol. Select PC Adapter (MPI) or PC Adapter (PROFIBUS) for legacy networks and TCP/IP → <NIC> for Ethernet. Switching mid-session is not supported; close SIMATIC Manager before changing.
Can a single NIC serve both the PROFINET device network and the engineering network?
Yes, when the CPU's PROFINET interface and the PG/PC share the same subnet. The PC and CPU act as TCP peers; PROFINET RT and S7 engineering traffic coexist on the same cable. For large I/O plants, isolate PROFINET RT on a managed switch with QoS to protect the engineering channel from broadcast storms.
Does "Download to Target Device" change the CPU's IP address?
If the offline hardware configuration carries a different IP than the live CPU, STEP 7 overwrites the live IP during download and the connection drops. Either edit the offline IP to match the live CPU, or use Upload Station to PG first to read the as-built configuration and avoid losing access.