Fix SiemensHMI.TIA.HmiSRT.Vxx Not Registered Error in TIA Portal

David Krause10 min read
SiemensTIA PortalTroubleshooting
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

Problem Overview

Engineers running the integrated HMI simulator in TIA Portal for a SIMIT-style or built-in KTP 1000 / Comfort Panel project encounter a blocking fault the moment they press the "Start simulation" button (or call StartRT from the HMI runtime). The WinCC RT loader reports:

SiemensHMI.TIA.HmiSRT.Vxx not registered

The same message appears in the Output window of the HMI device view and in C:\Users\<user>\AppData\Local\Siemens\Automation\Log\HmiSRT.log when tracing is enabled. The simulator returns a non-zero exit code and the panel does not come up, blocking all offline debugging.

This fault is independent of the project. It is a workstation-level problem: the COM/registry plumbing for the HMI Soft Real-Time (HmiSRT) service that backs the simulator is missing from the Windows registry.

Affected Products and Versions

Product Version Affected Notes
TIA Portal (STEP 7 / WinCC) V14 / V14 SP1 Yes Original folder structure uses Portal V14
TIA Portal V15.1 Yes Same root cause, separate SmartSimulator path
TIA Portal V16 Yes Default path used in this article
TIA Portal V17 Yes Folder Portal V17
TIA Portal V18 Yes Folder Portal V18
WinCC Runtime Advanced All Yes Simulation uses the same HmiSRT
KTP 1000 Basic, KTP 1200 Basic All Yes Runtime simulator triggers the error
Comfort Panels TP 700..TP 2200 All Yes Same loader, same key

The HmiSRT (HMI Soft Real-Time) module is a Windows service / COM server shared by every HMI target that uses the WinCC Advanced / Professional runtime simulator. A single missing registration breaks simulation for all HMI devices in the project tree, even those on different firmware lines.

Note on version identifier: The placeholder Vxx in the error string is replaced at runtime by the active TIA Portal major version (14, 15, 16, 17, 18). If you see HmiSRT.V15 or HmiSRT.V18 in the dialog, the fix procedure is identical; only the source folder name changes.

Root Cause Analysis

HmiSRT is registered with the Windows registry on a normal TIA Portal install, but the entries are dropped, corrupted, or never written under any of the following conditions:

  1. Elevated install blocked by UAC. TIA Portal was installed or patched without a full administrator token, so the per-machine COM registration was silently skipped.
  2. Antivirus / EDR quarantine. Endpoint protection deletes or quarantines the freshly written registry keys after the installer exits (common with CrowdStrike, SentinelOne, and Defender ASR rules for unsigned .reg writes).
  3. Repair / modify setup did not re-register. Running the Siemens setup in "Repair" mode on a user-level installer token leaves the COM keys missing while the binaries are intact.
  4. Multi-version coexistence. Side-by-side installs of TIA V15 and V16 (or V17 over V16) overwrite each other's CLSID entries because both write to the same SiemensHMI.TIA.HmiSRT ProgID.
  5. Corporate image / clone deployment. The OS image was captured before TIA finished its post-install COM registration, so the keys never exist on the deployed workstation.
  6. Permission on HKLM\SOFTWARE\WOW6432Node\Siemens was stripped by a hardening GPO, blocking the installer from creating the key.

When the simulator launches, it queries the registry for the CLSID behind the SiemensHMI.TIA.HmiSRT.Vxx ProgID. If the CLSID is absent, CoCreateInstance returns REGDB_E_CLASSNOTREG (0x80040154) and the loader surfaces the human-readable message in the dialog.

Prerequisites

  • Local administrator account on the engineering workstation.
  • TIA Portal closed completely, including the TIA Administrator tray icon and any background S7OUCSAx.exe / HmiSRT.exe process. Verify with Task Manager.
  • Path to the simulator folder for the active version. Replace V16 below with V14, V15_1, V17, or V18 as required:
    • C:\Program Files\Siemens\Automation\Portal V16\Win32\SmartSimulator
    • C:\Program Files\Siemens\Automation\Portal V16\Win64\SmartSimulator
  • Read access to the registry hive HKEY_LOCAL_MACHINE and write access to HKLM\SOFTWARE\WOW6432Node\Siemens\Automation.
  • If your shop uses a software restriction policy, temporarily exclude the SmartSimulator folder or grant the reg-file the appropriate SHA-256 hash rule.

Step-by-Step Resolution Procedure

  1. Close TIA Portal. Right-click the TIA icon in the notification area and select Exit. Confirm with Task Manager that no Portal.exe, HmiSRT.exe, S7OUCSAx.exe, or Siemens.Automation.Portal.exe remain.
  2. Open an elevated file browser. Press Win, type SmartSimulator, and click Open file location on the V16 entry. Or browse directly to C:\Program Files\Siemens\Automation\Portal V16\Win32\SmartSimulator in an Explorer window started with Run as administrator.
  3. Locate the batch file. In the SmartSimulator folder you will see HmiSRTRegister_reg (file extension is .bat or .cmd). Right-click it and choose Run as administrator. Approve the UAC prompt.
  4. Verify generation of the two registry files. The batch file writes two .reg files into the same directory:
    • HmiSRTreg.reg – 32-bit CLSID for the WoW HmiSRT server
    • HmiSRTreg_Vxx.reg – version-suffixed ProgID and AppID entries
    Confirm both files exist and are timestamped to the current second.
  5. Import the registry files. Double-click HmiSRTreg.reg, accept the UAC prompt, and click Yes in the Registry Editor confirmation. Repeat for HmiSRTreg_Vxx.reg. Both files must be imported; the order is not significant.
  6. Confirm the keys were written. Open regedit as administrator and check the following paths exist:
    • HKLM\SOFTWARE\Classes\SiemensHMI.TIA.HmiSRT.V16 with default value Siemens HMI Soft Real-Time V16
    • HKLM\SOFTWARE\Classes\CLSID\{<GUID>}\InprocServer32 pointing to HmiSRT.dll inside the SmartSimulator folder
    • HKLM\SOFTWARE\WOW6432Node\Siemens\Automation\Portal V16\HmiSRT with the install path string value
  7. Restart TIA Portal as administrator. Right-click the TIA shortcut and choose Run as administrator for the first launch after the fix. Normal user rights will work on subsequent launches.
  8. Retry the simulation. Open the HMI device, expand Online > Simulation > Start (or press the play button). The simulator window should appear within 5–10 seconds without the registration error.

Command-Line Alternative

When the graphical registry editor is unavailable, blocked by GPO, or you are scripting a fleet of workstations, use the unattended equivalent of the same procedure:

@echo off
setlocal
set TIAVER=V16
set ROOT="C:\Program Files\Siemens\Automation\Portal %TIAVER%\Win32\SmartSimulator"

:: 1. Stop any running HMI simulator
taskkill /F /IM HmiSRT.exe   2>NUL
taskkill /F /IM S7OUCSAx.exe 2>NUL

:: 2. Run the generator batch as admin (re-launch self with PSExec-style elevation if needed)
pushd %ROOT%
call HmiSRTRegister_reg.bat
popd

:: 3. Silently import the two .reg files
regedit /s "%ROOT%\HmiSRTreg.reg"
regedit /s "%ROOT%\HmiSRTreg_Vxx.reg"

:: 4. Verify the ProgID was created
reg query "HKLM\SOFTWARE\Classes\SiemensHMI.TIA.HmiSRT.%TIAVER%" >NUL 2>&1
if %ERRORLEVEL% NEQ 0 (
    echo FAILED: HmiSRT V%TIAVER% not registered
    exit /b 1
)
echo OK: HmiSRT V%TIAVER% registered
endlocal

For PowerShell deployments (Intune, MDT, or Ansible for Windows) the equivalent one-liner is:

$ver='V16'
$root="C:\Program Files\Siemens\Automation\Portal $ver\Win32\SmartSimulator"
Start-Process -Verb RunAs -FilePath "$root\HmiSRTRegister_reg.bat" -Wait
reg import "$root\HmiSRTreg.reg"        2>$null
reg import "$root\HmiSRTreg_Vxx.reg"     2>$null
Get-ItemProperty 'HKLM:\SOFTWARE\Classes\SiemensHMI.TIA.HmiSRT.V16' | Select-Object -ExpandProperty '(default)'

Registry Layout Created by the Fix

Importing the two .reg files populates the following logical structure. The exact GUIDs vary by TIA Portal version but the layout is stable from V14 through V18.

Key Type Value (typical) Purpose
HKLM\SOFTWARE\Classes\SiemensHMI.TIA.HmiSRT.Vxx REG_SZ (default) Siemens HMI Soft Real-Time Vxx ProgID the simulator calls
HKLM\SOFTWARE\Classes\SiemensHMI.TIA.HmiSRT.Vxx\CLSID REG_SZ (default) {1F2A8B0C-...} Pointer to COM class
HKLM\SOFTWARE\Classes\CLSID\{1F2A8B0C-...} REG_SZ (default) Siemens HMI Soft Real-Time Vxx Human-readable name
HKLM\SOFTWARE\Classes\CLSID\{1F2A8B0C-...}\InprocServer32 REG_SZ (default) C:\Program Files\Siemens\Automation\Portal Vxx\Win32\SmartSimulator\HmiSRT.dll 32-bit in-proc server
HKLM\SOFTWARE\Classes\CLSID\{1F2A8B0C-...}\InprocServer32 REG_SZ ThreadingModel Both STA + MTA allowed
HKLM\SOFTWARE\WOW6432Node\Siemens\Automation\Portal Vxx\HmiSRT REG_SZ InstallPath ...\SmartSimulator Used by HmiSRT.exe for self-locating

On a 64-bit Windows installation the 32-bit in-proc server is registered under HKLM\SOFTWARE\WOW6432Node\Classes; regedit shows both views through the standard WOW6432Node redirector.

Verification

After completing the fix, validate success using three independent checks before resuming development:

  1. Registry presence. reg query "HKLM\SOFTWARE\Classes\SiemensHMI.TIA.HmiSRT.Vxx" returns a default value and a CLSID subkey.
  2. COM instantiation. From an elevated PowerShell prompt run:
    $type = [Type]::GetTypeFromProgID('SiemensHMI.TIA.HmiSRT.V16','localhost')
    if ($type -eq $null) { Write-Error 'ProgID not resolvable' } else { Write-Host 'OK:' $type.FullName }
    A non-null FullName confirms the class is registered end-to-end.
  3. Functional simulation. In TIA Portal, open any HMI device, click the Start simulation toolbar button, and confirm the simulator window appears within 10 seconds with no error dialog. Press F5 to force-refresh the connection to the simulated PLC and verify tag exchange.
Safety: Always run the simulation against a PLCSIM instance or a test PLC. Do not point a live KTP 1000 firmware download at the simulator host unless the plant is locked out, as the RT loader will attempt to bind the same TCP port (default UDP/50000) used by panel routing.

Troubleshooting Matrix

Symptom Likely Cause Additional Action
Batch file HmiSRTRegister_reg missing Win32 components not installed (custom setup) Run TIA setup in Modify mode, ensure WinCC Runtime Advanced Simulation is checked
Access is denied (0x80070005) when importing .reg Registry write blocked by UAC or GPO Run regedit as administrator, or import via reg import /reg:64 from an elevated console
Keys written but error persists Wrong bitness (64-bit Office / 32-bit TIA mismatch) Confirm under HKLM\SOFTWARE\WOW6432Node not HKLM\SOFTWARE
Batch file runs but no .reg files appear Antivirus quarantines generated files Temporarily disable real-time AV, add the SmartSimulator folder to the AV exclusion list, re-run
Error returns after every reboot Corporate image rebuilds the registry on logon Deploy HmiSRTreg.reg and HmiSRTreg_Vxx.reg through Group Policy Preferences > Registry
Simulation launches but tags stay "#" PLCSIM not running or wrong connection Start S7-PLCSIM, set PG/PC interface to PLCSIM S7-1200/S7-1500 in the TIA project
Error reads V14 even though V16 is installed TIA Portal pointing at the wrong version Open the project in the version installed last; re-save under that version or install the missing one
Only occurs on a specific project Project uses a TIA version whose HmiSRT was never installed Install the matching TIA Portal version side-by-side, or migrate the project

Advanced Diagnostics

When the standard fix does not work, capture deeper evidence before contacting Siemens Industry Online Support:

  • Process Monitor trace. Filter for regsvr32.exe, HmiSRT.exe, and regedit.exe while reproducing the error. The trace will show exactly which registry path is queried and the NAME NOT FOUND result.
  • COM activation log. Enable HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\EnableLogging = 1 (REG_DWORD) and restart TIA. The log at %TEMP%\OLE.LOG contains every CoCreateInstance attempt and the resulting HRESULT.
  • SxS (side-by-side) manifest check. If the message changes to 0x800736B1 after the fix, the Win32 SmartSimulator manifest is missing. Reinstall the WinCC Runtime Advanced feature set.
  • Procmon boot log. Capture from cold boot to first simulation attempt; the resulting PML can be filtered on RegOpenKey against SiemensHMI.TIA.HmiSRT to identify who is removing the keys.

Preventive Measures

  • Install as administrator from a clean boot, with all AV products disabled or scoped to a temporary exclusion list for C:\Program Files\Siemens.
  • Document the two .reg files in your image-build checklist. After each TIA upgrade, re-run HmiSRTRegister_reg and re-import the resulting files to bake the keys into the gold image.
  • Avoid uninstalling a higher TIA version first. Downgrades from V18 to V16 frequently leave orphan V18 CLSIDs that mask the V16 ones. Uninstall all TIA versions, then install from oldest to newest.
  • For terminal servers / Citrix VDI, publish the registry import as a logon script so every user session receives the keys, regardless of image persistence.
  • Back up the working registry after a known-good install:
    reg export HKLM\SOFTWARE\Classes\SiemensHMI.TIA.HmiSRT.V16  C:\backup\HmiSRT_V16.reg /y
    reg export HKLM\SOFTWARE\WOW6432Node\Siemens\Automation  C:\backup\TIA_V16_path.reg /y
    Restore with reg import if a future TIA update drops the keys again.
Documentation note: Always cross-check the procedure against the current Siemens Industry Online Support entries and the TIA Portal installation manual shipped with your DVD / download package. Firmware and Setup behavior can change between service packs; the registry path layout described above is verified for TIA V14 through V18 as of their last service packs.

What does the error "SiemensHMI.TIA.HmiSRT.Vxx not registered" actually mean?

It means the Windows registry is missing the COM ProgID and CLSID entries for the HMI Soft Real-Time service that powers the WinCC Runtime simulator. TIA Portal cannot start the simulated KTP 1000 / Comfort Panel because CoCreateInstance(SiemensHMI.TIA.HmiSRT.Vxx) returns REGDB_E_CLASSNOTREG (0x80040154). Re-running HmiSRTRegister_reg as administrator and importing the two generated .reg files restores the keys.

Which TIA Portal versions are affected by this HmiSRT error?

All currently supported TIA Portal releases: V14, V14 SP1, V15.1, V16, V17, and V18. The fix procedure is identical across versions; only the source folder name (Portal Vxx) and the suffix in the generated .reg file change.

Do I need to run HmiSRTRegister_reg as administrator?

Yes. The batch file writes registry keys under HKLM\SOFTWARE\Classes and HKLM\SOFTWARE\WOW6432Node\Siemens, both of which require elevation on Windows 7/10/11. Without an admin token, the keys are silently dropped and the error returns on the next simulation start.

Can I script the fix for multiple engineering workstations?

Yes. Use the command-line section above: run HmiSRTRegister_reg from a cmd or PowerShell session started with Run as administrator, then regedit /s (or reg import) both generated .reg files. The procedure deploys cleanly through Intune, SCCM, Ansible for Windows, or a Group Policy logon script.

Why does the error come back after I install a Windows update?

Cumulative Windows updates that touch the COM subsystem, plus a handful of antivirus signature updates, can rebuild or quarantine the HmiSRT keys. Re-run the same two-step fix (HmiSRTRegister_reg as admin, then import the .reg files) and consider deploying the keys through Group Policy Preferences so they are reapplied automatically on each logon.

Back to blog