PAP3N-DOTNET 0.0.6

dotnet add package PAP3N-DOTNET --version 0.0.6
                    
NuGet\Install-Package PAP3N-DOTNET -Version 0.0.6
                    
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="PAP3N-DOTNET" Version="0.0.6" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="PAP3N-DOTNET" Version="0.0.6" />
                    
Directory.Packages.props
<PackageReference Include="PAP3N-DOTNET" />
                    
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 PAP3N-DOTNET --version 0.0.6
                    
#r "nuget: PAP3N-DOTNET, 0.0.6"
                    
#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 PAP3N-DOTNET@0.0.6
                    
#: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=PAP3N-DOTNET&version=0.0.6
                    
Install as a Cake Addin
#tool nuget:?package=PAP3N-DOTNET&version=0.0.6
                    
Install as a Cake Tool

This library allows you to connect to Winctrl 737 MCP programmatically to:

  1. Read status of button presses by subscribing to change events
  2. Set each LED on or off
  3. Display text on the 7 segment displays with support for decimal points and special features like +/- symbols on vertical speedi indicator, etc
  4. Control the A/T Solenoid same way as an LED (ie case 2)

This has not been battle tested and Im not 100% sure if it will work with all versions of PAP3N out there as I only can test on mine, but you can adapt and change the code as needed, or send the device to me along with a case of beer 😉

How was this done?

  1. Install Wireshark

  2. Observe what reports are sent between your machine and the device, as you play around with settings Winctrl's SimAppPro. For example, I found that:

    1. Displays are controlled as a single 128 byte report/package sent to the device. Inside it are bit encoded (that is each segment corresponds to some bit) displays and decimal points

    2. Button presses are sent as a single report, where each button is sent as a bit somewhere in the report (see the code for reference)

    3. Position of rotrary encoders is sent as a 16 bit counters and individual button presses; I only tap into the counters.

Provided example code connects to the device and demonstrates most of the functionality of how to process input and send output.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.6 116 3/15/2026
0.0.5 109 3/11/2026
0.0.4 117 3/11/2026
0.0.3 109 3/9/2026
0.0.2 104 3/7/2026
0.0.1 102 3/7/2026