Bluetooth Low Energy (BLE): Low-power wireless communication protocol enabling efficient data exchange between devices, ideal for IoT, wearables, and other battery-powered applications.
A collaborative list of Awesome Bluetooth Low Energy resources by 🔴 intent.
Official specifications, standards, and technical documentation about the Bluetooth Low Energy (BLE) protocol.
- Android Bluetooth Low Energy - Overview about BLE in Android.
- Developing a Bluetooth Low Energy Application by TI - A guide by TI about how to develop a BLE app.
- Getting Started with Bluetooth Low Energy (BLE) - A comprehensive guide to getting started with Bluetooth Low Energy development.
- Intro to Bluetooth Generic Attribute Profile (GATT) - Intro about GATT.
- Intro to Bluetooth Low Energy - Intro about the basics of BLE.
- IoT for Beginners - Azure Cloud Advocates at Microsoft are pleased to offer a 12-week, 24-lesson curriculum all about IoT basics.
- nRF51 SDK - Software Development Kit (SDK) for developing Bluetooth Low Energy applications on Nordic Semiconductor's nRF51 series of chips.
- RN4870/71 Bluetooth Low Energy Module User's Guide - User's guide for the RN4870/71 Bluetooth Low Energy module by Microchip.
- Wikipedia Bluetooth Low Energy - The wiki page for Bluetooth Low Energy (BLE).
Framework useful to develop your BLE peripherals.
Software libraries and frameworks for integrating Bluetooth Low Energy (BLE) functionality into various platforms, including mobile, embedded systems, and IoT devices.
- bluepy - A Python interface for Bluetooth LE on Linux.
- bluez - The official Linux Bluetooth protocol stack.
- bumble - Bumble is a full-featured Bluetooth stack written entirely in Python.
- pygatt - A Python library for interacting with BLE devices.
- SimpleBLE - The all-in-one C/C++/Python/Rust Bluetooth LE library for MacOS, iOS, Windows, and Linux.
iOS libraries, tools, and resources for developing Bluetooth Low Energy (BLE) applications on Apple devices.
- AsyncBluetooth - A small library that adds concurrency to CoreBluetooth APIs.
- CombineCoreBluetooth - CombineCoreBluetooth is a library that bridges Apple's CoreBluetooth framework and Apple's Combine framework.
- iOS DFU Library - DFU application allows to flash new firmware on the DK.
- Rx Bluetooth Kit - RxBluetoothKit is a Bluetooth library that makes interaction with BLE devices much more pleasant using RxSwift.
- Swifty Sensors - Bluetooth LE Sensor Manager for iOS and macOS.
Resources and libraries for building Bluetooth Low Energy (BLE) applications using the Kotlin Multiplatform Mobile (KMM) framework.
- BlueFalcon - A Bluetooth kotlin multiplatform "Cross-Platform" library for iOS and Android.
- Kable - Kotlin Asynchronous Bluetooth Low Energy provides a simple Coroutines-powered API for interacting with Bluetooth Low Energy devices.
Android libraries, tools, and resources for integrating Bluetooth Low Energy (BLE) functionality into Android applications.
- Android BluetoothGatt Sample - An example application demonstrating how to use BluetoothGatt API on Android.
- android-BluetoothChat - An Android Bluetooth chat application.
- FastBle - An Android Bluetooth Low Energy (BLE) fast development framework.
- Nordic Semiconductor BLE SDK for Android - Official Bluetooth Low Energy SDK provided by Nordic Semiconductor for Android development.
- RxAndroidBle - An Android Bluetooth Low Energy (BLE) Library with RxJava3 interface.
- SmartGattLib - SmartGattLib is a Java library that simplifies the work with Bluetooth SMART devices (a.k.a. Bluetooth Low Energy in Bluetooth 4.0). It provides all UUIDs of the adopted GATT specification and an convenient way to interpret the characteristics (e.g. Heart Rate, BatteryLevel).
Flutter libraries, tools, and resources for developing Bluetooth Low Energy (BLE) applications using the Flutter framework for both iOS and Android.
- Flutter Blue Plus - Flutter Blue Plus is a bluetooth plugin for Flutter, a new app SDK to help developers build modern multi-platform apps.
- Flutter Reactive BLE - Flutter Reactive BLE is a Flutter library that handles BLE operations for multiple devices.
- Flutter BLELib - Bluetooth Low Energy library for Flutter with support for simulating peripherals.
Development and testing tools for Bluetooth Low Energy (BLE) applications, including analyzers, debuggers, and simulators.
- Bettercap - A easily extensible and portable framework for security researchers to test BLE security.
- nRF Connect - An application framework for developing, testing, and provisioning devices based on Nordic Semiconductor chips.
- BLE Simulator - A mobile app able to clone BLE devices and script their interaction. Useful to debug and quick prototyping.
Web-based resources, frameworks, and tools for building Bluetooth Low Energy (BLE) applications using JavaScript and web technologies.
- Web Bluetooth Device Info - Web Bluetooth demo to get information about a connected Bluetooth device.
- Web Bluetooth Samples - A collection of Web Bluetooth API usage examples.
Security related resources around BLE.
- Awesome Bluetooth Security - An awesome repo related to Bluetooth (and also BLE) realted security
A list of resources dedicated to Arduino hardware
- Arduino - Official website
- ArduinoBLE - ArduinoBLE library for Arduino
A list of resources dedicated to EspressIf hardware
- EspressIf - Official Website
- ESP-IDF - Espressif IoT Development Framework
- ESP-32-C3 + Rust + BLE - ESP32 Bluetooth w/ Rust Series' Articles
A list of resources dedicated to Arduino hardware
- Nordic Semiconductor - Official Website
A list of resources dedicated to RaspberryPi hardware
- Raspberry Pi - Official website
Interesting articles and case studies from BLE development
- Scan and connect to BLE in background on iOS - Article discussing case study (for both firmware and app) of scanning and connecting to BLE device in background
Please take a quick look at the contribution guidelines first.
If you see an entry longer maintained or is not a good fit, please submit a pull request to improve this file.
Thank you to all contributors; you rock!