# simpleble/simpleble

SimpleBLE - the all-in-one Bluetooth library for MacOS, iOS, Windows, Linux and Android.

Repository: https://github.com/simpleble/simpleble
Canonical: https://ross.abutalabs.com/products/simpleble
Homepage: https://www.simpleble.org
Language: C++
License: NOASSERTION
License Family: other
Topics: windows, linux, macos, driver, bluetooth, cpp, c, ios, python3, bluez, dbus, rust-library, android, cross-platform, platform-independent, asyncio, python
Last push: 2026-09-02T06:13:51+00:00

## Health v2 (maintenance only)
Score: 95/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 85, longevity 100
- inputs: {"age_days": 2058, "days_push": 0, "days_rel": 23, "gap_med": 35, "n_releases_24m": 12}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1124, forks 181 (observed 2026-09-03T02:15:17.890309+00:00)

## What it is
SimpleBLE is a cross-platform Bluetooth Low Energy library offering a unified C++ API with bindings for C, Python, Java, Rust, Kotlin, and Unreal Engine. It wraps native OS stacks (WinRT, CoreBluetooth, BlueZ, Android Bluetooth) and is dual-licensed under BUSL-1.1 with commercial licensing options.

## Use cases
- scan for BLE devices from a cross-platform C++ app
- connect to a heart rate monitor from Python
- build a BLE peripheral on Windows and macOS with one codebase
- add Bluetooth LE support to an Android app from Java or Kotlin
- use Bluetooth in an Unreal Engine game or simulation
- prototype BLE automation scripts in Python
- read sensor data from an IoT device over BLE

## When to choose
- you need one BLE API across Windows, macOS, Linux, iOS, and Android
- you want vendor-supported, production-grade Bluetooth with commercial licensing
- you need bindings in C++, C, Python, Java, Rust, or Unreal Engine
- you need both central and peripheral BLE roles

## When to avoid
- you need a permissively licensed library for commercial use without paying or waiting for GPL conversion
- you only target Linux and prefer a lightweight BlueZ wrapper
- you need Bluetooth Classic (BR/EDR) rather than BLE
- you need a mature OSI-approved open-source license for redistribution

## Facets
- artifact type: library
- maturity: active
- function: sdk, developer-tools
- domain: developer-tools, cross-platform, hardware
- platform: windows, cpp, python, rust, cross-platform
- tags: bluetooth, bluetooth-low-energy, ble, bindings, dual-licensed, busl, unreal-engine, macos, linux, android, ios

## Member repositories
- simpleble/simpleble (main) score 95

## Provenance
- Observed fields: from GitHub, fetched 2026-09-03T02:15:17.890309+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:41:50.249943+00:00, confidence not recorded.
  - readme: https://github.com/simpleble/simpleble (fetched 2026-09-03T02:15:17.890309+00:00, sha 4352d8b3273c)
  - homepage: https://www.simpleble.org (fetched 2026-08-29T12:45:30.815815+00:00, sha cf273368ef5c)
  - site_page: https://docs.simpleble.org (fetched 2026-08-29T12:45:30.827727+00:00, sha 4ad605439ef5)
  - site_page: https://simpleble.org/pricing (fetched 2026-08-29T12:45:30.825121+00:00, sha 31a02de4d17f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
