Comparison with Siemens RT Debugger
Siemens provides an official VS Code extension called WinCC Unified RT Debugger. It's a VSIX you download from the Siemens support portal — it's not available in the VS Code Marketplace.
Both tools let you debug WinCC Unified scripts in VS Code. They take different approaches.
Quick comparison
| Debug Proxy | Siemens Extension | |
|---|---|---|
| Reconnection | Automatic — VS Code reconnects without intervention | Manual — shows a notification to reattach, no guarantee it picks the right target |
| Remote debugging | Yes — run on your laptop, connect to WinCC over the network | No — must run VS Code on the WinCC machine itself |
| Dynamics/Events | Separate ports, debug independently or together | Single target list, attach to each manually |
| Target selection | Automatic — picks the most recent active session | Manual — right-click a target in the sidebar |
| Script dump | Yes — extract all runtime scripts to disk | No |
| Live editing | No — loaded scripts are read-only in VS Code | Yes — edit scripts in-place, saved to the RT server |
| Open source | Yes | No |
How the Siemens extension works
The extension adds a Unified Runtime Explorer panel to the VS Code sidebar. It lists all available debug targets. You right-click a target and select "Attach" to start debugging.
When you navigate to a different screen or a popup opens, WinCC creates a new execution context. The extension refreshes the loaded scripts, but VS Code collapses the tree view — a VS Code limitation according to Siemens.
When you reload the page (F5 in the browser), a new VCS instance is created. The extension shows a notification with the option to reattach, but as Siemens states: "it's not guaranteed that the suggested instance is the real next instance."
The extension also supports live editing — you can modify a loaded script and save it, and the changes are applied to the runtime server. However, all breakpoints are deleted on save, changes only apply to the current context, and Siemens warns that live editing "carries inherent risks and may result in unpredictable behavior."
When to use which
Use the Debug Proxy if you:
- Debug remotely (WinCC on a different machine)
- Want automatic reconnection without manual intervention
- Need to debug Dynamics and Events simultaneously
- Want to dump scripts for review or AI-assisted refactoring
Use the Siemens extension if you:
- Work directly on the WinCC machine
- Want to enable the debugger from within VS Code (without opening Runtime Manager)
- Prefer a GUI-based target selection over CLI configuration