Bluetooth Low Energy

repo: dotintent/awesome-ble
category: Platforms


Awesome BLE Awesome

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.

Contents

Hardware

Mobile

Documentation

Official specifications, standards, and technical documentation about the Bluetooth Low Energy (BLE) protocol.

Framework

Framework useful to develop your BLE peripherals.

Library

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.
  • Bluetooth - Bluetooth is a Swift multiplatform package with multiple libraries supporting the Bluetooth SIG specifications.
  • 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.
  • Moddable - JavaScript libraries and tools for microcontrollers development. Includes BLE functionality.

iOS

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.
  • SpeziBluetooth - Connect and communicate with Bluetooth devices using modern programming paradigms.

KMM

Resources and libraries for building Bluetooth Low Energy (BLE) applications using the Kotlin Multiplatform Mobile (KMM) framework.

Android

Android libraries, tools, and resources for integrating Bluetooth Low Energy (BLE) functionality into Android applications.

Flutter

Flutter libraries, tools, and resources for developing Bluetooth Low Energy (BLE) applications using the Flutter framework for both iOS and Android.

Tool

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.
  • PacketLogger - A macOS tool to capture BLE packets and HCI logs from iOS devices, useful for debugging Bluetooth communication and protocol issues.

Web

Web-based resources, frameworks, and tools for building Bluetooth Low Energy (BLE) applications using JavaScript and web technologies.

Security

Security related resources around BLE.

Arduino

A list of resources dedicated to Arduino hardware

ESP

A list of resources dedicated to EspressIf hardware

  • EspressIf - Official Website
  • ESP-IDF - Espressif IoT Development Framework
  • [ESP-32-C3 + Rust + BLE](https://dev.to/theembeddedrustacean/series/26733) - ESP32 Bluetooth w/ Rust Series' Articles

Nordic

A list of resources dedicated to Arduino hardware

RaspberryPi

A list of resources dedicated to RaspberryPi hardware

Articles and Case Studies

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
  • [Deep dive to iOS advertising in backgroud](http://www.davidgyoungtech.com/2020/05/07/hacking-the-overflow-area) - Delves into iOS's proprietary 'Overflow Area' for background Bluetooth advertising and it's possibilities and limitations for background data exchange.

Contributing

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!

[[curator]]
I'm the Curator. I can help you navigate, organize, and curate this wiki. What would you like to do?