Windows telemetry bridge for the A2A Simulations Accu-Sim Comanche, Microsoft Flight Simulator, and DR Sim Manager (DRSM).
Important
This is a community-built interim solution. Its purpose is to make the Accu-Sim flight-model telemetry usable in DRSM until DRSM provides a native integration for these aircraft-specific values.
The A2A Comanche uses a custom Accu-Sim flight model. Its most useful body-frame acceleration values are exposed through aircraft-specific LVars rather than only through the regular MSFS telemetry path:
L:FM_BodyAccelerationX
L:FM_BodyAccelerationY
L:FM_BodyAccelerationZ
L:FM_BodyRotationAccelerationX
L:FM_BodyRotationAccelerationY
L:FM_BodyRotationAccelerationZ
Motion software needs acceleration, angular velocity, orientation, airspeed, altitude, and engine data to create useful cues. The router reads both standard SimVars and Accu-Sim LVars through SimConnect, converts their units, and sends a compatible DRSM DCS telemetry protocol v2 packet over UDP.
It does not modify MSFS or DRSM, and it does not impersonate the DCS process. DRSM simply receives the same open UDP/JSON format it supports for DCS World.
MSFS + A2A LVars
│ SimConnect
▼
Telemetry Router ── mapping / unit conversion ──► DCS v2 JSON over UDP
│
▼
DRSM
- Basic mode with 14 relevant Comanche motion and engine channels
- Per-channel choice between a suitable standard SimVar and known Accu-Sim LVar
- Exact LVar names displayed directly in the source selector
- Live raw input and converted DCS output values
- Per-channel enable/disable and explicit inversion controls
- Automatic conversion between compatible physical units
- Safe Expert mode filters sources, units, and operations by output semantics
- Scale, offset, axis inversion, integration, and differentiation in Expert mode
- Full documented numeric DCS v2 output catalog in Expert mode
- Explicit red Raw mode for deliberately unrestricted experimental mappings
- User-defined LVars with add/remove controls
- SimConnect subscribes to enabled output sources plus a small fixed set of vertical-motion diagnostics used by CSV recording
- Automatically reconnecting SimConnect client
- Renderer updates freeze while the window is hidden or minimized; telemetry continues
- Installed app checks for updates at startup and offers install or per-version skip
- Download progress and an explicit restart action that stops the bridge safely
- Small web bootstrapper with automatic update support
- Configurable UDP host, port, packet name, and sampling period
- Atomic persistent JSON configuration
- Empirically validated A2A attitude compensation on lateral/longitudinal
acceleration plus the positive
+1 Gvertical resting load expected by DCS/DRSM - Optional pitch/roll attitude mix that deliberately restores a configurable share of sustained platform tilt without changing heave
- A2A angular-acceleration fusion with attitude-based drift correction and an optional experimental residual washout
- Optional turbulence mixer with four presets, band-pass, blend, gain, and soft G limit
- Independently adjustable vertical-wind branch with source, mix, gain, and sign controls
- Raw CSV diagnostics for A2A
AirframeShake, vertical/horizontal panel shake, and the experimentalCameraHeightvalue - Persistent German/English interface, including tray, updater, status and validation messages
- Contextual tooltips explain every turbulence input, mapping control and DCS output field
- Bilingual output help describes axes, units and the intended DRSM use of fields such as
acc.1 - Fixed three-element DCS vectors to prevent malformed Primary cue packets
- CSV recording of raw sources, routed outputs, telemetry gaps, gravity, and turbulence diagnostics
| DRSM output | Default Accu-Sim/MSFS source | Conversion |
|---|---|---|
acc[0] lateral |
L:FM_BodyAccelerationX |
m/s² → G |
acc[1] longitudinal |
L:FM_BodyAccelerationZ |
m/s² → G |
acc[2] vertical |
L:FM_BodyAccelerationY |
m/s² → G |
ang_vel[0] pitch |
L:FM_BodyRotationAccelerationX |
rad/s² → fused rad/s |
ang_vel[1] roll |
L:FM_BodyRotationAccelerationZ |
rad/s² → fused rad/s |
ang_vel[2] yaw |
L:FM_BodyRotationAccelerationY |
rad/s² → fused rad/s |
pitch, roll, yaw |
standard MSFS orientation SimVars | degrees → radians |
ias |
AIRSPEED INDICATED |
knots → m/s |
alt_agl |
PLANE ALT ABOVE GROUND |
feet → metres |
rpm_left, prop_rpm |
L:Eng1_RPM |
RPM |
Real A2A flight logs show an attitude-correlated share on the lateral and
longitudinal FM acceleration axes, while the positive DCS/DRSM vertical resting
load is missing. The enabled-by-default processor therefore neutralizes the
observed lateral/longitudinal shares with their empirically confirmed signs and
adds +1 G vertically. At level attitude the basis is [0, 0, +1] G; its
compensation components change with pitch and bank. The reference always uses
the physical MSFS attitude. Pitch/roll inversion defines its DCS axis direction,
while scale and offset cannot distort the physical basis. Disable this processor
only for an input that is already fully DCS-compatible.
The optional attitude mix is off by default. It adds a configurable counter-share
to the lateral/longitudinal compensation: 0% keeps full A2A compensation, while
100% restores the attitude-correlated share. This allows a sustained platform
tilt during held pitch or bank without changing the vertical +1 G basis.
The optional turbulence mixer leaves the original acceleration intact. It
isolates a configurable fast band (default 0.7–5 Hz) and blends only that
component into vertical acceleration. A second optional branch differentiates
vertical wind velocity into acceleration, filters it separately, and adds it to
the main turbulence component. AIRCRAFT WIND Y is the recommended starting
source; AMBIENT WIND Y and RELATIVE WIND VELOCITY BODY Y are available for
comparison. Both additions share one adjustable soft limit and are off by
default for safe initial testing. After a telemetry gap longer than 250 ms,
the filter state is reset and only the added turbulence component is suppressed
for 750 ms while normal flight-model telemetry continues to be sent.
The A2A shake LVars are recorded without conversion because their unit, neutral value, and range are not yet established. They are not forwarded to DRSM or treated as acceleration. Once validated against logs, they can act as a turbulence gate or intensity envelope while acceleration and wind continue to provide the physical heave direction and magnitude.
Four presets provide repeatable starting points. Selecting one enables the mixer and copies its values into the normal controls; every value can still be edited afterwards.
| Preset | Mix | Gain | Band | Extra soft limit | Intended use |
|---|---|---|---|---|---|
| Light | 25% | 1.6× | 0.9–4 Hz | 0.08 G | Subtle air movement |
| Medium | 50% | 2.5× | 0.7–5 Hz | 0.20 G | Balanced default |
| Strong | 75% | 3.5× | 0.5–7 Hz | 0.30 G | Clearly noticeable turbulence |
| Extreme | 100% | 5.0× | 0.3–10 Hz | 0.50 G | Short diagnostic tests only |
The ? controls explain how mix, gain, cutoff frequencies, source choice, and
the soft limit affect the output. Extreme settings can cause DRSM axis
overallocation and should be approached gradually.
The default angular-rate mapping uses the A2A rotation-acceleration LVars. Since
DRSM expects angular velocity in rad/s, the router integrates the fast Accu-Sim
rad/s² signal and corrects only its slow drift using rates derived from the
absolute MSFS attitude. The correction time constant is configurable. A separate
experimental residual washout can return an unconfirmed small rate to zero while
preserving motion that is still confirmed by changing aircraft attitude. Pure
integration remains available in Expert mode for comparison. Integrators reset
after telemetry gaps or configuration changes.
- Download the latest Windows setup bootstrapper.
- Start Microsoft Flight Simulator and load the A2A Comanche.
- In DRSM, select DCS World as the telemetry source and use UDP port
4135. - Start the installed AccuSim DRSM Telemetry Router.
- Click Bridge starten.
For a diagnostic log, click CSV aufnehmen after the bridge is running and
CSV stoppen when the manoeuvre is complete. The focused diagnostic set is
sampled even when those values are not routed to DCS. It includes A2A and stock
vertical acceleration, world acceleration, G force, aircraft/ambient/relative
vertical wind, body/world vertical velocity, cloud density, pitch rate, pitch,
elevator input, L:AirframeShake, L:PanelVerticalShake,
L:PanelHorizontalShake, and the experimental L:CameraHeight.
Do not run another DCS-format telemetry sender to the same DRSM endpoint at the same time, or DRSM may receive conflicting packets.
Basic mode intentionally stays small. It shows linear acceleration, angular velocity, pitch/roll/yaw, IAS, AGL, stall warning, and engine/propeller RPM. Only appropriate standard and A2A sources are offered for each output.
Expert mode exposes every documented numeric DCS v2 field, compatible built-in and custom sources, input units, mathematical operations, scale, and offset. The source list is also filtered semantically: an acceleration output offers acceleration sources, while an RPM output offers engine/propeller RPM sources. Optional fields such as individual gear positions, control surfaces, weapons, and damage remain available there without cluttering the normal Comanche workflow.
Input units and operations are constrained to combinations that can actually
produce the selected output. For example, velocity may be differentiated into
acceleration, but mph cannot be relabelled as G or RPM. Existing or deliberate
experimental mappings can still be edited in the clearly marked red Raw
mode. Runtime validation remains active, so incompatible channels are not sent.
The app saves its configuration to:
Documents\VFR Multitool\AccuSim DRSM Router\bridge-config.json
CSV recordings are stored in:
Documents\VFR Multitool\AccuSim DRSM Router\logs
Closing the window hides the app in the Windows tray. Use the tray menu to stop the bridge or quit the application completely. While hidden or minimized, the Chromium renderer receives no live telemetry snapshots. SimConnect processing and UDP output continue normally, and the UI receives one current snapshot when it is shown again.
The default profile maps 14 output channels to 13 unique SimConnect sources and
also samples 17 focused diagnostic candidates, with overlaps deduplicated. This
results in 27 values per visual frame in the default configuration. Shared
inputs such as L:Eng1_RPM are subscribed only once. Changing scale or offset
does not reconnect SimConnect; changing an enabled channel's source or sampling
period rebuilds the compact subscription automatically.
The installed Windows app checks the latest public GitHub release at startup. When a newer version is available, it offers Install update or Skip this version. A skipped version stays suppressed on automatic startup checks; a manual check from the app header or tray can offer it again. Telemetry continues while the update downloads. The bridge is stopped only after the user confirms the restart, and a downloaded update is also installed on the next real app exit.
Every release used by the updater must publish these files from the same build:
AccuSim-DRSM-Telemetry-Router-Setup.exeaccusim-drsm-telemetry-router-<version>-x64.nsis.7zlatest.yml
Draft releases are not part of the update channel.
When migrating from an older portable build, the bootstrapper also detects router processes outside the installation directory. It warns before stopping the active bridge, closes both installed and portable process names, and avoids the old tray instance reclaiming Electron's single-instance lock after setup.
Requirements:
- Node.js 22 or newer
- Windows for live SimConnect testing
- MSFS SimConnect runtime
npm ci
npm test
npm startBuild the x64 Windows bootstrapper and updater payload:
npm run build:winThe bootstrapper, payload, and latest.yml metadata are written below
dist/nsis-web/.
- The current mapping is validated against recorded A2A Comanche telemetry, but real motion-platform tuning remains profile- and hardware-dependent.
- Standard MSFS angular velocities are the safe default. Integrated rotational acceleration is experimental and may drift.
- The app currently targets Windows x64 and local SimConnect.
- This bridge is intentionally temporary infrastructure, not a replacement for a future native DRSM source implementation.
Please use this repository's issue tracker for router problems. Do not ask A2A Simulations or Departed Reality to support this unofficial community tool.
This project is not affiliated with, endorsed by, or supported by A2A Simulations, Departed Reality, Microsoft, or Eagle Dynamics. Product and company names belong to their respective owners.
