PC Adapter USB A2 Code 28: Resolving Step 7 V5.5 Driver Install Failure
1. Problem Overview
The Siemens SIMATIC PC Adapter USB A2 (order number 6GK1 571-0BA00-0AA0) is the standard USB-to-MPI/PROFIBUS programming interface used to commission S7-300, S7-400, C7, and certain ET 200 stations from a Windows engineering station. A persistent fault pattern occurs when the device first installs and works correctly, but a subsequent driver re-installation fails. The host PC then reports the adapter under Device Manager → Other Devices → Simatic PC Adapter USB A2 with the status "The drivers for this device are not installed. (Code 28)".
The indicator that confirms the failure mode is the installer's behaviour: the bundled setup program (whether launched from the supplied driver CD or from the Step 7 installation media) terminates in approximately 15 seconds and silently produces no usable driver store. By contrast, a healthy install takes between 3 and 6 minutes, copies signed .sys and .inf packages, registers a service, and updates Device Manager with a non-warning enumerator.
2. Affected Environment and Components
The following exact configuration reproduces the fault and is the primary supported combination to verify before applying the corrective actions in this article:
| Component | Confirmed Specification |
|---|---|
| Operating System | Windows 7 Ultimate, Service Pack 1, 64-bit |
| Engineering Software | SIMATIC Step 7 V5.5 + SP2 (internal version K5.5.2.0) |
| Programming Cable | PC Adapter USB A2, 6GK1 571-0BA00-0AA0, firmware V1.4, SVP E7142116 |
| Distribution Source | Original PC Adapter USB A2 install disc + Step 7 DVD |
| Target PLC | SIMATIC S7 (MPI subnet, 187.5 kbit/s default) |
The same Code 28 condition is also reported on Windows 7 Professional and Windows 7 Enterprise (both 32-bit and 64-bit SKUs), on Windows Server 2008 R2, and—less frequently—on Windows 10 builds prior to 1709 when the user has migrated a Step 7 V5.5 SP2 image forward. The corrective procedure is essentially identical across these Windows versions, with the only variation being the path to the Device Manager's Update Driver dialog.
3. Device Manager Code 28: What It Means
Code 28 is the standard Windows Plug-and-Play error returned when the device enumerates successfully on a bus (USB in this case) but no compatible driver has been bound to the hardware ID. The Windows Setup API defines it as ERROR_NO_DRIVER_SELECTED; the textual description in Device Manager reads verbatim:
The drivers for this device are not installed. (Code 28)
Code 28 is distinct from the more familiar Code 28/Code 31/Code 39/Code 52 cluster in one important respect: there is no driver file in the driver store, so the Update Driver wizard reports no matching software. Confirming the exact error is the first step of diagnostics:
- Open Control Panel → Device Manager (or run
devmgmt.msc). - Expand Other devices.
- Right-click Simatic PC Adapter USB A2 and select Properties.
- On the General tab, read the Device status pane. It must show Code 28; if it shows Code 31, 39, or 52, the remediation path is different and Code 28-specific procedures may not apply.
- Switch to the Details tab. Under the Property dropdown, choose Hardware Ids. The expected values are
USB\VID_0908&PID_01ABandUSB\VID_0908&PID_01AB&REV_0001for the A2 revision 1.4 firmware. If these IDs are missing or show a different VID/PID, the USB stack has failed before the driver subsystem and the host controller/driver must be repaired first.
0908 is the Siemens AG USB vendor ID assigned to the PC Adapter product family. PID 01AB corresponds to the A2 generation. Earlier A1 adapters (PID 01AA) use a different INF and a different service. Mixing the two installers causes Code 28 even when both packages appear to install cleanly.4. Root Cause Analysis
The 15-second install and the resulting Code 28 indicate that the installer cannot deliver its payload to the driver store. In documented field experience, four root causes account for nearly every occurrence:
4.1 Missing or Broken Step 7 Installation
Step 7 V5.5 + SP2 places the PC Adapter driver package at %ProgramFiles(x86)%\Siemens\Automation\SIMATIC_MANAGER\S7PCANM (or the equivalent path on 32-bit Windows). The standalone install disc shipped with the adapter is only a redistributable; it cannot install the service in isolation when the master Step 7 image is damaged. If the SIMATIC Manager directory is missing the S7PCANM.INF, S7PCANM.SYS, and S7PCANM.CAT triplet, every re-install attempt from the disc becomes a no-op.
4.2 Insufficient Installation Privileges
Windows 7 enforces User Account Control (UAC) on driver store mutations. The PC Adapter setup registers a kernel-mode service (s7pcanm) and writes to %SystemRoot%\System32\DriverStore\FileRepository; both actions require elevation. Logging in as a member of the local Administrators group is not sufficient—the Setup.exe must be explicitly launched with Run as Administrator. A non-elevated invocation silently no-ops on 64-bit Windows 7.
4.3 Antivirus or Filter Driver Interception
Several commercial endpoint protection suites (Kaspersky, McAfee, Trend Micro OfficeScan, Sophos) intercept Setup.exe child processes that write to DriverStore. The visible result is the same 15-second silent completion. Disabling real-time scanning for the duration of the install is the standard mitigation, as is excluding the %ProgramFiles(x86)%\Siemens tree from the on-access scanner.
4.4 Driver-Signing Rejection on x64
Windows 7 64-bit enforces kernel-mode driver signature verification by default. The S7PCANM driver is cross-signed with a Siemens AG certificate that chains to a Microsoft cross-certificate. If the local certificate store is missing the intermediate CA, or if the system has been re-imaged with a non-default Secure Boot policy, Plug and Play will reject the package with Code 28. The driver package itself is not the problem in this scenario—the verification chain is.
5. Pre-Flight Checklist
Execute these checks before touching the installer. They reduce total remediation time from hours to minutes on most field calls:
-
Verify file presence. Open
C:\Program Files (x86)\Siemens\Automation\SIMATIC_MANAGER\S7PCANM. ConfirmS7PCANM.INF,S7PCANM.SYS, andS7PCANM.CATexist. If the folder is empty, proceed directly to Section 6.1 (Step 7 repair/reinstall). -
Verify the driver store. In an elevated command prompt run
pnputil /enum-drivers | findstr /I "S7PCANM". A healthy install returns one Oem*.inf entry referencing the published Siemens name. If the command returns nothing, the package was never committed. -
Confirm UAC state. Run
whoami /groups | findstr "Mandatory Label". The output must contain Mandatory Label\High Mandatory Level for elevation to be in effect. - Verify the Step 7 internal version. In SIMATIC Manager, choose Help → About. The internal version must read K5.5.2.0 (SP2). Earlier builds (K5.5.0.0 / K5.5.1.0) lack the signed driver for Windows 7 SP1 64-bit and must be upgraded to SP2 or higher.
-
Check for a stuck device instance. Run
set devmgr_show_nonpresent_devices=1thendevmgmt.mscand enable View → Show hidden devices. Phantom ghost entries of Simatic PC Adapter USB A2 must be uninstalled (with the Delete the driver software checkbox) before a fresh attempt. -
Capture a baseline log. In an elevated command prompt run
msinfo32 /report %USERPROFILE%\Desktop\PreFixSystemInfo.nfo. Compare against the post-fix report to validate that the driver service is correctly registered.
6. Resolution Procedures
Apply the following procedures in the listed order. Procedure 6.1 (Step 7 repair) resolves approximately 85% of documented Code 28 cases on a Windows 7 SP1 64-bit engineering station.
6.1 Repair or Reinstall Step 7 V5.5 (Primary Procedure)
The Step 7 setup is the canonical install path for the S7PCANM driver. The shipped PC Adapter disc is a redistributable; it depends on registry keys created during the SIMATIC Manager install and cannot install a working driver on its own once the parent installation is damaged.
- Insert the Step 7 V5.5 + SP2 installation media. If the install was performed from a network share, reconnect to that share.
- Disable anti-virus real-time scanning. On Kaspersky, McAfee, and Trend products, also disable tamper protection during the install window.
- Open an elevated File Explorer, navigate to the install media root, and right-click
Setup.exe→ Run as Administrator. Choosing Run as Administrator from the Start menu search entry does not reliably apply the manifest to legacy InstallShield setups. - When prompted, select Repair Installation. The install re-registers the PC Adapter component, copies the
S7PCANM.*package to the driver store, and recreates theHKLM\SYSTEM\CurrentControlSet\Services\s7pcanmregistry hive. - If Repair Installation is unavailable, choose Modify Installation and ensure the SIMATIC PC Adapter sub-component is set to This feature will be installed on the local hard drive.
- Allow the setup to complete. A successful repair takes 3–6 minutes and finishes with a restart prompt. Do not skip the restart.
- After the restart, plug in the PC Adapter USB A2 and verify the device enumerates as SIMATIC PC Adapter USB A2 in Device Manager (no longer under Other Devices).
6.2 Manual Driver Pointing via Device Manager
If the Step 7 repair cannot be performed (no media available, IT lockdown, or remote session), install the driver manually by pointing Device Manager at the package Step 7 deposited locally:
- Navigate to Device Manager, right-click Simatic PC Adapter USB A2 under Other devices, and select Update Driver Software.
- Choose Browse my computer for driver software.
- Choose Let me pick from a list of device drivers on my computer.
- Select Show All Devices and click Next.
- Click Have Disk and browse to
C:\Program Files (x86)\Siemens\Automation\SIMATIC_MANAGER\S7PCANM\S7PCANM.INF. - Select SIMATIC PC Adapter USB A2 from the model list and click Next.
- Accept the Windows Security prompt that warns the publisher is Siemens AG. This is the expected cross-signed certificate.
This procedure binds the driver to the existing hardware ID but does not commit the package to the driver store for future PnP events. It is acceptable as a temporary fix on a single station but should be followed by Procedure 6.1 when media becomes available.
6.3 PnPUtil Forced Add (Forensic Procedure)
When the manual install still returns Code 28, force-add the package to the driver store and re-enumerate:
- Open an elevated command prompt.
- Run
pnputil /add-driver "C:\Program Files (x86)\Siemens\Automation\SIMATIC_MANAGER\S7PCANM\S7PCANM.INF" /install. - Watch the console for Microsoft PnP Utility: Driver added successfully or an error code.
- If the error is
0xE000024B(driver package is already in the store but not active), runpnputil /enable-device "USB\VID_0908&PID_01AB"after unplugging and replugging the adapter. - If the error is
0xE0000217(hash mismatch), the CAT file is unsigned or the install was interrupted; repeat from Procedure 6.1.
6.4 Driver Signature Enforcement Bypass (Last Resort)
Only deploy this on isolated engineering stations, never on production-provisioned hosts:
- Open an elevated command prompt and run
bcdedit /set testsigning on. - Reboot. Windows will boot with the Test Mode watermark.
- Re-run the Step 7 setup. The unsigned or incorrectly cross-signed package will now install.
- Once the driver is bound, restore enforcement with
bcdedit /set testsigning offand reboot.
7. Driver Package Anatomy
Understanding the files in the S7PCANM package helps diagnose the failure modes listed in Section 4. The complete driver package, as installed by Step 7 V5.5 + SP4, consists of:
| File | Type | Function |
|---|---|---|
| S7PCANM.INF | Driver information (text) | Binds USB hardware IDs to the SYS file and service name |
| S7PCANM.SYS | Kernel driver (signed) | Implements the PC Adapter USB protocol and exposes the MPI/PROFIBUS character device |
| S7PCANM.CAT | Security catalog | Cryptographically signs the INF and SYS pair to satisfy Plug and Play |
| S7PCANM.dll | User-mode helper | Exposes the high-level programming API to SIMATIC Manager |
| S7PCANM.hlp | Help file | Diagnostic error codes from the driver |
The Windows 7 x64 driver store entry, after a healthy install, lives under C:\Windows\System32\DriverStore\FileRepository\s7pcanm.inf_amd64_<hash>\. Deleting this directory is the fastest way to force a clean re-add, but the parent Step 7 install must be repaired first or the directory will be repopulated from the same corrupted source.
8. Verification Procedure
After applying any resolution, validate the install with the following sequence. Each step is binary pass/fail and any failure re-opens the troubleshooting loop.
- Device Manager check. Simatic PC Adapter USB A2 must appear under SIMATIC PC Adapter (not Other devices) and must not display a warning icon. The status text must be This device is working properly.
-
Service check. Run
sc query s7pcanmin an elevated command prompt. The expected state isSTATE : 4 RUNNINGwithSTART_TYPE : 1 DEMAND_STARTand the binary path pointing at%SystemRoot%\System32\drivers\s7pcanm.sys. - PG/PC interface check. Open SIMATIC Manager → Options → Set PG/PC Interface. Select PC Adapter (Auto) or PC Adapter (MPI) and click Properties → Test. With the adapter connected to a powered S7 CPU (or to a live MPI bus with termination), the test should report a healthy node within 5 seconds.
- Live PLC connection. In SIMATIC Manager, choose PLC → Accessible Nodes. The MPI node number of the target CPU must appear in the result list. If the list is empty, double-click Update; the adapter cycles its MPI line and the node should appear within one poll cycle (default 1 second).
-
Driver store check. Run
pnputil /enum-drivers | findstr /I "S7PCANM". The package must be present and Original Name must match the file inSIMATIC_MANAGER\S7PCANM. - Event log check. In Event Viewer → Windows Logs → System, look for entries with source s7pcanm. Successful operation produces informational events at service start; Code 28 conditions produce PlugPlayManager errors with event ID 411 and 412.
9. Troubleshooting Matrix
The following matrix maps observed symptoms to their most likely root cause and the matching remediation. Use it as a triage aid on a service call.
| Symptom | Likely Root Cause | Remediation |
|---|---|---|
| Setup finishes in ~15 s, no errors | Elevation/UAC, antivirus block, or missing parent Step 7 | Run as Administrator; disable AV; repair Step 7 (Procedure 6.1) |
| Code 28 in Device Manager | Driver package not in store | Repair Step 7 or PnPUtil add (Procedure 6.1 / 6.3) |
| Code 31 ("This device is not working properly") | SYS file present but not loading | Re-seat service via sc delete s7pcanm + repair |
| Code 39 ("Windows cannot load the device driver") | Driver store corruption or version mismatch | Delete from FileRepository and re-add (Procedure 6.3) |
| Code 52 ("Digital signature cannot be verified") | Cross-certificate missing | Reinstall SP4 or apply cross-cert (Procedure 6.1 / 6.4) |
| Adapter not in Other Devices at all | USB stack or hub failure | Try a different USB port; reinstall USB root hub |
| Yellow bang appears then disappears after unplug | Service disabled in registry | Set HKLM\...\s7pcanm\Start = 3 (manual); restart service |
| Setup prompts for disc, disc rejected | Wrong CD revision (A1 disc on A2 hardware) | Use the A2 install disc or repair Step 7 (Procedure 6.1) |
| Setup succeeds, but no node found at MPI | Baud rate, MPI address, or bus termination | Set 187.5 kbit/s, address 2, check 220 Ω terminator |
10. Preventive Measures
The following practices eliminate the majority of repeat Code 28 service calls on a multi-engineer plant:
- Maintain a known-good image of the engineering station with Step 7 V5.5 + SP4 pre-installed, captured with Sysprep, and stored on the IT file share. Re-image instead of repairing on a chronically failing laptop.
- Exclude the
%ProgramFiles(x86)%\Siemenstree and theDriverStore\FileRepositoryfrom real-time anti-virus scanning. The performance cost is negligible and the elimination of false-positive driver rejections is significant. - Never install the PC Adapter drivers from the shipped CD on a station that already has Step 7 installed. The CD install is intended for PG/PC field laptops without a full SIMATIC Manager install. Use the Step 7 installer or Set PG/PC Interface to install the driver on a Step 7 station.
- Document the internal Step 7 build (K5.5.x.x) on the asset register. Stamping the build on the laptop label makes the support engineer immediately know which SP is in place.
- Apply the Siemens cross-certificate update when corporate IT pushes a clean Windows 7 image. The cross-cert is shipped in the Step 7 SP4 redistributable at
Disk1\Support\cert\SiemensCrossCert.cer. - Verify the service status after any major Windows update. Cumulative updates occasionally reset the
s7pcanmservice start type to disabled; the symptom is a Code 28 that appears overnight.
11. Field-Proven Quick Reference
For the service engineer on a tight schedule, the following 90-second checklist resolves the most common Code 28 cases without leaving Device Manager open:
- Open Device Manager, uninstall the entry under Other devices with Delete the driver software checked.
- Close Device Manager.
- Disable anti-virus.
- Insert the Step 7 V5.5 + SP4 installation media.
- Right-click Setup.exe, Run as Administrator.
- Select Repair Installation.
- Reboot when prompted.
- Plug in the PC Adapter and verify the device enumerates without a warning.
- Open SIMATIC Manager → Options → Set PG/PC Interface → PC Adapter (MPI) → Test to confirm the MPI bus is live.
If the test fails after the above, escalate to Procedures 6.3 and 6.4 in that order.
12. Frequently Asked Questions
What does Windows Device Manager Code 28 mean on the SIMATIC PC Adapter USB A2?
Code 28 (ERROR_NO_DRIVER_SELECTED) means the adapter is detected on the USB bus at hardware ID USB\VID_0908&PID_01AB but no driver package has been bound to that ID. It is not a hardware fault; the device is fine and Step 7 V5.5 must be repaired or the S7PCANM driver manually re-added to the driver store.
Can I install the PC Adapter USB A2 driver directly from the shipped CD on a Windows 7 64-bit station running Step 7?
It is technically possible but not recommended. The bundled CD is a redistributable that depends on registry keys created during the SIMATIC Manager install. A standalone CD install on a station that already has Step 7 V5.5 + SP2 in a damaged state will silently no-op. Always repair Step 7 V5.5 with the original installation media and only use the CD on a clean laptop without Step 7.
Which Service Pack for Step 7 V5.5 includes a Windows 7 SP1 64-bit signed S7PCANM driver?
Service Pack 4 (SP4) for STEP 7 V5.5 and STEP 7 Professional 2010 is the first service pack that ships a Windows 7 SP1 x64-signed S7PCANM package. Internal build K5.5.4.0 (SP4) supersedes K5.5.2.0 (SP2) for the purposes of the USB driver. Siemens support contract holders can download SP4 free of charge from the Industry Online Support portal.
Why does the Step 7 setup finish in 15 seconds instead of 5 minutes?
A fast-finishing setup indicates the installer cannot elevate, is blocked by endpoint protection, or cannot find the parent Step 7 install. Always launch Setup.exe with Run as Administrator from a right-click, disable the on-access anti-virus scanner, and confirm the SIMATIC Manager install path exists before re-running the setup.
Is it safe to use Test Signing mode to install the PC Adapter driver on Windows 7 64-bit?
Test Signing mode (bcdedit /set testsigning on) disables kernel-mode signature enforcement and is appropriate only on isolated engineering laptops. Never enable it on a PC connected to a production control network. Once the driver is bound and the device enumerates correctly, restore enforcement with bcdedit /set testsigning off and reboot.
How do I confirm the PC Adapter service is running after the install?
Run sc query s7pcanm in an elevated command prompt. The expected output is STATE : 4 RUNNING, START_TYPE : 1 DEMAND_START, and the binary path %SystemRoot%\System32\drivers\s7pcanm.sys. A STOPPED state with a manual start type is acceptable if the adapter is unplugged; it becomes RUNNING on demand when the USB device enumerates.