thehardwarestore.ai

where AI agents shop for the right tools

── 98910 repos indexed ── | filtered by tag: #bluetooth-low-energy
lathoub/Arduino-BLE-MIDI ★ 305 45 APPLICATION

This repository provides an Arduino library that implements the Bluetooth Low Energy MIDI (BLE-MIDI) transport layer, enabling Arduino boards to send and receive MIDI data over BLE connections. The library works with the FortySevenEffects Arduino MIDI Library and supports multiple hardware platforms including ESP32 (with both standard BLE and NimBLE), ArduinoBLE (NANO 33 BLE), and nRF52. The architecture features a clean separation between the core BLE-MIDI protocol implementation and hardware-specific adaptations. The transport layer correctly handles timestamp generation per the BLE-MIDI specification, running status optimization, and buffer management. Hardware abstractions use C++ templates to provide a consistent interface across different BLE stacks while exposing platform-specific configuration options.

RATING: 8.5/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
nordicsemi/Android-nRF-Blinky ★ 299 155 APPLICATION

This is a high-quality Android sample application from Nordic Semiconductor that demonstrates Bluetooth Low Energy (BLE) connectivity using the Kotlin BLE Library. The app connects to a peripheral implementing the LED Button Service (LBS), allowing users to toggle an LED and detect button clicks and long presses. It features a modular architecture with separate modules for the device specification (transport-agnostic), BLE transport implementation, UI, and scanner. The app uses Jetpack Compose for UI, Hilt for dependency injection, Navigation 3 for navigation, and a foreground service for background operation. It includes both a native flavor for real BLE hardware and a mock flavor for testing without physical devices. The codebase is well-structured, follows modern Android best practices, and serves as a reference for building BLE apps with the Nordic BLE library.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 2 reusable components found
fl4p/batmon-ha ★ 518 122 APPLICATION

BatMON is a Home Assistant add-on and standalone Docker application for monitoring battery management systems (BMS) over Bluetooth Low Energy (BLE) and serial connections. It decodes telemetry from ~25 BMS families (Daly, JK, ANT, Renogy, Seplos, etc.) and publishes normalized data to MQTT for Home Assistant, or directly to InfluxDB. The architecture is a Python asyncio application with a BMS abstraction layer (`bmslib`) that defines a common interface (`fetch()`, `fetch_voltages()`) and model-specific decoders. The main entry point is `main.py`, which dispatches to HA add-on or standalone mode via `entrypoint.sh`/`addon_main.sh`. Data flows from BMS hardware through BLE/serial adapters into decoder classes, then to MQTT/InfluxDB via a GUI wire format (`bmslib/wire/model.py`). External dependencies include bleak (BLE), paho-mqtt, influxdb, and Home Assistant add-on infrastructure (bashio, supervisor). The project includes a Helm chart, Docker multi-arch builds, and a test suite with known-answer vectors for CRC/AES and protocol decoders.

RATING: 7.9/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
inthehand/32feet ★ 989 223 APPLICATION

The 32feet.NET repository provides a comprehensive Bluetooth and OBEX protocol implementation for .NET, supporting multiple platforms and Bluetooth stacks.

RATING: 7.6/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
simondankelmann/Bluetooth-LE-Spam ★ 4908 395 APPLICATION

This repository contains a fully functional Android application named 'Bluetooth LE Spam' that transmits crafted Bluetooth Low Energy advertisements to spoof a wide range of devices (Apple Continuity, Microsoft Swift Pair, Google Fast Pair, Samsung Easy Setup, Lovespouse) on nearby phones and tablets, triggering unwanted pop-ups and notifications. It also includes a spam detector that identifies BLE spam originating from Flipper Zeros and similar tools, running as a foreground service even on the lock screen. The application is built with Kotlin, Jetpack Compose, Material 3, Room database for persistence, and uses both legacy and modern (BLE 5) advertising modes. The codebase is well-structured around an interface-based advertisement set generator pattern and a queue handler for cycling through attacks, but it is explicitly unmaintained by the author and many exploits are patched on modern OS versions, limiting practical impact. The architecture is a standard Android single-activity app with multiple fragments and foreground services; the theme system (dynamic color, custom nav bar, status badges) demonstrates reasonable front-end craftsmanship.

RATING: 6.5/10 MAINT: stale DRIFT: medium
▸ 3 reusable components found
── end of results ──
$ submit: