SimpleSharpBLE 1.2.1-dev.87
See the version list below for details.
dotnet add package SimpleSharpBLE --version 1.2.1-dev.87
NuGet\Install-Package SimpleSharpBLE -Version 1.2.1-dev.87
<PackageReference Include="SimpleSharpBLE" Version="1.2.1-dev.87" />
<PackageVersion Include="SimpleSharpBLE" Version="1.2.1-dev.87" />
<PackageReference Include="SimpleSharpBLE" />
paket add SimpleSharpBLE --version 1.2.1-dev.87
#r "nuget: SimpleSharpBLE, 1.2.1-dev.87"
#:package SimpleSharpBLE@1.2.1-dev.87
#addin nuget:?package=SimpleSharpBLE&version=1.2.1-dev.87&prerelease
#tool nuget:?package=SimpleSharpBLE&version=1.2.1-dev.87&prerelease
SimpleSharpBLE
The ultimate cross-platform library and bindings for Bluetooth Low Energy (BLE), designed for simplicity and ease of use.
SimpleSharpBLE provides the C# and .NET bindings for SimpleBLE.
Key Features
- Cross-Platform: Enterprise-grade support for Windows, macOS, Linux, Android, iOS/iPadOS, and Mac Catalyst
- Easy Integration: Clean, consistent API across all platforms
- Multiple Language Bindings: Production-ready bindings for C, C++, C#, Python, Java and Rust, with more coming soon
- Commercial Ready: Source-available commercial license for proprietary applications
Support & Resources
We're here to help you succeed with SimpleBLE:
- Documentation: Visit our Documentation page for comprehensive guides
- Commercial Support: Check our website or email us about licensing and professional services
- Community: Join our Discord server for discussions and help
- Dongl: Try the official SimpleBLE Bluetooth dongle for reliable prototyping and production
Don't hesitate to reach out if you need assistance - we're happy to help!
Installation
Requirements:
- .NET 10
- Windows or glibc-based Linux (x64/ARM64), or macOS 14 or newer on Apple Silicon
- Android 12 or newer (ARM64/x64)
- iOS/iPadOS 15.8 or newer, the iOS simulator, and Mac Catalyst 16.0 or newer (ARM64)
- On Linux, BlueZ and D-Bus; on Ubuntu, install them with
sudo apt-get install bluez libdbus-1-3
Add SimpleSharpBLE to your project from NuGet:
dotnet add package SimpleSharpBLE
Usage
Scan for nearby devices:
using SimpleSharpBLE;
var adapters = Adapter.GetAdapters();
try
{
if (adapters.Count == 0)
{
Console.WriteLine("No Bluetooth adapters found.");
return;
}
var adapter = adapters[0];
Console.WriteLine($"Using adapter: {adapter.Identifier} [{adapter.Address}]");
adapter.ScanFor(TimeSpan.FromSeconds(5));
var peripherals = adapter.ScanGetResults();
try
{
Console.WriteLine("Scan results:");
foreach (var peripheral in peripherals)
{
Console.WriteLine($"- {peripheral.Identifier} [{peripheral.Address}] {peripheral.Rssi} dBm");
}
}
finally
{
foreach (var peripheral in peripherals) peripheral.Dispose();
}
}
finally
{
foreach (var adapter in adapters) adapter.Dispose();
}
See the SimpleSharpBLE documentation for the full API guide and platform setup, and the code examples on GitHub for connect, read/write, notify, and peripheral hosting flows.
Blocking GATT calls also have Async counterparts. Cancellation prevents queued work
from starting; operations already in native code complete normally. Keep write buffers
unchanged until the returned task completes.
The bindings support trimming and NativeAOT. In MAUI, use the same API and platform
setup below; dispatch UI updates from callbacks with MainThread.BeginInvokeOnMainThread.
On Android, enable Bluetooth and grant Nearby devices permissions, then initialize on the application thread before using the API:
Java.Lang.JavaSystem.LoadLibrary("simpleble");
Advanced.Android.Initialize(Java.Interop.JniEnvironment.Runtime.InvocationPointer,
Android.App.Application.Context.Handle);
See the Android scan example for the manifest, runtime permissions, and scanning off the UI thread.
On iOS/iPadOS and Mac Catalyst, set SupportedOSPlatformVersion to at least 15.8 (iOS) or 16.0
(Mac Catalyst), add NSBluetoothAlwaysUsageDescription to your app's Info.plist, and run blocking
BLE operations off the UI thread. Sandboxed Catalyst apps also need the
com.apple.security.device.bluetooth entitlement. Native libraries link automatically;
Advanced.IOS applies to both iOS and Catalyst.
License
Since January 20th 2025, SimpleBLE is now available under the Business Source License 1.1 (BUSL-1.1). Each
version of SimpleBLE will convert to the GNU General Public License version 3 after four years of its initial release.
Qualifying non-commercial users may instead continue using and distributing that version under the original
BUSL-1.1 terms under the Non-Commercial Perpetual Use Grant in LICENSE.md.
The project is free to use for non-commercial purposes, but requires a commercial license for commercial use. We also offer FREE commercial licenses for small projects and early-stage companies - reach out to discuss your use case!
Why purchase a commercial license?
- Build and deploy unlimited commercial applications
- Use across your entire development team
- Zero revenue sharing or royalty payments
- Choose features that match your needs and budget
- Priority technical support included
- Clear terms for integrating into MIT-licensed projects
Looking for information on pricing and commercial terms of service? Visit our website for more details.
For further enquiries, please email us or leave us a message on our website and we can discuss the specifics of your situation.
SimpleBLE is a project powered by The California Open Source Company.
| 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. |
-
net10.0
- No dependencies.
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 |
|---|---|---|
| 1.2.1-dev.124 | 0 | 10/20/2026 |
| 1.2.1-dev.122 | 0 | 10/20/2026 |
| 1.2.1-dev.121 | 0 | 10/20/2026 |
| 1.2.1-dev.116 | 87 | 10/20/2026 |
| 1.2.1-dev.115 | 81 | 10/20/2026 |
| 1.2.1-dev.114 | 100 | 10/19/2026 |
| 1.2.1-dev.106 | 99 | 10/19/2026 |
| 1.2.1-dev.105 | 93 | 10/19/2026 |
| 1.2.1-dev.104 | 98 | 10/18/2026 |
| 1.2.1-dev.103 | 107 | 10/18/2026 |
| 1.2.1-dev.100 | 98 | 10/18/2026 |
| 1.2.1-dev.94 | 101 | 10/17/2026 |
| 1.2.1-dev.90 | 102 | 10/17/2026 |
| 1.2.1-dev.89 | 98 | 10/17/2026 |
| 1.2.1-dev.88 | 98 | 10/17/2026 |
| 1.2.1-dev.87 | 95 | 10/17/2026 |
| 1.2.1-dev.84 | 97 | 10/17/2026 |
| 1.2.1-dev.83 | 97 | 10/17/2026 |
| 1.2.1-dev.82 | 106 | 10/16/2026 |
| 1.2.0 | 149 | 9/28/2026 |