Maschine.Api
1.0.10
dotnet add package Maschine.Api --version 1.0.10
NuGet\Install-Package Maschine.Api -Version 1.0.10
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="Maschine.Api" Version="1.0.10" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Maschine.Api" Version="1.0.10" />
<PackageReference Include="Maschine.Api" />
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 Maschine.Api --version 1.0.10
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Maschine.Api, 1.0.10"
#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 Maschine.Api@1.0.10
#: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=Maschine.Api&version=1.0.10
#tool nuget:?package=Maschine.Api&version=1.0.10
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Maschine.Api
A .NET library for interacting with Native Instruments Maschine controllers over USB HID.
Currently targets the Maschine Mikro MK3 (VID 0x17CC / PID 0x1700).
Features
- Full HID communication via HidSharp
- RGB pad lighting control (single pad or all pads)
- Pad pressure events (12-bit resolution per pad)
- Button state change events (45 buttons, bit-packed)
- Encoder delta events (9 encoders, signed relative rotation)
- Full testability via injected
IHidDeviceFactoryabstraction - 100% unit test coverage with no hardware required
Installation
dotnet add package Maschine.Api
Quick Start
using Maschine.Api;
using Maschine.Api.Models;
await using var client = new MaschineClient();
await client.ConnectAsync();
// Light all pads red
await client.Pads.SetAllColorsAsync(PadColor.Red);
// React to pad presses
client.Pads.PadChanged += (_, pad) =>
{
if (pad.IsPressed)
Console.WriteLine($"Pad {pad.Index} pressed with pressure {pad.Pressure}");
};
// React to button presses
client.Buttons.ButtonChanged += (_, button) =>
Console.WriteLine($"Button {button.Index} {(button.IsPressed ? "down" : "up")}");
// React to encoder rotation
client.Encoders.EncoderChanged += (_, encoder) =>
Console.WriteLine($"Encoder {encoder.Index} moved by {encoder.Delta}");
Console.ReadLine();
await client.DisconnectAsync();
Device Support
| Device | VID | PID | Status |
|---|---|---|---|
| Maschine Mikro MK3 | 0x17CC | 0x1700 | ✓ |
Requirements
- .NET 10.0 or later
- Windows, macOS, or Linux (HidSharp cross-platform)
- Native Instruments USB driver (Windows) or libusb/hidraw (Linux)
License
MIT — see LICENSE for details.
| Product | Versions 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.
-
net10.0
- HidSharp (>= 2.6.4)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Maschine.Api:
| Package | Downloads |
|---|---|
|
Maschine.Demo
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.10 | 43 | 9/12/2026 |
| 1.0.7 | 79 | 9/9/2026 |
| 1.0.1 | 82 | 9/8/2026 |
| 0.1.21-g0fe8da24b2 | 111 | 6/7/2026 |
| 0.1.20-gc44a055b10 | 106 | 5/13/2026 |
| 0.1.18-g981926cb8b | 93 | 5/4/2026 |
Changelog can be found at https://github.com/panoramicdata/Maschine.Api/blob/main/CHANGELOG.md