Overview
Integrating a SINAMICS S120 drive (CU310-2DP control unit, firmware V2.5 and later) into a non-Siemens PROFIBUS-DP master is a recurring engineering task. The challenge is that the drive's PROFIBUS interface is configured through BICO technology and free telegram assembly inside STARTER or SCOUT, but the GSD file delivered for PROFIBUS only exposes a fixed set of standard telegrams. This article walks through how to obtain the correct GSD, select a compatible telegram (Telegram 105 for the typical 10-PZD profile), and use the universal-module workaround when the configured telegram does not match any predefined entry in the GSD.
The procedure differs significantly between PROFIBUS and PROFINET. Custom GSDML files can be generated for PROFINET from the project configuration; for PROFIBUS, only the manufacturer-released GSDs from the CF card or the Siemens support portal are available, and any custom BICO wiring must be re-mapped into a standard telegram.
Prerequisites
- SINAMICS S120 with CU310-2DP (PROFIBUS variant) control unit. The CU310-2PN variant is PROFINET-only and follows the GSDML procedure described in Configuring GSD drives for PROFINET IO.
- Drive firmware V2.5 SPx or compatible (CU310-2DP firmware is reported in parameter
r0002or on the STARTER Device Identification page). - STARTER V4.x or higher, or SCOUT / SCOUT TIA, with the S120 support package installed for the matching firmware.
- Original CF card from the drive, or direct access to the Siemens support entry GSD files for SINAMICS S120.
- Non-Siemens PROFIBUS master configuration tool (e.g., ABB Control Builder, Rockwell RSLogix 5000 with SST-Profinet/PROFIBUS option, Schneider Unity Pro, Beckhoff TwinCAT, Phoenix Contact PC WORX, or any IEC 61131 tool with PROFIBUS master capability).
GSD vs. GSDML: PROFIBUS vs. PROFINET
| Aspect | PROFIBUS GSD | PROFINET GSDML |
|---|---|---|
| File extension | *.gsd (ASCII, ET 200 style) | *.xml (GSDML schema, V2.3x) |
| Can be generated from project | No - fixed catalog per firmware | Yes - export from TIA/STARTER |
| Free telegram/BICO configuration | Not exposed to master | Exposed as pluggable submodules |
| Source for S120 files | CF card /OEM/SINAMICS/S120/ or support entry 49216293
|
Project export or hardware catalog |
| Third-party master compatibility | Universal, but limited to published telegrams | Vendor-dependent; check conformance class A/B/C |
If your control system supports PROFINET, prefer the GSDML path: the user-defined telegram assembly in STARTER or SCOUT is preserved as pluggable submodules. For PROFIBUS-only masters, the procedure below applies.
Standard Telegram Reference for S120
The CU310-2DP accepts a fixed set of PROFIdrive telegrams on its PROFIBUS interface. The telegram selection is set in p0922 and the corresponding I/O length in p2079. The GSD exposes a subset of these as selectable slot modules.
| Telegram | Direction | PZD count (words) | Content | Typical use |
|---|---|---|---|---|
| 1 | Bidirectional | 2 / 2 | STW1/ZSW1 + NSOLL_A/NIST_A | Basic speed control |
| 2 | Bidirectional | 4 / 4 | STW1/ZSW1 + NSOLL_B/NIST_B (32-bit) | Speed control, 32-bit setpoint |
| 3 | Bidirectional | 2 / 5 | STW1/ZSW1 + 5 actual values | Diagnostics |
| 4 | Bidirectional | 6 / 14 | Extended speed/temperature/encoder | High-end drives |
| 20 | Bidirectional | 2 / 6 | STW1/ZSW1 + main setpoint/actual | Siemens internal legacy |
| 105 | Bidirectional | 10 / 10 | STW1/ZSW1 + 32-bit speed + torque + status words + MDI | Common for non-Siemens masters |
| 106 | Bidirectional | 10 / 14 | 105 + extended actual values | Diagnostics heavy |
| 110 | Bidirectional | 10 / 10 | Positioning (EPOS) | Basic positioner |
| 111 | Bidirectional | 12 / 12 | EPOS with override | Positioner with setpoint changes |
| 116 | Bidirectional | 14 / 14 | EPOS + torque limits | EPOS with load monitoring |
| 125 | Bidirectional | 15 / 15 | DSC (Dynamic Servo Control) | High-dynamic motion |
| 136 | Bidirectional | 15 / 15 | DSC with 32-bit position | Hydraulic / large drives |
| 138 | Bidirectional | 10 / 10 | DSC + EPOS basic | Positioning with DSC |
| 139 | Bidirectional | 14 / 14 | DSC + EPOS extended | Positioning with DSC + diagnostics |
| 166 | Bidirectional | 10 / 24 | Hydraulic + DSC | Hydraulic axis with DSC |
| 220 | Bidirectional | 10 / 10 | Metal-forming press | Press applications |
| 352 | Bidirectional | 4 / 4 | Speed control, 16-bit PCS | Compact pumps/fans |
| 370 | Bidirectional | 4 / 4 | Single-axis positioning (1SAP) | 1SAP profile |
| 371 | Bidirectional | 6 / 6 | 1SAP extended | 1SAP with diagnostics |
p0922 and p2079 on the drive side match what the master is writing.Step-by-Step: Obtaining and Loading the GSD
-
Identify the firmware. In STARTER or SCOUT, open the drive online (or read
r0002from the parameter list) and record the firmware version, control-unit type, and object version. Example: CU310-2DP V2.5, object version 02050500. -
Locate the matching GSD. Two sources are accepted by Siemens:
- Insert the S120 CF card into a card reader. The GSDs are under
/OEM/SINAMICS/S120/GSD/with subdirectories for each firmware major version (e.g.,V2.5/). - Download the matching package from Siemens Support entry 49216293. Pick the archive whose directory name matches the drive's firmware major version.
- Insert the S120 CF card into a card reader. The GSDs are under
-
Install the GSD in the master tool. Each PROFIBUS master vendor tool uses its own import path:
- Siemens STEP 7: Options > Install GSD File.
- Rockwell RSLogix 5000 / Studio 5000: EDS Hardware Installation Tool for PROFINET/PROFIBUS devices via AOI.
- ABB Control Builder: Library > Import Device Description.
- Schneider Unity Pro / Control Expert: Tools > DTM Browser > Add.
- Beckhoff TwinCAT: Device > Import from the I/O configuration tree.
- Select the slave type in the master. The S120 GSD exposes one entry per control-unit variant. For a CU310-2DP, pick the entry labeled with that product order number (e.g., 6SL3040-1LA01-0AA0) and the matching firmware major version.
- Configure slot modules. Drop the appropriate telegram module into slot 1. Most GSD revisions provide a "Standard Telegram 1", "Standard Telegram 2", "Standard Telegram 105" and similar. If your offline STARTER configuration uses a non-standard length (e.g., free PZD assembly), see the universal-module workaround below.
-
Set the PROFIBUS address. Match the address set in
p0918on the drive. - Download the master configuration and power-cycle the drive if a PROFIBUS address change is required.
Universal-Module Workaround for Custom Telegram Lengths
When the telegram configured in STARTER does not match any predefined slot in the GSD (for example, a free PZD assembly of 7 words in / 8 words out that is neither Telegram 105 nor any other standard entry), the universal-module workaround lets the master declare a slot with a user-defined length:
- In the GSD, search for the module named Universal module or Free PZD (Siemens GSDs ship several variants such as Universal PZD module, Universal module (length = 1 word) ... up to a maximum length supported by the drive).
- Place one universal module per slot until the total input length and total output length each match the configured drive telegram.
- The module name displayed in the master tool is irrelevant for cyclic data exchange. Only the aggregate I/O length and the slot order matter. The PROFIdrive profile guarantees that the bytes are mapped onto the standard PZD fields.
- If the GSD does not ship a universal module of sufficient length, choose the closest longer predefined module and pad unused words on the drive side (BICO source/destination set to a constant or unused signal).
Matching Telegram Configuration Across Tools
Whatever the drive telegram is configured to be in STARTER (p0922, with length in p2079) must be reproduced exactly on the master side. A mismatch is the single most common cause of "drive does not run" symptoms.
| Drive parameter | Meaning | Must equal |
|---|---|---|
p0922 |
PROFIdrive telegram selection | Telegram selected in master (e.g., 105) |
p2079 |
PZD count for setpoint/actual | Slot length on master |
p0918 |
PROFIBUS address | Station address on master |
p2030 |
Fieldbus interface selection (PROFIBUS vs PROFINET on -2PN/-2DP) | 2 = PROFIBUS on CU310-2DP |
p2042 |
PROFIBUS Ident Number | Must match GSD Ident Number |
To verify the running telegram on the drive once PROFIBUS is up, read:
-
r0922- telegram currently active -
r2079- currently used PZD count -
r2050[0..15]- decoded setpoints received from master -
r2051[0..15]- decoded actuals sent to master
BICO Limitations and How to Work Around Them
Inside the S120, every PZD word is wired via BICO. The PROFIdrive profile reserves the first two PZDs of the standard telegrams for control word 1 (STW1) and status word 1 (ZSW1). All subsequent words are free PZDs that can be BICO-routed by the user.
The GSD does not expose these BICO routings to the master. The master only sees opaque word slots. This has three practical consequences:
- Custom drive-side telegrams are not portable. If you built a 7-word telegram in STARTER using free PZD3 as a digital-output broadcast from the master, a different master can only reproduce that if its tool allows a slot of length 7 (or you re-decompose it via universal modules).
- Bit fields inside the standard words are fixed by the profile. The bits of STW1/ZSW1 are defined by PROFIdrive and cannot be redefined in the GSD. If your application requires non-standard status bits, route them through free PZDs instead.
-
Cross-telegram BICO from STARTER to runtime is preserved automatically. Once
p0922 = 105(for example) and you have BICO-wired the free PZDs on the drive, those routings survive a master swap as long as the master still respects the 10-word length.
Step-by-Step: Re-Mapping Telegram 105 on a Non-Siemens Master
- In STARTER, set
p0922 = 105on the CU310-2DP. Confirm withp0971 = 1if you want to save to the CF card immediately, or copy RAM to ROM via the project tree. - In the non-Siemens master tool, place the GSD module "Standard Telegram 105" (or the equivalent 10/10 PZD slot) in slot 1 of the S120 station.
- Map the master's process-data tags to the slot:
- PZD1 out → STW1 (control word 1, bit-coded per PROFIdrive profile)
- PZD2 out → NSOLL_B (32-bit speed setpoint, occupies PZD2 and PZD3)
- PZD3 out → NSOLL_B high word (continuation)
- PZD4 out → free / BICO source (e.g., torque limit, ramp selection)
- PZD5..PZD10 out → free / BICO source
- Map the inputs:
- PZD1 in → ZSW1 (status word 1)
- PZD2 in → NIST_B (32-bit actual speed, low word)
- PZD3 in → NIST_B high word
- PZD4 in → IAIST (smoothed actual current)
- PZD5 in → MIST (smoothed actual torque)
- PZD6 in → PIST (smoothed actual power)
- PZD7 in → ZSW2 (status word 2)
- PZD8..PZD10 in → free / BICO source
- Download the master configuration and verify the slave comes up on PROFIBUS. The CU310-2DP's
RDYandBF(bus fault) LEDs indicate DP state. - Online, watch
r2050[0..9]on the drive to confirm the master's setpoint words arrive intact; watchr2051[0..9]on the master to confirm actuals are received.
Verification Procedure
- PROFIBUS layer check: from the master, read the slave's diagnostic buffer. Confirm "DP-V0 slave OK" or equivalent. CU310-2DP LED state:
RDYgreen,BFoff. - Drive state check: read
r0002 = 0x...A(drive in "Operation enabled" depends on STW1 bit sequence). Typical sequence: STW1 bits047Ethen047Fon the last two cycles. - Setpoint handshake: write
0C7Fto PZD1 (master → drive). Verify ZSW1 returns0631or higher in PZD1. - Actual speed: read PZD2/PZD3 in. Value should equal
NIST_Bin RPM scaled perp2000(reference speed). - Fault-free operation: read
r0945[0..7]to confirm no active faults. Common PROFIBUS-related fault codes:-
F08501- PROFIBUS connection fault -
F08502- Telegram failure (timeout) -
F08510- Send configuration error (PZD length mismatch) -
F08511- Receive configuration error -
A08502- Telegram warning (heartbeat lost)
-
Troubleshooting Matrix
| Symptom | Likely cause | Check / Fix |
|---|---|---|
| BF LED on, drive shows F08501 | PROFIBUS cable / connector / termination | Verify termination (ON at both ends only), shield grounded, baud rate ≤ 12 Mbps for that segment length |
| F08502 telegram timeout | Master watchdog shorter than drive p2040 | Set p2040 (PROFIBUS monitoring time) ≥ 0 or larger than master watchdog |
| F08510/F08511 configuration error | Slot length on master ≠ p2079
|
Match lengths exactly. Use the universal-module workaround if no standard slot fits |
| Drive OK on PROFIBUS but does not run | STW1 bit pattern wrong | Confirm OFF1/OFF2/OFF3 cleared (bits 0/1/2 = 1), enable (bit 3 = 1), pulse enable (bit 10 ramp-up). Wait for ZSW1 bit 2 (operation enabled) |
| Speed setpoint ignored | NSOLL_B scaling or p2000 mismatch | Confirm p2000 (reference speed) matches master's normalization; the S120 interprets NSOLL_B as a fraction of p2000 |
| Master cannot find the GSD for the firmware version | Mismatched GSD major version | Match the GSD to r0002's firmware major version exactly; V2.5 GSD will not work for V4.x firmware |
| Ident Number rejected by master | p2042 changed | Restore p2042 = 0 (automatic) or set to the Ident Number from the GSD header |
| Free PZD BICO source not visible to master | Expected behavior - GSD is opaque | Do not depend on the master seeing BICO. Verify by reading r2050/r2051 online |
| Cyclic data OK but sporadic F08502 every few hours | EMI / connector or master jitter | Check connector pin assignment, shield clamp, baud rate, and p2040 value |
| Tool can only place predefined modules, none match the configured telegram | Tool limitation | Reconfigure drive to a standard telegram the tool supports, or move integration to PROFINET where GSDML allows free submodule assembly |
Catalog Numbers and Compatibility Notes
| Item | Order number | Notes |
|---|---|---|
| CU310-2DP control unit | 6SL3040-1LA00-0AA0 / 6SL3040-1LA01-0AA0 | PROFIBUS variant; pair with -2PN for PROFINET |
| CF card S120 (firmware V2.5) | 6SL3054-0ED00-1BA0 / -2BA0 | GSD files in /OEM/SINAMICS/S120/GSD/V2.5/
|
| STARTER commissioning software | 6SL3072-0AA00-0AG0 (DVD) | SP for matching firmware required |
| SCOUT / SCOUT TIA | 6SL3070-0AA00-0AG0 | Required for SIMOTION motion drives |
| PROFIBUS DP connector with PG port | 6ES7972-0BB12-0XA0 (90°) / -0BA12 (35°) | Terminating resistor switch accessible |
For PROFINET deployments, the S120 GSDML is auto-installed when you update the hardware catalog in TIA Portal or SCOUT TIA. See Configuring GSD drives for PROFINET IO for the wizard-driven import procedure, including assignment to a PROFINET IO controller and submodule configuration.
FAQ
Can I generate a custom PROFIBUS GSD for the SINAMICS S120 from my STARTER or SCOUT project?
No. For PROFIBUS, Siemens only releases fixed GSDs per firmware major version. Custom GSDML export is available for PROFINET only. On PROFIBUS you must use the published GSDs (from the CF card under /OEM/SINAMICS/S120/GSD/ or support entry 49216293) and match the drive-side telegram in p0922 / p2079 to one of the predefined slots, or assemble the length from universal modules.
What is the difference between Telegram 105 and a "10-word PZD" slot in the GSD?
They refer to the same length on the CU310-2DP for the typical 10/10 configuration. Telegram 105 has a fixed internal word layout (STW1/ZSW1, NSOLL_B/NIST_B, IAIST, MIST, PIST, ZSW2, plus free BICO slots). A non-Siemens master tool that labels the slot "10 PZD" is using the slot-length notation, not the telegram number. Always set p0922 = 105 on the drive so the word order matches.
The non-Siemens master tool cannot represent my custom drive telegram. What now?
Three options: (1) reconfigure the drive to a standard telegram that the master tool supports, (2) use the universal-module workaround by stacking universal slots until the total length matches, (3) move to PROFINET where GSDML supports user-defined pluggable submodules. Confirm the drive's runtime telegram via r0922 and r2079, and the master slot length, before commissioning.
Where do I find the GSD on the S120 CF card?
Insert the CF card into a card reader. GSD files are located under /OEM/SINAMICS/S120/GSD/<FW major version>/. For a CU310-2DP V2.5 drive, use the files in the V2.5/ subdirectory. If the CF card is unreadable or missing, download the equivalent package from Siemens Support entry 49216293.
The drive connects to PROFIBUS but the master reports a configuration error (F08510/F08511). What should I check?
The most likely cause is a length mismatch between the master's slot PZD count and p2079 on the drive. Verify that input length and output length match exactly on both sides, that p0922 selects a valid telegram for the firmware version, and that p2042 (PROFIBUS Ident Number) is either 0 (automatic) or matches the GSD header value. If the mismatch persists, rebuild the master slot using universal modules sized to the drive's actual telegram length.