Skip to content

Helios Performance - Window Focus issue #950

@Mk1-Trebuchet

Description

@Mk1-Trebuchet

Helios instrument gauges stop updating or update very slowly when DCS has focus. The issue manifests as a rendering/refresh freeze where Helios-drawn instruments (gauges, switches, indicators) become static or extremely slow.

The issue occurs consistently whenever DCS is the foreground/active window. Switching focus to any other application (Explorer, browser, etc.) immediately restores smooth Helios instrument updates. This behavior suggests DCS acquiring foreground focus causes Windows to throttle or deprioritize the Helios WPF rendering thread.

Steps to Reproduce the problem

Launch Helios Control Center as Administrator with F-16C profile loaded
Launch DCS World in Borderless Window mode as Administrator
Load into F-16C aircraft - Helios instruments initialize correctly with correct values
Click into DCS to give it focus
Observe Helios instruments become static and stop updating
Alt-Tab to focus any other application
Helios runs smoothly

Expected behavior
Helios instrument gauges and bindings should update continuously at the configured export rate (60Hz) regardless of which application has Windows focus. The rendering thread should not be throttled or suspended when DCS acquires foreground focus.

Helios Version: 1.6.6180.1
DCS Version: 2.9.25.21402

System specifications:

CPU: AMD Ryzen 9800X3D
GPU: RTX 4090
RAM: sufficient (confirmed not a resource issue)
OS: Windows 11
Display setup: Triple 2560x1440 monitors (Native 4k set to 1440 for performance) (Monitor 3, 2, 1 left to right) with UPERFECT UMax 24 touchscreen (2560x1440) as Monitor 4, positioned below

Control Center.log

center monitor. All displays on RTX 4090. All displays at 100% scaling.

Profile in use: Any - Including single VVI as only object

Troubleshooting steps already attempted without resolution:

DCS set to Borderless Window mode (not fullscreen exclusive)
Both Helios Control Center and DCS running as Administrator
Export.lua confirmed clean with no conflicting dofile calls (only HeliosExport16.lua active)
Export update rate increased from 30Hz to 60Hz in profile settings
HeliosExport16.lua confirmed at 0.017s export interval (approx 60Hz)
Windows Timer Resolution utility set to maximum (0.5ms) - no change
Windows background app refresh settings checked
Windows Display Settings graphics preference for Helios set to High Performance
ForegroundLockTimeout registry value set to 0
CPU and memory utilization confirmed not to be the cause (DCS ~20% CPU, Helios ~3% CPU during issue)
All four displays confirmed on same GPU (RTX 4090) eliminating cross-GPU rendering as a factor

Hypothesis: The issue appears to be WPF rendering thread throttling by Windows when DCS acquires foreground focus, rather than a data flow or export script issue. Touch input on the touchscreen generates a sufficiently forceful Windows input event to wake the rendering thread, which is why touch reliably resolves the freeze while it is active.

Metadata

Metadata

Assignees

No one assigned

    Labels

    New IssueLabel given to issues which have not yet been triaged

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions