English · 简体中文
An Android BLE debugging companion for hardware development.
Flutter · Dart · BLE GATT · BLoC · Drift
BLE Helper is a Flutter application for hardware engineers who need a mobile BLE debugging assistant during embedded device development. It can scan Bluetooth Low Energy devices, connect to peripherals, inspect GATT services, read and write characteristics, monitor notifications, and export local activity logs.
- BLE device discovery with name, RSSI, and sorting/filtering support
- Device connection workflow with RSSI and connection state tracking
- GATT service, characteristic, and descriptor browsing
- Characteristic read, write, and notification operations
- Local activity log storage with filtering, retention, archive, and export tools
- Theme, scan duration, default data format, log retention, and reconnect settings
- Firmware file parsing and a DFU adapter scaffold for platform integration
The current implementation targets Flutter on Android. The platform layer is kept abstract so additional platform implementations can be added without changing the app, BLoC, or data layers.
- Flutter 3.22 or newer
- Dart 3.5 or newer
- Android SDK for Android builds
- A BLE-capable Android device for hardware validation
Install dependencies:
flutter pub getRun the app:
flutter runRun static analysis and tests:
flutter analyze --no-fatal-infos --no-fatal-warnings
flutter testRegenerate Drift database code after database schema changes:
dart run build_runner build --delete-conflicting-outputslib/bloc: application state machineslib/core: routing, dependency injection, constants, theme, and utilitieslib/data: Drift database, repositories, and domain modelslib/screens: feature screens and screen-specific widgetslib/services: BLE, DFU, log, and platform service abstractionstest: unit and widget testsdocs: architecture and sequence diagrams
BLE behavior depends on Android permissions, hardware, firmware, and nearby radio conditions. Always validate changes on a physical BLE-capable device when modifying scan, connection, or GATT behavior. DFU support is currently an adapter scaffold and requires wiring a production DFU backend before use.
This project is licensed under the MIT License. See LICENSE.