1. Problem Scope: S7-1200 and Baumuller b maXX 5300 PROFINET Communication
When integrating a third-party PROFINET drive such as the Baumuller b maXX 5300 series with a Siemens SIMATIC S7-1200 CPU, the most common failure mode is a persistent cyclic data exchange error immediately after the GSDML file is imported into the TIA Portal device catalog. The PLC establishes a link-layer connection (the drive appears in the topology as reachable), but the IO controller refuses to enter cyclic data exchange, the slot indicators remain red, and the diagnostic buffer records repeated station failure entries with PROFINET alarm codes such as 0x001E (channel diagnosis), 0x0001 (station failure), and 0x0004 (module mismatch).
The underlying problem is almost never a physical layer fault. The GSDML installs cleanly, the device is dragged from "Other components" into Devices & Networks, an IP address is assigned, and a device name is loaded. The error condition originates in slot / submodule configuration — the telegram selection on the drive side does not match the slot mapping configured in TIA Portal, or the Baumuller drive is set to a vendor-specific telegram that the S7-1200 expects as PROFIDRIVE. The result is a slot-level inconsistency that prevents the AR (Application Relationship) from transitioning to AR_STATE_RUN.
2. Required Hardware, Firmware, and Software Stack
Confirm the following minimum versions before troubleshooting. Lower revisions do not contain the GSDML import fixes and PROFINET stack improvements required for stable Baumuller drive integration.
| Component | Minimum Version | Notes |
|---|---|---|
| S7-1200 CPU (1211C / 1212C / 1214C / 1215C / 1217C) | Firmware V4.2 or later | PROFINET IO Controller, 2 or 3 ports depending on part number |
| TIA Portal | V15.1 Update 3 or later | V17/V18 recommended for current GSDML imports |
| Baumuller b maXX 5300 PROFINET module | BM5300-SFP-XXX-03 or later | PROFINET IRT-capable option card |
| Baumuller ProMaster / b maXX Studio | Match drive firmware | Required to set telegram number and PROFIDRIVE conformance |
| GSDML file | GSDML-Vx.x-Baumueller-XXXX-YYYYMMDD.xml | Download from Baumuller product support portal |
3. Root Cause Analysis: Why the Cyclic Error Occurs
Three independent but related causes produce the cyclic error symptom. Each must be ruled out sequentially.
3.1 GSDML version mismatch
The GSDML schema is versioned and a TIA Portal version older than the GSDML schema will silently truncate slots during import. The resulting catalog entry looks valid but lacks submodule 0 entries, so the IO controller has no AR to negotiate. Always import a GSDML whose <GSDML> schema version is supported by the installed TIA Portal (TIA V17 supports up to GSDML schema V2.43).
3.2 Telegram / slot mapping mismatch
PROFINET telegrams are not free-form. The Baumuller b maXX 5300 expects a specific PROFIDRIVE-compliant telegram (typically Standard Telegram 1, 5, or 105 for servo applications). If the TIA Portal slot configuration assigns 4 input words and 4 output words (matching Standard Telegram 1) but the drive is configured for Standard Telegram 5 (10 words in, 10 words out), the AR handshake fails at the first subslot and the controller logs a "submodule difference" diagnostic.
3.3 PROFIDRIVE conformance
The b maXX 5300 can be set to a vendor-specific mode that disables PROFIDRIVE conformance. In that mode the drive does not respond to PROFIdrive parameter channel requests (PKW) and the controller interprets the silence as a fault. The Baumuller parameter P-0-0280 (telegram selection) and P-0-0281 (PROFIdrive conformance bit) must both be set to PROFIDRIVE-compliant values.
4. Step-by-Step Resolution
Step 1 — Acquire and import the correct GSDML
- Identify the exact Baumuller article number of the PROFINET module mounted on the b maXX 5300 (printed on the option card, e.g.
5.9.30-E-0091). - Download the matching GSDML from the Baumuller product support portal. Do not use a GSDML written for a different series (e.g. b maXX 3300 has a different slot layout).
- In TIA Portal: Options → Manage general station description files (GSD).
- Browse to the
.xmlfile and click Install. - Restart TIA Portal to refresh the device catalog cache.
Step 2 — Add the drive to the project
- Open Devices & Networks.
- Expand Other field devices → PROFINET IO → Drives → Baumuller → b maXX 5300.
- Drag the drive into the network view.
- Connect the PROFINET port of the S7-1200 CPU to the drive's PROFINET port 1.
- Right-click the drive → Assign PROFINET device name. The device name must match the name stored in the drive (default often
bm5300-1). - Assign a unique IP address on the same subnet as the S7-1200 PROFINET interface.
Step 3 — Configure telegram slots
- Double-click the drive to open Device view.
- In the device view's slot catalog, locate the drive's submodule list (typically slot 0 with subslots for telegram 1, telegram 5, telegram 105, etc.).
- Select exactly the submodule that matches the telegram configured in Baumuller ProMaster (see Section 5).
- Drag it into slot 1 of the drive.
- Note the I and Q address ranges displayed in the device view. These are the periphery addresses used by the S7-1200 to access the drive data.
Step 4 — Configure the Baumuller drive for PROFIDRIVE
- Open Baumuller ProMaster and connect to the b maXX 5300.
- Set parameter
P-0-0280(telegram selection) to the value matching the TIA Portal configuration. For most positioning applications this is 105 (vendor-specific, 10 words in / 10 words out for cyclic setpoint and actual values). - Set parameter
P-0-0281(PROFIdrive profile) to0x01(PROFIdrive profile V4.1 active). - Set parameter
P-0-0290(PROFINET conformance class) toClass Bif you require SNMP, otherwise Class A is sufficient. - Save to non-volatile memory and cycle the drive control voltage (24 V logic power) so the parameters take effect.
Step 5 — Use SFC 14 / SFC 15 for consistent data transfer
PROFINET telegrams on the b maXX 5300 are larger than four bytes and require consistent read/write access. The standard load/transfer instructions in SCL or LAD will split the data. Use DPRD_DAT (SFC 14) and DPWR_DAT (SFC 15) instead.
SFC 14 — Read consistent drive data
CALL "DPRD_DAT"
LADDR := W#16#100 // I-address base from device view, e.g. 256
RET_VAL := MW100 // error code, 0 = OK
RECORD := P#M 200.0 BYTE 20 // 10 words target buffer
NOP 0;
SFC 15 — Write consistent setpoint data
CALL "DPWR_DAT"
LADDR := W#16#100 // Q-address base from device view, e.g. 256
RECORD := P#M 300.0 BYTE 20 // 10 words source buffer
RET_VAL := MW102 // error code, 0 = OK
NOP 0;
Replace W#16#100 with the actual base address from the device view. The byte count must match the configured telegram size exactly — Telegram 105 = 20 bytes (10 words), Telegram 1 = 8 bytes, Telegram 5 = 20 bytes.
5. PROFIDRIVE Telegram Reference for Baumuller b maXX 5300
| Telegram # | Words In | Words Out | Typical Use | PROFIdrive Conformance |
|---|---|---|---|---|
| 1 | 2 | 2 | Speed setpoint / actual | Yes |
| 2 | 4 | 4 | Speed + encoder actual | Yes |
| 3 | 5 | 5 | Position basic | Yes |
| 5 | 10 | 10 | Servo with DSC | Yes |
| 7 | 14 | 14 | Positioning with MDI | Yes |
| 102 | 10 | 10 | Baumuller vendor specific | No |
| 105 | 10 | 10 | Baumuller servo position | Yes (recommended) |
6. Use of Siemens Motion Control Blocks (SINA_SPEED, SINA_POS, TO_PositioningAxis)
The Siemens technology object (TO) motion blocks — MC_Power, MC_MoveAbsolute, MC_MoveVelocity — are designed for use with SINAMICS drives that expose the PROFIdrive state machine. They can be used with the b maXX 5300 only if the following conditions are met:
- The drive is configured in PROFIdrive conformance mode (bit 15 of
P-0-0281= 1). - A supported telegram (Standard 1, 5, 7, or 105) is configured on both sides.
- The
MC_Telegramfor the drive is created in TIA Portal under Technology objects → Positioning axis → Telegram configuration and the data is mapped via SFC 14/15 to the drive's I/O area.
For a clean integration without depending on Siemens motion library blocks, the SINA_POS and SINA_SPEED function blocks from the Siemens SINAMICS library can call the Baumuller drive directly through the PROFIdrive state machine. This is the recommended path because it avoids the technology object configuration and keeps the S7-1200 in pure PLC mode.
1719 (life-sign error) after power-up.7. Verification Procedure
- After completing Section 4, compile the TIA Portal project and download the hardware configuration to the S7-1200.
- Open Online & Diagnostics → PROFINET → Topology. The drive should appear with a green link and the AR state indicator should read
AR_STATE_RUN. - In the device view of the drive, right-click the slot and select Monitor/Modify. Force a value into the first control word (QW = STW1) and observe that bit 0 of the first status word (IW = ZSW1) toggles from
0x0000to0x0131(drive reports ready-to-switch-on, switched-on, operation enabled, ready-to-operate). - Add a watch table with the input and output addresses of the configured telegram. Read the words directly; you should see non-zero, changing values within 1 second of a Baumuller-side enable.
- Trigger
DPRD_DATand confirmRET_VALreturns0x0000on every cycle. Any non-zero return code from SFC 14 indicates a length mismatch or AR not inRUNstate.
8. Diagnostic Error Code Matrix
| SFC RET_VAL | PROFINET Alarm | Probable Cause | Remediation |
|---|---|---|---|
| 0x0001 | — | Length of RECORD shorter than telegram | Increase RECORD byte count to match configured telegram |
| 0x8001 | — | Length of RECORD longer than telegram | Reduce RECORD byte count |
| 0x8080 | — | AR not in RUN, LADDR wrong | Verify the LADDR matches the device view base address |
| 0x8090 | 0x0001 station failure | Physical layer or device name | Re-assign PROFINET device name, check cables |
| 0x80A0 | 0x001E channel diag | Submodule / slot mismatch | Verify slot configuration matches Baumuller telegram |
| 0x80B0 | 0x0004 module mismatch | GSDML version mismatch | Reinstall matching GSDML and restart TIA Portal |
| 0x80B1 | 0x0004 module mismatch | Telegram parameter wrong | Match P-0-0280 in drive to TIA slot submodule |
9. Cross-Reference: S7-1200 PROFINET Capabilities
According to the Siemens Industry Online Support entry 38051505, the S7-1200's integrated PROFINET interface supports PROFINET IO Controller, IO Device, and shared device with up to 16 IO devices per CPU. The interface is suitable for PROFINET CBA (Component Based Automation) and for S7 communication. For applications requiring PROFINET IRT (isochronous real-time) with sub-millisecond update times, the S7-1200 supports IRT only with the GSD file reference configuration — not the integrated interface on CPUs prior to V4.4. For drives such as the b maXX 5300 that do not require isochronous motion, RT (real-time) is sufficient and update times of 1 ms to 4 ms are achievable.
For multi-CPU architectures or for connecting additional PROFINET segments, the S7-1200 can be paired with the CP 1543-1 communication processor (industrial Ethernet / PROFINET) and with the CM 1243-5 PROFIBUS master module. The motion-specific PROFINET capabilities of higher-tier Siemens CPUs are documented in the Delta Motion RMC Tools reference, which outlines the S7-300, S7-400, S7-1200, and S7-1500 PROFINET feature matrix.
10. Advanced Configuration Notes
10.1 Update time selection
Right-click the PROFINET connection in the network view → Properties → PROFINET interface → Real-time settings → Update time. For servo position control with a b maXX 5300, set the update time to 2 ms (send clock 1 ms) when using PROFINET IRT, or 4 ms when using RT. Shorter values risk life-sign errors; longer values degrade axis dynamics.
10.2 Watchdog / reduced data length
The PROFINET watchdog is calculated by the controller as 3 × update time × (number of IO devices + 1). If the Baumuller drive drops out during a CPU STOP → RUN transition because the watchdog expires, enable Use reduced data length on CPU STOP on the drive side. This prevents the drive from signaling a station failure when the controller cycles.
10.3 Replacement value behavior
Configure the IO device's Replacement value behavior under the slot properties. For motion applications, set the control word (STW1) replacement value to 0x0000 (drive disabled on CPU STOP). For a virtual simulation, set the replacement value to the last valid value.
10.4 SNMP and LLDP
PROFINET conformance Class A requires LLDP. Class B additionally requires SNMP. The b maXX 5300 supports both, but the S7-1200's integrated port does not support SNMP; therefore keep the drive at conformance Class A to avoid SNMP-related diagnostic noise.
11. Related Question: S7-300/400 Backward Compatibility
If a project must be migrated from an S7-1200 prototype to a S7-300/400 or to an S7-1500 series, the PROFINET configuration is portable: TIA Portal can export the GSDML and project configuration, and the receiving CPU can import it. According to the Software Toolbox PROFINET driver reference, drivers for the S7-300/400 family use the CP 343-1 and CP 443-1 communication processors and expose both optimized (S7-1200/1500) and classic (S7-300/400) data block structures. When porting, verify that the slot mapping on the new CPU matches and that the I/O address range is not used by another IO device on the new hardware.
12. Commissioning Checklist
- ☐ GSDML version matches TIA Portal schema
- ☐ Drive appears under Other field devices → Baumuller → b maXX 5300
- ☐ PROFINET device name assigned and stored in drive
- ☐ IP address on same subnet as S7-1200 PROFINET interface
- ☐ Telegram configured identically in TIA slot and Baumuller
P-0-0280 - ☐ PROFIdrive conformance enabled in
P-0-0281 - ☐ Update time 1-4 ms
- ☐ SFC 14/15 RECORD length matches telegram byte count
- ☐ AR state =
RUNin topology view - ☐ First status word returns expected PROFIdrive state bits
Why does my S7-1200 show a cyclic error after installing the Baumuller 5300 GSDML?
The most common cause is a slot/submodule mismatch between the TIA Portal device view and the telegram selected in Baumuller ProMaster (parameter P-0-0280). Match the TIA submodule (Telegram 1, 5, or 105) to the value written to P-0-0280, then recompile and download the project.
Can I use Siemens motion control blocks (MC_Power, MC_MoveAbsolute) with the Baumuller 5300?
Yes, but only if the drive is set to PROFIdrive conformance (P-0-0281 bit 15 = 1) and a supported telegram is configured. The b maXX 5300 supports Telegram 5 (servo with DSC) and Telegram 105 (Baumuller servo position), both of which work with the Siemens TO positioning axis.
Which SFC do I use to read consistent PROFINET data from the drive?
Use SFC 14 (DPRD_DAT) for reads and SFC 15 (DPWR_DAT) for writes. The RECORD length must match the configured telegram byte count (e.g. 20 bytes for Telegram 5 or 105). Standard L AD load/transfer instructions are not consistent and will split the telegram.
What does SFC 14 RET_VAL 0x80A0 mean?
It indicates a channel diagnosis alarm from the drive, most often a subslot/slot mismatch. Re-check the slot configuration in the TIA Portal device view, confirm the Baumuller drive has the matching telegram, and clear the diagnostic buffer before re-cycling the AR.
Does the S7-1200 support PROFINET IRT with the Baumuller 5300?
Only S7-1200 CPUs from firmware V4.4 onward with the GSD file reference configuration support IRT. For typical positioning applications, RT class 1 with a 2-4 ms update time is sufficient and more reliable than IRT on a 1 Gbit copper link.