CP 343-1 Blocks Folder: S7-300 Communication Configuration Guide

David Krause18 min read
S7-300SiemensTechnical Reference
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

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
Note: Always verify the order number on the module label against the configuration in HW Config. A CP 343-1 LEAN cannot be upgraded to full PROFINET IO controller capability by firmware alone. Refer to the Siemens CP 343-1 manual set for the full feature matrix per firmware release.

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 > Blocks container.
  • 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).
Critical: Attempting to download a hand-edited STL block to the CP 343-1's Blocks folder will be rejected by the CP firmware. The CP executes only its own system firmware and SDBs; user code is loaded and executed exclusively by the CPU.

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.

  1. 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).
  2. Network configuration (NetPro): Define connections (S7, TCP, ISO-on-TCP, UDP) to partners. NetPro compiles the connection data into SDBs.
  3. 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

Use Case
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
Field tip: When the partner is a non-Siemens device, ISO-on-TCP (port 102, RFC1006) is often a better default than raw TCP. The fixed-length headers reduce parsing complexity on the partner side, and many SCADA/OPC tools have native ISO-on-TCP drivers (e.g., SIMATIC NET S7 OPC server).

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

  1. Compile HW Config and confirm no errors in the message window.
  2. Compile NetPro and confirm that the connection list reports all expected connections and that the Local IDs are unique.
  3. Download HW Config to the S7-300 station. This loads the SDBs to both the CPU and the CP.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. Save the final project to the Memory Card of the CPU so the configuration persists across power loss.
Field tip: When the connection fails immediately after download, the three most common root causes are (a) the Local ID in the user program does not match the Local ID in NetPro, (b) the connection in NetPro is configured against the wrong partner, and (c) the partner CPU is in RUN but the partner connection is not downloaded. A diagnostic FB that reads CON_STATUS from SFC 51 will pinpoint the cause within seconds.

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.

Back to blog