1. Problem: Drives Disappear from HW Config After an S7-300 Upload
When a STEP 7 V5.x project is uploaded from a SIMATIC S7-300 CPU, HW Config reads the actual topology from the CPU and the connected PROFIBUS DP segments. The central rack, the IM stations, and standard SIMATIC DP slaves (ET 200M, ET 200S, ET 200pro, etc.) are reconstructed with the correct order numbers, slot layouts, and module parameters. Devices whose GSD files (General Station Description) are not present in the local hardware catalog, however, cannot be reconstructed correctly. ABB ACS-series drives and Siemens legacy Simovert drives fall into this category almost every time the engineering PC was not the one that originally downloaded the project.
The visible symptoms of a missing GSD on the uploaded project include:
- A gray "?" or grayed-out DP slave icon on the PROFIBUS line in HW Config.
- An empty row in the DP slave list even though "Upload Station to PG" reports a slave is online at a specific DP address.
- "PROFIBUS Diagnose" listing the device's address but showing vendor ID 0x0000 and "station failure" or "no diagnosis".
- After a subsequent download, the slave is removed from the segment entirely and the drives lose cyclic I/O, even though the fieldbus adapter LEDs report a healthy PROFIBUS link.
This article covers the end-to-end procedure for restoring ABB and Siemens Simovert drives in HW Config after an S7-300 upload, from identifying the missing GSD file through to verification with drive-side diagnostics.
2. Symptom Matrix and Root Cause
| Symptom in HW Config | Cause | First Diagnostic |
|---|---|---|
| No slave shown at the DP address | DP slave was never added or the GSD was uninstalled before upload | Right-click the DP master → "PROFIBUS Diagnose" to list accessible nodes |
| Gray "?" / "unknown device" at the slave position | GSD for the slave is not installed | Right-click the slave → "Object Properties" shows blank order number, vendor ID 0x0000 |
| Red X across the slave icon after download | Configured slave does not match the physically present one (different order number, missing GSD revision, wrong PPO type) | Compare catalog order number to drive nameplate; verify fieldbus adapter type |
| Slave present but I/O access fails (SF LED on CPU, BF flashing on fieldbus adapter) | Correct GSD but wrong PPO type or wrong I/O slot length | Check drive parameter for PPO type (e.g., 51.04 for ABB ACS800, P770 for 6RA70) and the slot layout in HW Config |
| Slave list empty after upload despite drives being online | "Upload Station to PG" was run against the CPU only, not the DP segment | Re-run with the DP subnet as the target, not the central rack |
Root cause in one line: the GSD file is a per-engineering-station asset, not a per-project asset. The CPU stores the SDBs (system data blocks) compiled at download time; the upload reads them back, but HW Config needs the matching GSD to render the slave correctly. If the engineering PC has no GSD for an ABB ACS800, RPBA-01, NPBA-12, FPBA-01, or a Siemens Simovert 6SE70 / 6RA70 with CBP / CBP2, the slave will show as "unknown" or vanish.
3. PROFIBUS GSD Fundamentals
A GSD file is a plain-text, structured file defined by IEC 61784-1 and the PROFIBUS Nutzerorganisation (PNO). It describes the supported baud rates (9.6 kbit/s up to 12 Mbit/s), the maximum number of slots, the available I/O slot types, the supported PPO types for drives, and vendor-specific diagnostic extensions. The "Ident_Number" in the GSD header is the unique vendor/product ID that HW Config matches against the live DP slaves reported in "Accessible Nodes" or "PROFIBUS Diagnose."
PROFIBUS GSD files must match the fieldbus adapter and firmware version of the physical device. The classic GSD is the format for STEP 7 V5.x and PROFIBUS DP networks. GSDML (XML-based) is a different format used in PROFINET networks and in TIA Portal. If you migrate an S7-300 project with an ACS880 to a S7-1500 in TIA Portal, you need the GSDML file from the same ABB product page; the classic GSD will not import.
STEP 7 V5.x stores GSD files locally at one of these paths:
- C:\Program Files (x86)\Siemens\Automation\SIMATIC\HWCNFIG\GSD (STEP 7 V5.4 / V5.5)
- C:\Program Files\Siemens\Automation\SIMATIC\HWCNFIG\GSD (STEP 7 V5.6, 64-bit install)
- C:\Users\<user>\AppData\Roaming\Siemens\Automation\SIMATIC\HWCNFIG\GSD (per-user on locked-down PCs)
When a project is downloaded from a PG to a CPU, the GSD in the local catalog is required to compile the configuration into the SDBs. When the same project is uploaded to a different PG, the upload only re-creates what can be described from the SDB contents. Without the matching GSD, HW Config cannot resolve the device's order number, modules, or PPO type.
4. Identifying the Required GSD File
To select the right GSD, identify three pieces of information:
- Drive family from the drive's nameplate (e.g., ABB ACS800-01, ACS880-01, Siemens 6SE7090-0XX84, 6RA7085-6DS22).
- Fieldbus adapter type on the drive (e.g., ABB NPBA-12, RPBA-01, FPBA-01; Siemens CBP, CBP2). This is the actual plug-in module screwed to the drive's control board.
- Adapter firmware revision, visible in the drive's fieldbus parameter group. Some adapter revisions require a specific GSD revision; using an older GSD on a newer adapter can produce a "station failure not ready" diagnostic.
Cross-reference the fieldbus adapter to the standard ABB / Siemens mapping tables. The canonical references are:
- ABB Drives → Connectivity → Fieldbus → PROFIBUS — lists every ABB drive family and the supported fieldbus adapter, with a link to the matching GSD / GSDML file on the product page.
- ABB Drives → Example PLC Codes (US) — provides working AC500 V3 / AC500-eCo and Siemens S7 sample code for ABB drives over Modbus RTU and PROFIBUS / PROFINET.
- ABB Drives function blocks for Siemens PLCs (PDF quick-start-up guide) — covers slot configuration (PPO 1, PPO 4, PPO 5), drive parameter presets, and sample S7 code for STEP 7 V5.x and TIA Portal.
For Siemens Simovert drives (6SE70 SIMOVERT Masterdrives, 6RA70 SIMOREG DC Master), the GSD files are shipped with the DriveMonitor / STARTER commissioning tools and on the Siemens product support portal. Search the support portal by the drive order number (e.g., 6SE7090-0XX84-...) and download the GSD from the product's "Software downloads" tab. DriveMonitor's default install path contains the GSD in a subdirectory; copy it into the STEP 7 GSD directory if STEP 7 cannot find it automatically.
5. Step-by-Step: Installing GSD Files in STEP 7 V5.x
Prerequisites
- STEP 7 V5.4, V5.5, or V5.6 installed on the engineering PC.
- Administrator rights on the engineering PC (the GSD install writes to Program Files).
- An Ethernet, MPI, or PROFIBUS connection to the S7-300 CPU, OR an offline backup of the original S7 project to compare slot configuration against.
- Access to the manufacturer's GSD file repository.
Procedure
- Upload the project and verify the symptom. Open STEP 7, then PLC → "Upload Station to PG." Select target = CPU (not the DP segment). Open HW Config and look at the PROFIBUS(1) line. Drives that are not in the catalog appear as "?" or are missing entirely.
- Identify the drives physically on the segment. Right-click the DP master (the integrated PROFIBUS port of the CPU 31x, or a CP 342-5 / CP 343-5) and select "PROFIBUS Diagnose." In the station list, note the PROFIBUS address, vendor ID, and product ID of every detected slave. For ABB drives, the vendor ID is 0x001A (ABB Drives). For Siemens Simovert, the vendor ID is 0x001E (Siemens AG). The product ID matches the GSD's Ident_Number.
- Download the matching GSD file. For ABB: navigate to the ABB Drives PROFIBUS connectivity page or the specific drive's product page (firmware / software download section). For Siemens Simovert: navigate to the Siemens product support portal and search by the drive order number; the GSD is in the "Software downloads" tab, or inside the DriveMonitor / STARTER install archive.
- Install the GSD file in STEP 7 HW Config. In HW Config, select "Options" → "Install GSD File..." (German: "Extras" → "GSD-Datei installieren..."). Browse to the downloaded GSD file. The installer copies the GSD to the local STEP 7 GSD directory and updates the hardware catalog. Close and re-open HW Config so the new device is visible in the catalog tree.
- Update the catalog if the device does not appear. In HW Config, select "Options" → "Update Catalog" (this forces a re-scan of the GSD directory). If the device still does not appear, verify the GSD file is plain text and not corrupted (open it in Notepad and confirm the "#Profibus_DP" header is intact).
-
Re-detect or re-add the missing drive. With the GSD installed, two paths are available:
a. Re-upload: PLC → "Upload Station to PG" — HW Config will now resolve the slave to the correct order number and modules.
b. Manual replacement: if re-upload is not possible (e.g., the CPU is offline), drag the drive from the PROFIBUS DP → ABB → ACSxxx (or Siemens AG → Simovert) tree onto the correct DP address. Open the slave's properties and assign the PPO type, I/O addresses, and slot modules to match the original project. - Compare slot configuration with the original. Open the slot table of the newly restored drive. ABB ACS800/ACS880 typically use PPO type 4 (4 PKW + 12 PZD) or PPO type 5 (0 PKW + 12 PZD) on slot 1 / slot 2. SIMOVERT 6SE70 / SIMOREG 6RA70 typically use PPO type 1 or 4. Match the I/O length in bytes to the original project. If a backup exists, open it side-by-side and copy the slot assignment.
- Save, compile, and download. Save the project (Ctrl+S) and then "Station → Save and Compile" (Ctrl+B). Verify "HW Config - Save and Compile" reports no errors. Connect to the CPU and download HW Config only (PLC → "Download to Target System" → "Hardware Configuration").
6. Restoring the Drive Configuration After Upload
After the GSD is installed and HW Config sees the drive, the I/O configuration is the next critical step. Drives on PROFIBUS expose a Parameter Process Object (PPO) — a fixed-format telegram containing Parameter Keword (PKW) and Process Data (PZD) words. The PPO type must be identical on the S7 side (slot module selection in HW Config) and on the drive side (parameter 51.04 on ABB ACS800, P770 on 6RA70). The standard PPO types used in S7-300 with ABB and Simovert drives are:
| PPO Type | PKW Words | PZD Words | Total Words (Input + Output) | Common Use |
|---|---|---|---|---|
| PPO 1 | 4 (PKW) | 2 (PZD) | 12 | Slow parameter access + 16-bit control/status |
| PPO 2 | 4 (PKW) | 6 (PZD) | 20 | PKW + multi-word setpoint/actual |
| PPO 3 | 0 (no PKW) | 2 (PZD) | 4 | Fast cyclic, no parameter channel |
| PPO 4 | 4 (PKW) | 12 (PZD) | 32 | Most common for ABB ACS800 / ACS880 and 6RA70 |
| PPO 5 | 0 (no PKW) | 12 (PZD) | 24 | Fast cyclic, ABB ACS880 with Drive Composer |
In HW Config, the PPO type is selected by inserting the matching module from the GSD's slot catalog. For PPO 4, slot 1 contains the PKW module (4 input words + 4 output words) and slot 2 contains the PZD module (12 input words + 12 output words). The I/O addresses shown in the slot table (e.g., IW 256..IW 286 / QW 256..QW 286) become the address symbols used in the S7 user program.
7. ABB Drive-Specific Parameters and GSD Notes
For the ACS800 platform with NPBA-12, the canonical GSD is "ABB_0820.GSD" (Ident_Number 0x0820). The drive parameters that interact with PROFIBUS are grouped under group 51 in the ACS800 control program:
| Parameter | Name | Default | Notes |
|---|---|---|---|
| 51.01 | PROFIBUS module type | 1 | 1 = NPBA-12 / FENA |
| 51.02 | PROFIBUS node address | 2 | Must match the DP address in HW Config |
| 51.03 | PROFIBUS baud rate | 0 (auto) | Auto-detect; lock to a fixed value if the segment has DP/PA couplers or repeaters that struggle with auto-detect |
| 51.04 | PPO type | 4 | 1 = PPO1 / 4 = PPO4 / 5 = PPO5 |
| 51.05 | PKW timeout | 200 ms | Increase if the S7 polls slow parameters infrequently |
| 51.21 | DPV1 enable | 0 | Set to 1 only if the S7 project uses DPV1 acyclic services (RDREC / WRREC) |
| 51.22 | Diagnostic interrupt | 1 | Enable for diagnostics in HW Config |
For the ACS880 (newer platform), the fieldbus adapter is typically the FPNO-21 (PROFINET) or FPBA-01 (PROFIBUS). The GSD for the FPBA-01 is "ABB_08DE.GSD" or "ABB_08EB.GSD" depending on the adapter revision. The ACS880 uses drive parameter group 51 as well, but the parameter numbering is different (e.g., 51.21 = "PROFIBUS node address" on ACS880, not "DPV1 enable"). Always cross-reference against the ACS880 firmware manual, not the ACS800 manual, when configuring.
For working S7 sample code, ABB publishes a dedicated library called "ABB Drives function blocks for Siemens PLCs" (document number 3AFE68970797). The quick-start-up guide (PDF) covers slot configuration (PPO 1, PPO 4, PPO 5), drive parameter presets, and sample S7 code for STEP 7 V5.x (S7-300/S7-400) and TIA Portal (S7-1200/S7-1500). The library contains FBs for ACS800, ACS880, ACS580, and ACS355 with predefined UDTs for control word, status word, setpoint, and actual value.
8. Siemens Simovert Drive-Specific Parameters and GSD Notes
The legacy Simovert family — 6SE70 SIMOVERT Masterdrives and 6RA70 SIMOREG DC Master — predate the GSDML / TIA Portal era. GSD files are still available from the Siemens product support portal under the drive's order number, and the DriveMonitor commissioning tool install archive contains matching GSDs in subdirectories. Typical filenames follow the "SI0xxxx.GSD" or "SIExxxx.GSD" pattern, with the 4-digit number mapping to the Ident_Number in the GSD header.
For 6RA70 (SIMOREG DC Master) with CBP2, the relevant drive parameters are in the P7xx group:
| Parameter | Name | Notes |
|---|---|---|
| P770 | PPO type | 1 = PPO1, 4 = PPO4, 5 = PPO5 |
| P771 | PROFIBUS node address | 1 to 126, must match HW Config |
| r772 | Actual PROFIBUS baud rate | Read-only diagnostic |
| P773.01 | Bus timeout | Set to a value appropriate for the S7 watchdog (typical: 50–200 ms) |
| P774…P779 | Diagnostic settings | Configured per commissioning |
For 6SE70 (SIMOVERT Masterdrives) with CBP2, the parameter structure is similar but the fieldbus-related parameters are in a different group (typically P700s or P900s, depending on firmware). The control word and status word are in USTW / UWST, and the setpoint / actual value are in HSW / HIW. Cross-reference the drive's parameter manual (Compendium) for the exact group and parameter numbers on the specific firmware version.
9. Diagnostic Flowchart and Reference Topology
Diagnostic flowchart (decision tree for missing drives in HW Config):
Reference topology (typical S7-300 with multi-drive PROFIBUS segment):
10. Verification and Commissioning
After the GSD is installed and the configuration is restored, perform these verification steps before releasing the line:
- Online diagnose. In HW Config, right-click the DP master and run "PROFIBUS Diagnose." All configured slaves must show "OK" status with the correct Ident_Number and vendor ID. If any slave shows "Station failure" or "Slave diagnostic: not ready," the slot layout or PPO type does not match the drive.
- Cyclic I/O test. Force a known value into the S7 output word that maps to the drive's control word 1 (STW1, e.g., 047E hex = "OFF1 inhibit" or 047F hex = "run enable," per the PROFIdrive profile). Watch the drive's status word 1 (ZSW1) echo back the expected state. If ZSW1 remains at 0000 hex, the I/O mapping is broken — usually a slot-order issue.
- Fieldbus adapter LEDs. ABB NPBA-12 / RPBA-01 / FPBA-01: green steady "ON" + green steady "LINK" + green flashing "ACT" = OK. Red BF or red DIAG = bus fault. Siemens CBP2: green steady "ON" + green steady "BAUDRATE" = OK. The exact LED labels vary by adapter revision — check the adapter label.
- Drive-side parameter check. Re-read the fieldbus node address and PPO type from the drive's panel. They must match HW Config exactly. If the drive is in local control, the panel may override the fieldbus — switch to "Auto" or "Fieldbus" control source before testing.
- Watchdog test. Disconnect the PROFIBUS cable briefly with the drive running. The drive should trip on F53 (fieldbus fault, ABB ACS800) or F082 (PROFIBUS fault, ABB ACS880) or equivalent on Simovert, within the configured watchdog time. This confirms the S7's PI/PIW I/O is genuinely cyclically updating the drive, not just present in the SDB.
- Setpoint ramp test. From the S7, ramp the setpoint (HSW, PZD 2) from 0 to 50% of motor nominal speed. Verify the drive's actual value (HIW, PZD 2 readback) follows within the configured ramp time. This confirms the full PZD loop is functional, not just the control word.
11. Troubleshooting Matrix
| Observed Fault | Likely Cause | Corrective Action |
|---|---|---|
| Slave not visible in HW Config after upload | Missing GSD on the engineering PC | Install GSD via "Options → Install GSD File," then re-upload |
| Slave visible but I/O access shows red | Wrong PPO type or wrong module order in the slot table | Compare to backup project, fix the slot layout in the slave's properties |
| BF LED on the fieldbus adapter | Wrong DP address or baud rate mismatch | Check parameter 51.02 / 51.04 (ABB) or P770 / P771 (Simovert); verify the segment's baud rate |
| SF LED on the CPU, no DP slave faults reported | Incorrect I/O length in HW Config | Match the slot module lengths to the drive's PPO type (e.g., 12 PZD words for PPO 4) |
| Upload completes but drives are still missing | "Upload Station to PG" ran against the CPU only, not the DP subnet | Re-run with the DP subnet as the target, then re-open HW Config |
| After download, drives are removed from the segment | CPU's SDB contained placeholders, not real slaves | Reconfigure with the correct GSD, recompile, and redownload |
| ACS880 shows in TIA Portal but not STEP 7 V5.x | Used GSDML (PROFINET) instead of classic GSD (PROFIBUS) | Download the classic GSD for the FPBA-01 from the ABB product page |
| Simovert 6SE70 / 6RA70 GSD cannot be installed | STEP 7 version too old to recognize the GSD revision | Upgrade to STEP 7 V5.5 SP4 or V5.6; the GSD requires GSD_Revision ≥ 5 |
| Drive accepts GSD but reports F53 / F54 at boot | Slot module count does not match PPO type | Reduce to 1 module (PPO 3 / PPO 5) or expand to 2 modules (PPO 1 / PPO 4) per the PPO type |
| Fieldbus adapter is online but DP master shows "Slave diagnostic: not ready" | Drive is in local control (panel / hand-off-auto), not fieldbus | Switch the drive's control source to "Auto" or "Fieldbus"; verify parameter 10.x (control location) is set to COMM |
| DPV1 acyclic read/write (SFC 58 / RDREC) fails with error B#16#01 | DPV1 not enabled on the drive (parameter 51.21 = 0) | Set 51.21 = 1 on ABB ACS800, or the equivalent DPV1 enable on the specific drive family |
12. Frequently Asked Questions
Why does my uploaded S7-300 project not show ABB drives in HW Config?
The hardware catalog on your engineering PC is missing the GSD file for the ABB drive's PROFIBUS option module (e.g., NPBA-12, RPBA-01, FPBA-01). Install the matching GSD from the ABB Drives PROFIBUS connectivity page, update the catalog, then re-upload the project.
Where do I download GSD files for ABB ACS800, ACS580, or ACS880 drives?
Use the ABB Drives PROFIBUS page for the family overview, then go to the specific drive's product page and open the firmware / software download section. The classic GSD is for STEP 7 V5.x (PROFIBUS DP); the GSDML is for TIA Portal (PROFINET). Do not confuse them — GSD and GSDML are not interchangeable.
Can I upload a PROFIBUS configuration without the GSD file installed?
No. The upload reads the SDBs (system data blocks) from the CPU, and HW Config cannot resolve a slave it cannot describe. The slave will show as a "?" icon, an "unknown device" with vendor ID 0x0000, or be absent entirely. The GSD must be installed before the upload is meaningful.
What is the difference between GSD and GSDML?
GSD is a plain-text file used in PROFIBUS DP networks with STEP 7 V5.x. GSDML is an XML-based file used in PROFINET networks with TIA Portal. They are not interchangeable. If you migrate an S7-300 project with an ACS880 drive to a S7-1500 in TIA Portal, you need the GSDML file from the same ABB product page, not the classic GSD.
How do I handle Siemens legacy Simovert drives (6SE70, 6RA70) in a STEP 7 V5.x upload?
Download the matching GSD from the Siemens product support portal by searching the drive's order number (e.g., 6SE7090-... for SIMOVERT Masterdrives, 6RA7085-... for SIMOREG DC Master). The GSD is also included in DriveMonitor and STARTER install archives. Install via "Options → Install GSD File..." in HW Config, update the catalog, then re-upload or re-add the drive manually from the catalog tree.
Will installing a GSD file overwrite my open STEP 7 project?
No. The GSD install only modifies the local hardware catalog (the GSD directory in Program Files). Your S7 project is unaffected. After installing the GSD, you can re-upload the project from the CPU and HW Config will resolve the previously unknown slaves to the correct order number and module layout.
What ABB parameter controls the PPO type and how do I match it to the S7 project?
On ABB ACS800, parameter 51.04 selects the PPO type (1, 4, or 5). On ABB ACS880, the equivalent parameter is in the same group 51 but the slot layout and module naming follow the newer "function block" structure. The PPO type on the drive must match the slot module selection in HW Config (e.g., 1 module for PPO 3/5, 2 modules for PPO 1/4). A mismatch typically causes the drive to report F53 / F54 at boot.