android-ble-hardware

Implement Nordic library-based Android BLE scanning and GATT/UART workflows.

8|1|Updated Mar 30, 2026
One-click install
npx skills add https://github.com/drewid74/ai_skills --skill android-ble-hardware
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: android-ble-hardware
Source: https://github.com/drewid74/ai_skills/tree/main/android-ble-hardware
Command: npx skills add https://github.com/drewid74/ai_skills --skill android-ble-hardware

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill solves the challenge of building a dependable Android BLE hardware integration where device discovery, connection management, GATT service handling, and byte-level telemetry parsing work correctly across real-world peripherals.

Core Features & Use Cases

  • Nordic BLE integration: Uses the Nordic Semiconductor BLE library to avoid fragile raw BluetoothGatt callback handling.
  • UART/GATT workflow: Supports UART-style services with characteristic discovery, notification setup, and queued write operations for command/telemetry flows.
  • Lifecycle reliability: Implements connection lifecycle management with automatic reconnection patterns and safer Flow-based scanning.

Use it when you connect to a BLE peripheral like a GPS logger, sensor hardware, or OBD-II adapter, then scan by UUID or name pattern, receive binary packets, frame them into complete messages, and route telemetry into your app.

Quick Start

Use the android-ble-hardware skill to implement Nordic-based BLE scanning and a BleManager subclass for your BLE peripheral’s GATT profile, then parse incoming UART bytes into complete telemetry frames.

Frequently Asked Questions about android-ble-hardware

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement reliable Android BLE scanning and connection management?

Implement reliable Android BLE scanning using Flow-based callbacks for discovery and a Nordic BLE library architecture to manage connections. This avoids fragile raw BluetoothGatt callbacks and supports automatic reconnection patterns.

How do I parse binary telemetry packets from a BLE UART notification stream?

Parse binary telemetry packets from BLE UART notifications by applying stateful byte buffering. This process extracts complete telemetry frames from streamed notifications before routing the data into your application.

Does this Nordic BLE approach handle Android 12 runtime permissions for device discovery?

Yes, the Nordic BLE integration handles Android 12+ runtime permission requirements for device discovery. It manages UUID- or name-pattern device selection and multi-device type detection during the scanning phase.

What is the best way to validate required GATT services before connecting to BLE hardware?

The best way to validate required GATT services is using a BleManagerGattCallback. This mechanism verifies required services and characteristics before completing the connection to your BLE peripheral.

Why does my raw BluetoothGatt callback handling fail with multi-device BLE telemetry?

Raw BluetoothGatt callback handling fails because it lacks stateful byte buffering and queued write operations. Using a Nordic BLE library with proper GATT workflows ensures reliable multi-device telemetry ingestion and packet framing.