CP 343-1 Blocks Folder: S7-300 Communication Configuration Guide
The CP 343-1 is a Siemens SIMATIC S7-300 communication processor that handles industrial Ethernet and PROFINET traffic, offloading the CPU from communication tasks. A frequent point of confusion in STEP 7 (SIMATIC Manager) is the Blocks container that appears under the CP object in the S7 program tree. This folder is not a programming workspace; it is a parameterization area managed by the CP firmware and STEP 7. Communication logic is implemented elsewhere, using the SIMATIC NET library and STEP 7 programming editors.
1. CP 343-1 Product Family and Catalog Numbers
Siemens has shipped several CP 343-1 variants over the lifecycle of the S7-300 platform. The catalog (order) numbers relevant to field engineers selecting or replacing a module are listed below.
| Catalog Number | Designation | Protocol Support | Notes |
|---|---|---|---|
| 6GK7 343-1EX30-0XE0 | CP 343-1 | PROFINET IO Controller/Device, TCP, ISO-on-TCP, UDP, S7, PG/OP, HTTP | Standard Ethernet CP, 2-port switch |
| 6GK7 343-1CX00-0XE0 | CP 343-1 LEAN | TCP, ISO-on-TCP, UDP, S7, PG/OP | Cost-reduced, no PROFINET IO controller |
| 6GK7 343-1GX30-0XE0 | CP 343-1 Advanced | PROFINET IO Controller, S7, IT functions (HTTP, FTP, E-mail), security | Includes firewall, IT integration |
| 6GK7 343-1EX21-0XE0 | CP 343-1 (legacy) | PROFINET CBA, TCP, ISO-on-TCP, S7 | Discontinued predecessor to EX30 |
| 6GK7 343-1BA00-0XE0 | CP 343-1 IT | IT protocols, FTP, HTTP, e-mail | Legacy IT-capable variant |
2. The Blocks Folder: What It Is and What It Is Not
When an S7-300 station containing a CP 343-1 is opened in STEP 7 (SIMATIC Manager), the project tree shows the CP object as a sibling to the CPU. Under that CP object, a Blocks container appears. The Blocks folder on the CP contains system blocks and parameterization data blocks generated and managed by the CP firmware, not user-written code.
2.1 What the CP Blocks folder contains
- System data blocks (SDB) generated by HW Config and NetPro that describe the connection table, IP parameters, port assignments, and protocol configuration of the CP.
- System functions (SFB/SFC) for diagnostics automatically loaded by the CP firmware image.
- Parameterization blocks (DBs) that store CP-specific parameters such as keep-alive time, PROFINET device name, port MAC addresses, NTP settings, and web-server passwords.
2.2 What the CP Blocks folder is NOT used for
- It is not a place to write user logic (no STL/LAD/FBD blocks belong there).
- It is not a substitute for the CPU's Blocks folder. The user program, FBs, FCs, DBs, OBs, and the SIMATIC NET communication blocks all reside in the S7-300 CPU's
S7 Program > Blockscontainer. - It does not require manual block programming. The blocks are created, updated, and downloaded to the CP by the STEP 7 configuration tools (HW Config and NetPro).
3. Configuration Workflow Overview
Setting up a CP 343-1 follows a three-stage process. Skipping any stage leaves the CP either unparameterized or unable to use its connections.
- Hardware configuration (HW Config): Insert the CP into the S7-300 rack, assign an IP address, subnet mask, and PROFINET device name, and configure the Ethernet port properties (MAC, link mode, port enable/disable).
- Network configuration (NetPro): Define connections (S7, TCP, ISO-on-TCP, UDP) to partners. NetPro compiles the connection data into SDBs.
- User program (STEP 7 programming editor): Call the SIMATIC NET library FBs/FCs (TCON, TSEND, TRCV, PUT, GET, BSEND, BRCV, etc.) from the CPU program to use the connections configured in NetPro.
4. Stage 1: Hardware Configuration in HW Config
Open the SIMATIC 300 Station in HW Config and drag the CP 343-1 from the hardware catalog onto an available slot in the S7-300 rack. Double-click the CP to open its properties dialog.
4.1 IP Address and PROFINET Device Name
The Ethernet interface properties dialog exposes the following fields:
| Parameter | Typical Value | Description |
|---|---|---|
| IP Address | e.g. 192.168.0.10 | IPv4 address of the CP on the PROFINET segment |
| Subnet Mask | 255.255.255.0 | Subnet mask of the IP segment |
| Router Address | 192.168.0.1 | Default gateway, required for off-subnet routing |
| PROFINET Device Name | cp343-1-station1 | Required for PROFINET IO device mode and DNS-like resolution |
| MAC Address | 08-00-06-xx-xx-xx | Factory-assigned; visible on module label |
4.2 Port Configuration
Each physical port (P1, P2 on two-port variants) can be configured for autonegotiation, fixed 10 Mbps / 100 Mbps / 1 Gbps, full- or half-duplex, and port enable/disable. PROFINET IO real-time traffic requires autonegotiation with 100 Mbps full-duplex as the deployed rate.
4.3 CP-Specific Parameters
The CP properties dialog also contains CP-specific tabs:
- Options > Time-of-Day Synchronization: Configure NTP servers, synchronization interval, and the CP as slave or master for plant-wide clock distribution.
- Options > Security (Advanced variant only): Firewall rules, VPN, port-filter rules.
- Options > Web Server: Enable/disable the integrated web server, set the read-write password.
- Options > PROFINET: Device replacement without programming device, topology editor configuration.
After saving the HW Config, the configuration data is compiled into SDBs that appear in the CP's Blocks folder. The SDBs are downloaded to the CP by selecting the CP in the project tree and choosing PLC > Download to Module > CP 343-1, or by selecting the entire station.
5. Stage 2: Connection Configuration in NetPro
NetPro is the central editor for S7 connection, TCP, ISO-on-TCP, and UDP connections. The flow is identical regardless of the protocol family: select the CP 343-1, right-click, choose Insert New Connection, and select the partner and connection type.
5.1 Connection Types Available on CP 343-1
| Connection Type | Direction | Max Number | |
|---|---|---|---|
| S7 connection | Bidirectional, configured | Up to 16 (EX30) / 8 (LEAN) | S7 CPU-to-CPU data exchange (PUT/GET, BSEND/BRCV, USEND/URCV) |
| TCP connection | Bidirectional, configured | Up to 16 | Open TCP socket communication to PC/3rd-party devices |
| ISO-on-TCP connection | Bidirectional, configured | Up to 16 | RFC1006 wrapped TCP, used for legacy S7 and PC SAPI-S7 links |
| UDP connection | Bidirectional, configured | Up to 16 | Connectionless datagram, broadcasting/multicasting, low overhead |
| PROFINET IO controller | Master role | Up to 32/64/128 devices (variant dependent) | Distributed I/O over PROFINET |
5.2 Connection ID and Local ID
Every connection created in NetPro is assigned a unique Local ID (also called connection ID). This 16-bit word is the critical handle the user program uses to reference a specific connection when calling FBs like TCON, TSEND, TRCV, PUT, and GET. The Local ID is the first input parameter of nearly every SIMATIC NET FB and must be passed from the user program to the CP firmware at runtime.
Document the Local IDs in a project spreadsheet. Losing the link between a NetPro connection and its Local ID is a common commissioning failure mode, especially when many connections are created and the IDs are not tracked.
5.3 Connection Properties and TSAP / Port Assignment
For S7 connections, NetPro exposes the TSAP (Transport Service Access Point) on both the local CP and the partner. The TSAP for CP 343-1 has the format 03.xx where xx is the slot of the CP, or a user-assigned value from the Properties > S7 Connection tab. For ISO-on-TCP, the TSAP is configurable to any 1-16 byte ASCII or hex string. For TCP and UDP, the partner port number is configurable (102 for ISO-on-TCP, 2000/2001 for S7, or user-defined).
6. Stage 3: Programming with the SIMATIC NET Library
Communication logic in the CPU is written using FBs and FCs from the SIMATIC NET library. These blocks are not in the CP's Blocks folder; they are copied into the CPU's program and called from the user logic. The library is shipped with STEP 7 and is located under Libraries > SIMATIC_NET_CP in the SIMATIC Manager.
6.1 S7 Communication (CPU-to-CPU)
For S7 connections to another S7 CPU, the following blocks are used:
| Block | Function | Direction |
|---|---|---|
| FB 14 (GET) | Read variable area from partner CPU | Local → Partner read |
| FB 15 (PUT) | Write variable area to partner CPU | Local → Partner write |
| FB 12 (BSEND) | Block-oriented send, segmented, up to 32 KB | Send to partner |
| FB 13 (BRCV) | Block-oriented receive, paired with BSEND | Receive from partner |
| FB 8 (USEND) | Unacknowledged send (fast, no reply) | Send to partner |
| FB 9 (URCV) | Unacknowledged receive | Receive from partner |
The SIMATIC_NET_CP library also includes the legacy FC 5 (AG_SEND) and FC 6 (AG_RECV) for older projects; these are retained for compatibility but should not be used in new code with CP 343-1 EX30 and later variants.
6.2 Open Communication (TCP / ISO-on-TCP / UDP)
For open Ethernet protocols, the T-block family is the standard. These are universal, structured FBs that work with any S7-300/400 CP that supports open communication.
| Block | Function | Protocols |
|---|---|---|
| FB 65 (TCON) | Establish/parameterize a connection at runtime | TCP, ISO-on-TCP, UDP |
| FB 66 (TDISCON) | Terminate a connection established with TCON | TCP, ISO-on-TCP, UDP |
| FB 67 (TSEND) | Send data over established connection | TCP, ISO-on-TCP |
| FB 68 (TRCV) | Receive data over established connection | TCP, ISO-on-TCP |
| FB 67 (TUSEND) | Send UDP datagram (legacy naming) | UDP |
| FB 68 (TURCV) | Receive UDP datagram (legacy naming) | UDP |
The TCON block must be called once at startup (or on-demand) to parameterize the connection. The parameter CONNECT of TCON is a UDT (UDT 65 for TCP, UDT 66 for ISO-on-TCP, UDT 67 for UDP) describing the local and remote endpoints. The TCON block writes the runtime connection parameters into the CP, which uses the configured connection from NetPro as the template.
6.3 Sample: TSEND Call in Structured Text
The following is a typical call to FB 67 (TSEND) to transmit 100 bytes of data over a TCP connection with Local ID 1.
// Instance DB for FB 67 (TSEND)
// Tag definitions
iTSEND_DB : FB 67; // Multi-instance or dedicated instance DB
iTSEND_REQ : BOOL; // Trigger to start send
iTSEND_BUSY : BOOL; // Operation in progress
iTSEND_DONE : BOOL; // Send complete
iTSEND_ERROR : BOOL; // Error flag
iTSEND_STATUS: WORD; // Status / error code
iTSEND_LEN : INT := 100;
// Call
iTSEND_DB.REQ := iTSEND_REQ;
iTSEND_DB.ID := 1; // Local ID from NetPro
iTSEND_DB.LEN := iTSEND_LEN; // Send length in bytes
iTSEND_DB.DATA := P#DB100.DBX0.0 BYTE 100; // Pointer to source data
iTSEND_DB.DONE := iTSEND_DONE;
iTSEND_DB.BUSY := iTSEND_BUSY;
iTSEND_DB.ERROR := iTSEND_ERROR;
iTSEND_DB.STATUS := iTSEND_STATUS;
CALL FB 67, iTSEND_DB;
Triggers and edges must be managed by the user. The same pattern applies to TRCV, PUT, GET, and BSEND/BRCV. Always monitor STATUS on every call; CP-side errors surface here as detailed error codes (see Section 10).
7. Block Architecture in the CPU's Blocks Folder
After copying the SIMATIC NET FBs and FCs into the CPU, the S7 program tree should look like the following. The CP object's Blocks folder remains untouched for user code.
S7-300 Station
└─ S7 Program(1)
└─ Blocks <-- CPU blocks folder
├─ OB 1 (main user program)
├─ FB 67 (TSEND, instance DB 100)
├─ FB 68 (TRCV, instance DB 101)
├─ FB 15 (PUT, instance DB 102)
├─ FB 14 (GET, instance DB 103)
├─ FC 100 (alarm/edge evaluation)
├─ DB 50 (send/receive data buffer)
├─ DB 60 (TCON parameter UDT 65 instance)
├─ DB 70 (TCON parameter UDT 66 instance)
├─ System Data (SDBs compiled by HW Config/NetPro)
└─ CP 343-1
├─ ...
└─ Blocks <-- CP blocks folder, populated by configuration tools
├─ System Data (connection SDBs, parameter SDBs)
├─ SFBs / SFCs (diagnostics only)
8. Protocol Selection Guide
Selecting the correct protocol is the most consequential design decision for a CP 343-1 link. The following guidance reduces the chance of an unsuitable protocol being selected and reworked later.
| Scenario | Recommended Protocol | Blocks | Justification |
|---|---|---|---|
| S7-300 to S7-300/400/1500 cyclic data | S7 connection | PUT/GET, BSEND/BRCV | Native Siemens, automatic partner handling, highest throughput |
| S7-300 to PC application (SCADA/MES) | TCP or ISO-on-TCP | TCON, TSEND, TRCV | Industry-standard, SAPI-S7 library on PC side |
| S7-300 to 3rd-party PLC with Modbus TCP | TCP (with Modbus FB in user code) | TCON, TSEND, TRCV | Modbus TCP is a TCP application; S7 cannot speak Modbus natively |
| Broadcast/multicast status distribution | UDP | TUSEND, TURCV | Connectionless, no retransmit overhead |
| Distributed I/O over Ethernet | PROFINET IO | None (handled by PROFINET stack) | Real-time deterministic I/O |
| Legacy systems with CP 343-1 IT | FTP / HTTP / E-mail | FCs in CP 343-1 IT firmware | IT integration on Advanced/IT variants |
9. Sample Programs: SIMATIC NET Quick Start Collection
Siemens published a SIMATIC NET Quick Start Collection that contains complete, ready-to-compile STEP 7 projects for the most common CP 343-1 use cases. The collection covers:
- S7 connection PUT/GET between two S7-300 stations
- ISO-on-TCP link to a PC SAPI-S7 application
- TCP send/receive with a Windows Winsock example
- UDP broadcast send/receive
- PROFINET IO controller configuration with a SIMATIC ET200S as device
- SNMP polling from a PC to the CP 343-1
The collection was historically distributed on the Applications & Tools portal of Siemens Industry Online Support and bundled as the Auflösung der SIMATIC NET Quick Start Collection in German. The English-language version is available under the SIMATIC NET application examples portal. Each example ships as a STEP 7 project archive with detailed PDF documentation covering HW Config settings, NetPro connection parameters, and a complete program listing with comments.
When commissioning a new CP 343-1 link, locate the matching sample in the collection before writing code from scratch. The samples use the official SIMATIC NET library version that matches the firmware of the CP, eliminating version-mismatch errors that are common in custom implementations.
10. Diagnostics: Status Codes and Error Handling
The STATUS word returned by SIMATIC NET FBs encodes the CP-side error state. The codes are standardized; the most frequently encountered values are listed below.
| STATUS (hex) | Meaning | Remediation |
|---|---|---|
| 0000 | Job completed without error | None |
| 7000 | FB not yet called / idle | Initial state on cold start |
| 7001 | FB active (BUSY = 1) | Wait for DONE or ERROR |
| 7002 | FB active, intermediate call | Continue calling FB |
| 8085 | RECV length > LEN input or invalid pointer | Verify LEN and DATA pointer |
| 80A1 | Connection not established (TCON not called or failed) | Call TCON first; verify Local ID matches NetPro |
| 80A3 | Connection being terminated | Wait for TDISCON to complete |
| 80A7 | TCP/UDP port already in use | Change port; check for duplicate connections |
| 80B1 | Data length error, exceeds max user data | Reduce LEN to CP-specific max (typically 8192 bytes) |
| 80B4 | Connection not configured (Local ID not in NetPro) | Recompile NetPro; check Local ID |
| 80C3 | Resources exhausted on CP (too many parallel jobs) | Serialize sends; reduce concurrent calls |
| 80C4 | Internal CP error | Power cycle CP; check firmware version |
For a complete list of status codes and their extended meaning, refer to the CP 343-1 manual and the SIMATIC NET function block documentation. The online help in STEP 7 also displays the description of any STATUS value returned in a VAT (variable table) when the FBs are monitored online.
11. Commissioning and Verification Procedure
- Compile HW Config and confirm no errors in the message window.
- Compile NetPro and confirm that the connection list reports all expected connections and that the Local IDs are unique.
- Download HW Config to the S7-300 station. This loads the SDBs to both the CPU and the CP.
- Verify CP online: Open the CP in STEP 7 with PLC > CP 343-1 > Online and check the diagnostics buffer. The CP should report its IP address, the active connections, and any link errors. The LINK LED on the CP confirms the physical Ethernet connection; the RX/TX LEDs confirm traffic.
- Test the connection from the CPU side using a VAT. Call PUT/GET or TCON/TSEND with a simple test request and monitor DONE, BUSY, ERROR, and STATUS.
- Test from the partner side: From a PC, use a SAPI-S7 tool, a TCP terminal, or a Modbus test client (if applicable) to verify the partner sees the connection and exchange test data.
- Enable diagnostic blocks in the user program. SFB 52 (RDREC) and SFB 53 (WRREC) read and write PROFINET records, including diagnostic data. SFC 51 (RDSYSST) reads system state lists including connection status.
- Save the final project to the Memory Card of the CPU so the configuration persists across power loss.
12. Common Configuration Errors and Resolutions
| Symptom | Likely Cause | Resolution |
|---|---|---|
| SF (group error) LED on CP is lit | Configuration inconsistent or partner unreachable | Read CP diagnostic buffer online |
| STATUS = 80A1 on first PUT/GET | S7 connection not downloaded or wrong Local ID | Recompile NetPro, redownload to CP, verify Local ID |
| STATUS = 80B4 on TCON | Local ID for TCON does not exist in connection table | Verify NetPro connection with that ID exists, recompile |
| PROFINET IO device not coming up | Device name mismatch or topology not configured | Use PRONETA or Topology Editor; reassign PROFINET name |
| TCP link to PC works for small frames, fails on large | Maximum user data length of CP exceeded | Chunk the send to ≤ 8192 bytes per call |
| BSEND/BRCV hangs indefinitely | BSEND called twice without intermediate BRCV | Serialize: only one BSEND outstanding at a time |
| Web server of CP 343-1 Advanced not accessible | Web server disabled in HW Config | Enable in CP properties > Web server, set password |
| Connection drops after a few minutes | Keep-alive timeout too short; switch or firewall resets idle TCP | Increase keep-alive time in CP properties > Options |
13. Firmware Considerations
The CP 343-1 has undergone multiple firmware revisions since its introduction. Newer firmware versions add PROFINET conformance classes, security features, and additional simultaneous connection counts. Always confirm that the firmware version loaded on the CP matches the version expected by the STEP 7 project; STEP 7 will refuse to download a project with newer features to an older firmware CP.
Firmware can be updated via the SIMATIC S7 firmware update tool, distributed as a free download from Siemens Industry Online Support. The process involves selecting the CP in HW Config online, choosing PLC > Update Firmware, and selecting the appropriate UFW file. The CP is automatically restarted after a successful update, which interrupts live communication. Plan firmware updates during a maintenance window.
14. Migration Notes for Modern Systems
For new projects, Siemens recommends the S7-1500 platform with the integrated PROFINET interface of the CPU rather than a separate CP. The CP 343-1 remains supported for installed base and for legacy system extensions. If porting a CP 343-1 application to S7-1500:
- The T-block family (TCON, TSEND, TRCV) is retained in the S7-1500 with the same call interface, simplifying code reuse.
- S7 connections are configured in the device's Properties > Communication view in TIA Portal rather than NetPro.
- Local IDs are still used but the value range is 16-bit and assigned automatically by the compiler in TIA Portal; manual tracking is no longer required.
For STEP 7 (SIMATIC Manager) projects that must coexist with TIA Portal projects on a shared network, the CP 343-1 firmware supports both PROFINET IO controller and PROFINET IO device modes. Verify that the S7-1500 project explicitly adds the CP 343-1 to its PROFINET IO device list with the correct GSD file (GSDML-Vx.x-Siemens-CP343-1-yyyymmdd.xml).
15. Summary
The CP 343-1 Blocks folder is a system-managed area containing configuration SDBs, not a programming workspace. Communication setup follows the well-defined three-stage workflow: HW Config for IP and port parameters, NetPro for connections with their Local IDs, and the SIMATIC NET library FBs/FCs in the CPU program to send and receive data. The SIMATIC NET Quick Start Collection provides ready-to-run sample projects for every supported protocol. For a reliable installation, document Local IDs, monitor STATUS on every call, and use the CP diagnostic buffer to resolve any startup-time issues.
What is the Blocks folder under CP 343-1 used for?
The Blocks folder on a CP 343-1 is generated and managed by STEP 7 and the CP firmware. It contains system data blocks (SDBs) for IP configuration, port parameters, and the connection table compiled from HW Config and NetPro. It is not a location for user code, and hand-written blocks cannot be downloaded to it.
How is communication logic programmed for a CP 343-1?
Communication is programmed in the CPU's Blocks folder using FBs and FCs from the SIMATIC NET library (SIMATIC_NET_CP). For S7 CPU-to-CPU links use PUT, GET, BSEND, BRCV, USEND, URCV. For open TCP, ISO-on-TCP, and UDP use TCON, TDISCON, TSEND, TRCV, TUSEND, TURCV. Each call requires the Local ID assigned by NetPro.
Where is the connection ID (Local ID) defined?
The Local ID is assigned automatically by NetPro when a connection is inserted under the CP 343-1. It appears in the connection properties and is required as the ID input parameter on TCON, TSEND, PUT, GET, and every other SIMATIC NET FB. Track all Local IDs in project documentation.
Can the CP 343-1 be programmed in STL or LAD?
No. The CP 343-1 executes only its Siemens firmware and configuration SDBs. The user program runs on the S7-300 CPU, which is the only programmable component of the station. CP-specific behavior is parameterization only, set in HW Config and downloaded as SDBs.
What does STATUS = 80A1 mean on a PUT/GET call?
STATUS 80A1 indicates the referenced S7 connection is not established at the CP. Common causes are a Local ID mismatch between the user program and NetPro, the connection not yet downloaded to the CP, or the partner CPU being unreachable. Verify the Local ID and re-download HW Config and NetPro to resolve.
Which Siemens manual covers the SIMATIC NET function blocks?
The SIMATIC NET S7-300/400 CP function block (FB/FC) reference is shipped with STEP 7 and is available online in the SIMATIC NET function block manual. Each FB entry includes the input/output parameter list, status codes, and an example call.
How do I update CP 343-1 firmware?
Use the SIMATIC S7 firmware update tool from Siemens Industry Online Support. Open the station in HW Config, go online with the CP, and choose PLC > Update Firmware. The CP restarts automatically, so schedule the update during a maintenance window.