STEP 7 Micro/WIN V4.0 SP9: S7-200 Install and USB-PPI Setup

David Krause12 min read
S7-200SiemensTutorial / How-to
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

1. S7-200 Family Overview and CPU Identification

The SIMATIC S7-200 is a legacy Siemens micro-PLC family introduced in the late 1990s and discontinued for new sales in 2017. S7-200 CPUs ship with a built-in RS-485 port that uses Siemens' proprietary PPI (Point-to-Point Interface) protocol for programming, HMI, and peer-to-peer communication. Before installing any software, identify the exact CPU order number (MLFB) and firmware version because Micro/WIN V4.0 only supports specific CPU revisions.

Table 1 - S7-200 CPU variants and typical MLFB prefixes
CPU Model MLFB Prefix (example) Digital I/O Communication Ports
CPU 221 6ES7 211-0AA2x-0XB0 6 in / 4 out 1 PPI/RS-485
CPU 222 6ES7 212-1AB2x-0XB0 8 in / 6 out 1 PPI/RS-485
CPU 224 6ES7 214-1AD2x-0XB0 14 in / 10 out 1 PPI/RS-485
CPU 224XP 6ES7 214-2AD2x-0XB0 14 in / 10 out + 2 AI/1 AO 2 PPI/RS-485
CPU 226 6ES7 216-2AD2x-0XB0 24 in / 16 out 2 PPI/RS-485
Always read the exact 6ES7 order number on the side label of the CPU and cross-check with the Micro/WIN V4.0 SP9 compatibility list. The trailing x in the MLFB above is a placeholder for hardware/firmware revisions (for example -0XB0 vs -0XB1) that determine whether the CPU is accepted by the SP9 firmware check.

Older CPU revisions may have firmware V1.x or V2.x. These run Micro/WIN V3.2 or V4.0 baseline. CPUs with firmware V2.x or higher accept Micro/WIN V4.0 SP8 and SP9. If a CPU is rejected during the download, the cause is almost always a version mismatch between the project target and the actual CPU firmware.

2. STEP 7 Micro/WIN V4.0 SP8 and SP9 Acquisition

STEP 7 Micro/WIN V4.0 is the last officially released IDE for the S7-200. Siemens released V4.0 SP8 and V4.0 SP9 as cumulative service packs over the original V4.0 DVD. According to the official Siemens support entry, the service packs are published as software updates that require a previous V4.0 installation. They are not standalone installers, and the original V4.0 DVD is no longer available through standard Siemens sales channels.

Reference: STEP 7 Micro/WIN V4.0 SP8 and SP9 - SIOS entry 58523240

2.1 Acquisition Paths for Hobbyists and New Users

  1. Siemens Online Support (SIOS) - Log in with a Siemens Industry Online account and search for entry 58523240. The service-pack executables are distributed as ZIP archives that contain update binaries. Download the V4.0 SP9 update.
  2. Pre-existing V4.0 base - SP8 and SP9 refuse to install if they do not detect a V4.0 baseline. Hobbyists with a brand-new PC must obtain a V4.0 base install first.
  3. Second-hand market - Original V4.0 DVDs occasionally appear on surplus dealers. The DVD contains the full installation including the project wizard, the instruction library, and the TD 200 / TD 200C text-display wizards.
  4. Engineering archives - Many factory automation groups retain licensed V4.0 DVDs. A peer-to-peer copy is legally permitted only for users holding a valid license; Siemens no longer enforces new license keys.
Siemens has transitioned the S7-200 successor to the SIMATIC S7-200 SMART platform, which uses the separate Micro/WIN SMART IDE. Micro/WIN V4.0 SP9 is the only IDE that programs the original S7-200 CPUs.

2.2 Filesystem Layout After Installation

The default installation path is C:\Program Files\Siemens\STEP 7-MicroWIN V4.0\ (Windows XP/7/10 compatible path, 32-bit only). Key subdirectories:

  • bin - MICROWIN.EXE and supporting DLLs
  • Lib - Instruction library (USS, Modbus, recipe wizards)
  • Set PG PC Interface - The communication configuration utility (Set PG-PC Interface.exe, also called MicroWin Setting PC-PPI)
  • examples - Sample projects (ladder, STL, FBD)

3. USB-PPI Cable vs Generic USB-RS485 Adapters

The S7-200 does not accept a generic USB-to-RS485 adapter for programming. The PPI protocol is layered on top of RS-485 but uses Siemens-specific 11-bit framing (1 start, 8 data, 1 parity-even, 1 stop) and proprietary address handling. A raw USB-RS485 dongle exposes only the physical layer; it does not implement the PPI token-passing, baud-rate auto-negotiation, or 10-pin Siemens connector pinout.

3.1 Supported Siemens Programming Cables

Table 2 - Siemens PC-to-S7-200 programming cables
MLFB Name PC Side PLC Side Notes
6ES7 901-3DB30-0XA0 USB/PPI Multi-Master Cable USB-A DB9 male (RS-485, PPI) Current production; supports multi-master and isolation up to 500 V RMS
6ES7 901-3BF20-0XA0 USB/PPI Single-Master Cable USB-A DB9 male Older version; only one master allowed on PPI network
6ES7 901-3CB30-0XA0 PC Adapter USB USB-A DB9 male (MPI/PPI/PROFIBUS) Universal adapter, supports MPI and PROFIBUS
6ES7 901-2BF00-0AA0 PC/PPI Cable RS-232 DB9 serial DB9 male Legacy COM-port variant; superseded by USB

For a hobbyist working on a modern PC without an RS-232 port, the 6ES7 901-3DB30-0XA0 USB/PPI Multi-Master cable is the correct choice. It ships with a built-in FTDI-equivalent USB-to-UART bridge and an SiLabs F321 microcontroller running the PPI stack. The cable is bus-powered from the USB port and has no external power supply.

3.2 Why USB-RS485 Cables Fail

Symptoms when an incompatible USB-RS485 adapter is connected:

  • Micro/WIN reports "Could not establish connection to the S7-200" (error code 0001h / 0002h).
  • The PPI LED on the cable never flashes; the SF LED on the S7-200 CPU is dark (no physical framing errors but also no token response).
  • Setting the PG/PC interface to a generic COM port and 9.6 kbit/s baud silently times out.

The physical connector is a male DB9, but the S7-200 PPI port pinout (Siemens proprietary) is not the standard TIA-485 pinout. Pins 3, 5, and 8 are used; pins 4, 6, 9 are shield/RTS bridged. A generic USB-RS485 cable wired to TIA-485 standard will fail because the PPI driver inside Micro/WIN expects the Siemens pin map.

4. Installing STEP 7 Micro/WIN V4.0

4.1 Prerequisites

  • Windows XP SP3, Windows 7 (32-bit or 64-bit with WoW64), Windows 10 32-bit. 64-bit Windows 10/11 is supported only with the legacy compatibility layer; Micro/WIN V4.0 is a 16-bit installer that runs through the Windows Installer shim.
  • Local administrator rights.
  • Display resolution 1024x768 minimum.
  • Disable antivirus during install (some AV products quarantine the PPI driver DLL s7eppi.dll).

4.2 Installation Steps

  1. Insert the V4.0 DVD (or mount the ISO). setup.exe auto-runs.
  2. Choose language (English, German, French, Italian, Spanish, Chinese). The install is fully language-locked; changing it requires uninstall and reinstall.
  3. Enter the license key. The key on the original DVD sticker is a 25-character alphanumeric string. Keys are not required for SP8/SP9 patches.
  4. Accept the default install path.
  5. After base install completes, run the SP9 update executable as administrator. The update detects the V4.0 path and replaces MICROWIN.EXE, several *.dll files, and the help system.
  6. Reboot. The Micro/WIN icon appears on the desktop.
Do not install Micro/WIN V4.0 inside a Windows Program Files path that is write-protected by UAC. The IDE writes project files to its own bin folder for wizards. If UAC is active, run the IDE as administrator on every launch.

5. PG/PC Interface and PPI Configuration

After install, configure the connection between the PC and the S7-200. Open Set PG/PC Interface from the Windows Start menu or from the Micro/WIN Communications menu.

5.1 Interface Parameter Assignment (PPI)

  1. Set Interface Parameter Assignment Used to PC/PPI cable (PPI) (or USB/PPI if the multi-master cable is plugged in).
  2. Click Properties and set the PPI tab:
  • Address: 0 (PC address, 0 is reserved for the master)
  • Timeout: 1 s (default). Increase to 5 s if the PC is slow to enumerate the USB cable.
  • Transmission rate: 9.6 kbit/s (universal default supported by all S7-200 CPUs). Micro/WIN will auto-upgrade to 19.2 kbit/s, 187.5 kbit/s, or 1.5 Mbit/s after first successful contact.
  1. In the Local Connection tab, select the COM port assigned to the USB/PPI cable. In Windows Device Manager, the cable appears as USB Serial Port (COMx). Use a stable COM number; renumber it in Advanced if needed.
  2. Click OK and return to Micro/WIN.

5.2 S7-200 CPU Address and Baud Settings

Every S7-200 PPI port has a station address (default 2) and a baud rate (default 9.6 kbit/s). To change the address, use the System Block in Micro/WIN, or use the small selector wheel on the CPU front panel (where present). For a one-to-one connection, leave the CPU at default address 2, baud 9.6 kbit/s, and Micro/WIN will auto-detect.

6. Establishing Communication with the S7-200

  1. Power the S7-200 CPU. Apply 24 VDC to terminals L+ and M (CPU 224/226 also accept 85-264 VAC versions, MLFB suffix -0XB1 AC). The STOP/RUN switch should be in STOP for the first download.
  2. Plug the USB/PPI cable into the PC and into the S7-200 Port 0 (the left DB9 labeled PPI).
  3. Wait for the green PPI LED on the cable to blink once per second (idle).
  4. In Micro/WIN, click the Communications icon (left toolbar, two-arrow icon) or press Ctrl+K.
  5. Double-click Double-click to refresh. Micro/WIN scans all PPI addresses from 1 to 31 at 9.6 kbit/s.
  6. The discovered CPU appears with its MLFB and firmware version, e.g. CPU 224 REL 02.01.
  7. Highlight the CPU and click OK.
If the scan returns No CPUs found at the selected address, verify: (1) the cable is the Siemens USB-PPI, (2) the COM port selected in PG/PC Interface matches Device Manager, (3) baud rate on the CPU has not been changed, (4) no other master (HMI, another PC) is holding the PPI token.

7. Project Creation and Ladder Logic Basics

Once communication is established, create a new project. File > New opens a blank ladder (LAD) editor. The default project targets the connected CPU; verify this in the CPU Type dialog (CPU > Type). The S7-200 supports three IEC 61131-3 languages:

  • LAD (Ladder Diagram) - graphical contacts and coils
  • FBD (Function Block Diagram) - graphical logic gates
  • STL (Statement List) - text-based accumulator instructions

7.1 Minimum Example: Toggle Output Q0.0 from Input I0.0

In Network 1 of the LAD editor, click the contact icon and place a normally-open contact with address I0.0. Click the coil icon and place a coil with address Q0.0. Connect them with a click-drag. The result is:

Network 1 // First scan only, hold output
 I0.0  ----[ ]------------------------( Q0.0 )

Add a second network with a latching coil to keep the output energized after the input drops:

Network 1
  I0.0 ----[ ]-----------------------( S  Q0.0, 1 ) ; Set latch
Network 2
  I0.1 ----[ ]-----------------------( R  Q0.0, 1 ) ; Reset latch

This is the canonical S7-200 latch/unlatch pattern. Compile with PLC > Compile (Ctrl+F9) or click the compile icon. Micro/WIN reports a 0 errors, 0 warnings status in the message bar at the bottom.

8. Download, Run, and Verification

  1. Set the CPU mode switch to STOP if not already.
  2. Click File > Download or press Ctrl+D. Micro/WIN clears the user program area and uploads the new project to flash.
  3. A confirmation prompt warns that the current user program will be overwritten. Click Yes.
  4. The download progress bar reports three phases: Establishing connection (PPI handshake), Compiling blocks (server-side validation), Writing to memory card (flash write).
  5. After completion, flip the mode switch to RUN. The RUN LED illuminates solid green, the STOP LED turns off.
  6. Force input I0.0 by closing the physical contact on terminal I0.0/M (24 V across the input). The output Q0.0 LED lights. The latch holds Q0.0 after I0.0 opens. Pressing I0.1 unlatches.
  7. Click PLC > Monitor (Status Chart) to view live values. Add addresses I0.0, I0.1, Q0.0 and tick Monitor. The current boolean and integer values update each scan.

9. Troubleshooting Matrix

Table 3 - Common S7-200 startup faults and resolutions
Symptom Indicator Root Cause Resolution
SF LED on, RUN LED off CPU error Flash write failed, user program fault, or 24 V supply low Cycle power; read PLC > Information; check terminal M for voltage above 20.4 V
BF (bus fault) LED flashing PPI port error Wrong cable, baud mismatch, address conflict Verify cable is 6ES7 901-3DB30; reset CPU address to 2; re-scan at 9.6 kbit/s
SF LED and BF LED both on Hardware fault CPU self-test failed (memory, watchdog) Re-seat CPU; if persistent, hardware is damaged
Micro/WIN reports license error Dialog box at startup V4.0 base license key missing or wrong Re-enter the 25-character key from the original DVD; install base before SP9
Communication works in STOP, fails in RUN Scan-time dependent Scan time exceeds PPI watchdog; a long subroutine blocks token pass Reduce scan time; split long logic into timed subroutines (SBR)
SP9 update installer aborts Dialog: "Previous version not found" V4.0 base is missing or installed in non-default path Install V4.0 base first; ensure install path matches the default Siemens folder
Outputs stuck on after reset Q0.x LED on with input off Retention area configured to keep outputs in STOP Disable output retention in System Block > Retentive Ranges

10. Migration Note: S7-200 SMART as Modern Path

The S7-200 is no longer in active production. Siemens recommends the SIMATIC S7-200 SMART for new designs. The S7-200 SMART uses a different CPU family (CPU SR20, SR30, SR40, SR60, ST40, ST60), a 20-pin PPI-compatible port with a non-Siemens DB9 wiring, and the Micro/WIN SMART IDE. Micro/WIN V4.0 SP9 cannot program an S7-200 SMART, and Micro/WIN SMART cannot program an S7-200. They are not interchangeable.

For hobbyists maintaining existing S7-200 hardware, Micro/WIN V4.0 SP9 remains the supported path. For new projects, use Micro/WIN SMART. The two IDEs share a familiar ladder editor and most instruction mnemonics, easing the transition.

11. Quick Reference Data

Table 4 - S7-200 default port and addressing parameters
Parameter Default Range / Notes
PPI Port 0 address 2 1 to 126, 0 reserved for master
PPI baud rate 9.6 kbit/s 9.6 k / 19.2 k / 187.5 k / 1.5 M
PC master address 0 Fixed for programming master
Maximum masters on PPI 1 (single-master cable) or 32 (multi-master) Depends on cable MLFB
User program size 4 KB to 24 KB CPU dependent; CPU 226 supports up to 24 KB
Retentive memory Varies by CPU Set in System Block > Retentive Ranges

Can I install STEP 7 Micro/WIN V4.0 SP9 on a 64-bit Windows 11 PC?

Yes, with caveats. Micro/WIN V4.0 is a 32-bit application that runs under the Windows-on-Windows 64 compatibility layer. Run the installer and the IDE as administrator, install to a non-Program Files path to avoid UAC write-protection, and use the 6ES7 901-3DB30-0XA0 USB-PPI cable for reliable communication. Micro/WIN SMART does not support S7-200 CPUs and must not be confused with the legacy IDE.

Why does my generic USB-to-RS485 cable not connect to the S7-200?

The S7-200 PPI port uses a Siemens-specific pinout on the DB9 and the proprietary PPI protocol on top of RS-485. A generic USB-RS485 adapter exposes only the physical layer. Micro/WIN requires the Siemens USB/PPI cable 6ES7 901-3DB30-0XA0, which integrates the PPI protocol stack and the correct pin mapping.

Where can I legally download Micro/WIN V4.0 SP9?

The SP8 and SP9 update packages are distributed through Siemens Online Support (SIOS) at entry 58523240. SP8 and SP9 require a previously installed V4.0 base. The original V4.0 base DVD is no longer sold by Siemens and must be sourced from licensed second-hand copies or engineering archives.

What baud rate should I use for a first-time connection?

Start at 9.6 kbit/s, which is the factory default on every S7-200 CPU. After Micro/WIN makes first contact, it auto-upgrades to the highest baud rate supported by the CPU (up to 187.5 kbit/s on most CPUs, 1.5 Mbit/s on CPU 224XP and CPU 226 port 1).

How do I verify a successful program download?

After download, switch the CPU to RUN. The RUN LED goes solid green and the STOP LED goes dark. Open PLC > Status Chart, add the inputs and outputs used in your program, and click Monitor. Live boolean values must update each scan; an output commanded by the logic should toggle in real time when its input changes.

Back to blog