# C# API (AR51.Net) release notes

Release notes for the **AR 51 C# API (AR51.Net)**, the .NET library that connects your own software to an AR 51 system. Newest release first.

:::tip[Get it]
Install with `dotnet add package AR51.Net` from nuget.org — or download the package from the **[download page](/download/)**. See **[Install & quickstart](/docs/csharp-api/install/)**.
:::

## 3.0.3.2R

_First release · NuGet package 3.0.302 · .NET 8 and .NET 10 · Windows and Linux (x64) · tested with AR 51 server 3.2.0 and 3.2.1_

The first release of the AR 51 C# API: connect any .NET 8+ application to an AR 51 system, with no game engine.

### Connecting

- `AR51Client.Create()` finds the AR 51 server on the local network automatically, or connects to a host you give.
- Reconnects by itself when a server restarts or the network drops, and detects a silently dead server within seconds.
- `ConnectionStateChanged` reports `Connecting`, `Connected` and `Disconnected`.

### Live data

- **Skeletons:** 25 body joints in meters with per-joint confidence, hands (23 joints) from hand-tracking headsets, the registered person's name and headset, capture and receive times.
- **Object detection:** tracked objects with position and rotation.
- Receive with events or with `await foreach`.

### System control

- **Servers:** status of every AR 51 machine; launch, quit, force-quit and relaunch the server program; start and stop tracking.
- **Cameras:** list with calibration values; live JPEG preview sized to your view; image settings (exposure, gain, gamma, color balance, rotate, exclude from tracking); color-balance auto-tune.
- **Calibration:** start and stop camera calibration, with live progress and error and the result; read and set the tracked area.
- **Recording:** record tracking data and video from the cameras you choose, at each camera's own resolution.
- **Devices:** connected headsets, apps and phones, with battery levels.

### Good to know

- Everything is thread-safe; use one client per application.
- Errors are reported as `AR51Exception` with an `ErrorCode`.

See the **[C# API documentation](/docs/csharp-api/overview/)** and the **[API reference](/docs/sdk-api/csharp-api/)**.
