SimConnect.NET 0.2.2

dotnet add package SimConnect.NET --version 0.2.2
                    
NuGet\Install-Package SimConnect.NET -Version 0.2.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SimConnect.NET" Version="0.2.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SimConnect.NET" Version="0.2.2" />
                    
Directory.Packages.props
<PackageReference Include="SimConnect.NET" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SimConnect.NET --version 0.2.2
                    
#r "nuget: SimConnect.NET, 0.2.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SimConnect.NET@0.2.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SimConnect.NET&version=0.2.2
                    
Install as a Cake Addin
#tool nuget:?package=SimConnect.NET&version=0.2.2
                    
Install as a Cake Tool

SimConnect.NET

A modern, high-performance C# wrapper for Microsoft Flight Simulator's SimConnect SDK. It simplifies flight simulation development by providing async/await patterns and high-level abstractions, enabling real-time aircraft data monitoring, AI object management, and seamless integration with the simulator through a clean, type-safe API.

⚠️ Beta Software Notice

SimConnect.NET is currently in beta development. APIs may change, features may be added or removed, and breaking changes are expected between releases. Use in production environments at your own discretion and always test thoroughly before deploying.

Features

  • Async/Await Support: Modern asynchronous patterns for all SimConnect operations
  • High-Level Abstractions: Simplified API for common flight simulation tasks
  • Type-Safe Interface: Strong typing with automatic data type inference
  • Real-Time Data: Efficient aircraft data monitoring and SimVar access
  • AI Object Management: Create and manage AI aircraft and objects
  • Multi-Framework Support: Compatible with .NET 8.0 and .NET 9.0

Quick Start

  1. Install the NuGet package:

    dotnet add package SimConnect.NET
    
  2. Basic usage example:

    using SimConnect.NET;
    
    var client = new SimConnectClient();
    await client.ConnectAsync();
    
    // Get aircraft data
    var altitude = await client.SimVars.GetAsync<double>("PLANE ALTITUDE", "feet");
    var airspeed = await client.SimVars.GetAsync<double>("AIRSPEED INDICATED", "knots");
    
    Console.WriteLine($"Altitude: {altitude:F0} ft");
    Console.WriteLine($"Airspeed: {airspeed:F0} kts");
    

Requirements

  • Microsoft Flight Simulator 2020 or later
  • .NET 8.0 or .NET 9.0 runtime
  • SimConnect SDK (included with Flight Simulator)

Documentation

For comprehensive documentation, examples, and API reference, visit our GitHub repository: https://github.com/stopbars/SimConnect.NET

Contributing

We welcome contributions from the community! Please visit our GitHub repository for contribution guidelines, issue reporting, and development information.

License

This project is licensed under the MIT License. See the LICENSE file in the GitHub repository for details.

Disclaimer

SimConnect.NET is an independent third-party software project. We are not affiliated with, endorsed by, or connected to Microsoft Flight Simulator or any other simulation software.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.
  • net9.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on SimConnect.NET:

Repository Stars
RiddleTime/Race-Element
Solutions for Driving and Flight Simulators
Version Downloads Last Updated
0.2.2 334 7/23/2026
0.2.1 508 5/12/2026
0.2.0 129 5/12/2026
0.1.18 1,150 12/29/2025
0.1.17 400 11/14/2025
0.1.16-beta 351 10/20/2025
0.1.15-beta 377 9/23/2025
0.1.14-beta 406 8/25/2025
0.1.13-beta 248 8/24/2025
0.1.12-beta 151 8/23/2025
0.1.11-beta 174 8/22/2025
0.1.10-beta 228 8/21/2025
0.1.9-beta 237 8/20/2025
0.1.8-beta 230 8/10/2025
0.1.7-beta 176 8/10/2025
0.1.6-beta.1 177 8/9/2025
0.1.5-beta 209 8/9/2025
0.1.4-beta 258 8/8/2025
0.1.3-beta 308 8/7/2025
Loading failed

### Added

-   Added MSFS 2024 modular SimObject livery support through `CreateObjectWithLiveryAsync` and the extended SimConnect object-creation API.
-   Added native send ID and parameter index details to `SimConnectErrorEventArgs` for richer error diagnostics.
-   Added a controlled SimObject creation diagnostic and a dedicated unit-test project covering creation success, failure correlation, timeout, and cleanup.

### Changed

-   AI object creation now correlates client request IDs with SimConnect packet IDs so server-side failures complete the correct pending operation immediately.
-   Simulator identification is now awaited before selecting the MSFS 2020 or MSFS 2024 object-creation API.
-   The .NET 8 diagnostic runner now accepts `--no-wait` for non-interactive execution.

### Fixed

-   Object-creation timeouts now surface as `TimeoutException` and remove pending request and packet mappings.
-   Pending creation continuations now run asynchronously, avoiding inline continuation work on the SimConnect message-processing path.