- Wind-driven turbulence model — Detection and audio are tied to ambient wind, aircraft wind, clouds, and MSFS turbulence data, not pitch inputs or body-frame wind artifacts.
- Smoother, more natural audio — Layered crossfades, volume scaling by severity, and gentle fades when encounters start and end.
- Clearer cockpit UI — Separate Atmospheric TI and Felt Stress with dedicated wind and rotation metrics.
- Fewer false alarms — Maneuver dampening suppresses turbulence when you are flying the aircraft, not when the atmosphere is disturbing it.
New wind-based detection model
Atmospheric Intensity (TI) is calculated from:
- Ambient wind shear (3D world wind changes)
- Aircraft wind (AIRCRAFT_WIND X/Y/Z) — wind acting on the airframe
- Convective turbulence (in-cloud + cloud density)
- Mountain wave effects (terrain + wind speed)
- Clear-air turbulence (high altitude + strong winds)
- MSFS Turbulence Magnitude SimVar
Removed reliance on relative wind in body axes for intensity, which previously spiked during pitch and bank and triggered false turbulence.
Felt Stress (new)
New Felt Stress metric (0–100%) reflects perceived cabin disturbance from:
- Ambient air mass changes
- Aircraft wind deltas
- Rotational motion (roll/yaw; pitch axis excluded during pilot maneuvers)
- Simulator turbulence when present
Felt Stress only builds when a wind disturbance is detected and the aircraft is not in a suppressed maneuver state.
Severity scale (recalibrated)
Encounter labels (LIGHT / MODERATE / SEVERE) follow this scale.
| Level | Atmospheric / Felt range |
|---|---|
| Smooth | 0–5% |
| Light | 5–12% |
| Moderate | 12–30% |
| Severe | 30%+ |
Pilot maneuver dampening
Turbulence detection and felt metrics are paused while the system detects active pilot input, including:
- Elevator, aileron, and rudder movement
- Pitch rate and pitch angle changes
- Rapid vertical speed changes
This prevents climb, descent, and attitude changes from being mistaken for atmospheric turbulence.
Gust factor
Gust factor now uses a 10-second rolling average wind baseline, so short spikes above recent conditions register as gusts without permanent inflation from peak ratios.
Encounter logic
- Turbulence encounters require meaningful atmospheric or wind activity, not isolated motion spikes.
- Hysteresis: encounters activate and release with separate thresholds and a short cooldown for smoother on/off behavior.
- On-ground suppression remains (including low altitude above ground).
Smoother playback
- Per-block gain smoothing for intensity, master output, individual layers, and low-pass filter cutoff.
- ~1.5 s fade-out when an encounter ends instead of an instant mute.
- Normalized layer crossfade so combined layer volume does not exceed 100% (reduces sudden loudness jumps).
Severity-aware volume
- Quiet at Light turbulence; louder only as TI increases through Moderate and Severe bands.
- Light turbulence layer capped for subtle cabin ambience.
Reduced loop artifacts
Each turbulence audio layer starts at a random position in its loop to lessen repetitive “seam” perception.
Thread-safe audio bridge
Intensity, encounter state, and ground status are passed to the audio thread via atomic values for safer real-time playback.
- Sim data is requested once per subscription instead of every frame (lower overhead, more stable).
- Added Turbulence Magnitude to wind telemetry.
- Connection reset clears physics and audio state cleanly on disconnect.
Split turbulence metrics
- Atmospheric TI — Environmental turbulence from wind, weather, and sim settings.
- Felt Stress — How much disturbance the airframe is experiencing from wind-linked signals.
Physics signature chart
- Rotational — Roll/yaw-dominated motion during real wind events (blue).
- A/C Wind — Aircraft wind delta (amber).
- Air Mass — Ambient wind shear (red).
Aircraft characteristics panel
- Rotational Stress — Wind-coupled angular disturbance (pitch excluded during maneuvers).
- Aircraft Wind — Live aircraft wind stress value.
- Maneuver Dampening badge when pilot input suppression is active.
Visual polish
- Color coding aligned with the new severity bands (smooth → light → moderate → severe).
- Clearer labels and short descriptions under each metric.
- Fixed turbulence always-on behavior in calm air caused by over-sensitive wind deltas and rate-based calculations.
- Fixed loud audio during light or no turbulence from unnormalized crossfades and missing volume scaling.
- Fixed false detection when pitching (nose up/down) by removing body-relative wind from core logic and adding maneuver dampening.
- Fixed Physical Stress (TI) showing high values while the aircraft wings appeared still — UI now separates atmospheric vs felt readings.
- Improved state initialization on first connect and after simulator reconnect.
