quick_blue
適用於 Flutter 的跨平台(Android/iOS/macOS/Windows/Linux)BluetoothLE 插件
- 星標
- 138
- 分支
- 72
- 最近推送(UTC)
- 2024年7月17日
- 專案狀態
- 未封存
原始 README
以下為英文專案原文快照,最新內容請造訪 GitHub。
quick_blue
A cross-platform (Android/iOS/macOS/Windows/Linux) BluetoothLE plugin for Flutter
Note: It is a federated plugin structure
Usage
- Scan BLE peripheral
- Connect BLE peripheral
- Discover services of BLE peripheral
- Transfer data between BLE central & peripheral
General useful Bluetooth information
https://www.bluetooth.com/blog/4-essential-tools-for-every-bluetooth-low-energy-developer/
-
Client Emulator Apps
-
Bluetooth Sniffer
- High-end/commercial: Ellisys sniffers, Teledyne LeCroy sniffers (formerly Frontline), the Spanalytics PANalyzr
- Low-cost: TI CC2540 USB dongle sniffer, Nordic nRF sniffer, Ubertooth One
iOS/macOS specific info
On iOS/macOS some common service/characteristic would be shortened. Be careful when comparing the UUID. I haven't finished the refactor of notepad_core to quick_blue yet
On the Dart side you'd better call like: https://github.com/woodemi/notepad_core/blob/b0e329f3d6e02f14f8a0e5e48a6ddb48e026b658/notepad_core/lib/woodemi/WoodemiClient.dart#L245-L256
const CODE__SERV_BATTERY = "180f";
const CODE__CHAR_BATTERY_LEVEL = "2a19";
const SERV__BATTERY = "0000$CODE__SERV_BATTERY-$GSS_SUFFIX";
const CHAR__BATTERY_LEVEL = "0000$CODE__CHAR_BATTERY_LEVEL-$GSS_SUFFIX";
Common service/characteristic list
- Official: https://www.bluetooth.com/specifications/specs/gatt-specification-supplement-5/
- gist: https://gist.github.com/sam016/4abe921b5a9ee27f67b3686910293026
Windows specific info
Doc of samples: https://docs.microsoft.com/en-us/samples/microsoft/windows-universal-samples/bluetoothle Code of samples: https://github.com/microsoft/windows-universal-samples/tree/main/Samples/BluetoothLE
Some other help
- Nordic Semiconductor: Dev Zone, e.g. this post
- LightBlue: Windows tool, Docs
There is a version restriction with Connection without pairing on C++/WinRT and Windows 10
- https://answers.microsoft.com/en-us/windows/forum/all/reconnecting-a-paired-bluetooth-device-without/90b42dd3-2998-4393-9d89-1624e120502f
- https://stackoverflow.com/questions/55765090/windows-bluetooth-le-require-pairing-before-connection
- https://social.msdn.microsoft.com/Forums/azure/en-US/66d6fb43-e41e-4751-99fe-170b8f63ad22/uwpcc-uwp-bluetooth-communication-without-pairing?forum=wpdevelop
Linux specific info
- BlueZ official: http://www.bluez.org/
- Ubuntu official: https://ubuntu.com/core/docs/bluez
- Ubuntu
bluezpackage: https://github.com/canonical/bluez.dart - Doc of samples: https://www.bluetooth.com/wp-content/uploads/2019/03/T1804_How-to-set-up-BlueZ_LFC_FINAL-2.pdf
分類
如何選擇適合專案的儲存庫?
先依使用情境篩選,再比較專案活躍情況,最後到原始儲存庫確認使用要求。
- 透過儲存庫名稱、作者或描述搜尋,再依技術分類縮小範圍。
- 綜合星標、分支與最近推送比較專案;星標反映社群關注,不保證品質。
- 使用前在 GitHub 確認 README、授權條款與 Issues。
來源與維護
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗