bluetooth_low_energy
A Flutter plugin for controlling the bluetooth low energy, supports central and peripheral roles.
6.2.1
11K downloads/mo
#2812 most downloaded on pub.dev
yanshouwang/bluetooth_low_energy
What this package is like to depend on
Last release 7 months ago
17 Jan 2026
Ships unpredictably
gaps range from 2 weeks to 13 months
Nearly every release is documented
notes for 30 of 30 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
43 releases · first in 2021
2 releases in the last 12 months
see the full history below
Release timeline
43 releases · Jul 2021 to Jan 2026Releases
latest 43-
7.0.0-dev.015 Jun 2024 pre-releaseNothing published for this version
-
6.2.117 Jan 2026 -
6.2.013 Jan 2026Release notes
Open source →-
临时提交
-
添加发布脚本
-
fvm use 3.35.7
-
临时提交
-
优化代码
-
更新版本号,CHANGELOG.md
-
更新README.md
-
更新GATTServiceImpl类中的includedServices方法实现,抛出不支持的错误
-
支持 Swift Package Manager
-
更新 CHANGELOG.md
Release notes
Open source →- Upgrade flutter SDK to 3.35.7.
AndroidAddCentralManager.getPeripheralmethod.AndroidAddPeripheralManager.getCentralmethod.AndroidAddPeripheralManager.retrieveConnectedCentralsmethod.AndroidAddPeripheralManager.disconnectmethod.AndroidRemove permission declarations fromAndroidManifest.xml.iOS,macOSSupport Swift Package Manager.iOS,macOSFix race condition when isReady is delivered early.
-
-
6.1.029 Jul 2025Release notes
Open source →- Upgrade flutter SDK to 3.29.3.
- Upgrade dependencies.
- Remove location usage when target Android 12 or higher.
- Show bluetooth authorization as needed on iOS.
-
6.0.230 Jun 2024 -
6.0.109 Jun 2024Release notes
Open source →AndroidFix the issue that advertisement name is wrong when advertising.
-
6.0.003 Jun 2024Release notes
Open source →- Add
CentralManager#retrieveConnectedPeripheralsmethod. - Add optional
serviceUUIDsargument to theCentralManager#startDiscoverymethod. - Add
CentralManager#mtuChangedevent. - Add
PeripheralManager#mtuChangedevent. - Add
BluetoothLowEnergyManager#authorizemethod. - Add
BluetoothLowEnergyManager#showAppSettingsmethod. - Add
CentralManager#requestMTUmethod. - Add
CentralManager#getMaximumWriteLengthmethod. - Add
PeripheralManager#connectionStateChangedevent. - Add
PeripheralManager#characteristicReadRequestedevent. - Add
PeripheralManager#characteristicWriteRequestedevent. - Add
PeripheralManager#descriptorReadRequestedevent. - Add
PeripheralManager#descriptorWriteRequestedevent. - Add
PeripheralManager#getMaximumNotifyLengthmethod. - Add
PeripheralManager#respondReadRequestWithValuemethod. - Add
PeripheralManager#respondReadRequestWithErrormethod. - Add
PeripheralManager#respondWriteRequestmethod. - Add
PeripheralManager#respondWriteRequestWithErrormethod. - Add
ConnectionStateenum. - Add
GATTService.isPrimaryfield. - Add
GATTService#includedServicesfield. - Add
MutableGATTCharacteristic#permissionsfield. - Add
MutableGATTDescriptor#permissionsfield. - Add
inttype toUUID#fromAddress. - Move
CentralManger.instanceto factory constructor. - Move
PeripheralManager.instanceto factory constructor. - Move the type of
Advertisement#manufacturerSpecificDatatoList<ManufacturerSpecificData>. - Move
BluetoothLowEnergyManager#getStatetoBluetoothLowEnergyManager#state. - Move
PeripheralManager#clearServicestoPeripheralManager#removeAllServices. - Remove
BluetoothLowEnergyManager#setUpmethod. - Remove
PeripheralManager#characteristicReadevent. - Remove
PeripheralManager#characteristicWrittenevent. - Remove
PeripheralManager#readCharacteristicmethod. - Remove
PeripheralManager#writeCharacteristicmethod. - Fix the issue that
Cannot access value of empty optional. - Fix known issues.
- Rewrite example with MVVM.
- Add
-
6.0.0-dev.303 Jun 2024 pre-releaseRelease notes
Open source →- Implement
CentralMananger#showAppSettingson iOS. - Implement
PeripheralManager#showAppSettingson iOS. - Fix known issues.
- Implement
-
6.0.0-dev.203 Jun 2024 pre-releaseRelease notes
Open source →- Add
inttype toUUID#fromAddress. - Move the type of
Advertisement#manufacturerSpecificDatatoList<ManufacturerSpecificData>. - Rewrite example with MVVM.
- Fix known issues.
- Add
-
6.0.0-dev.124 May 2024 pre-releaseRelease notes
Open source →- Add
PeripheralManager#respondReadRequestWithValue. - Add
PeripheralManager#respondReadRequestWithError. - Add
PeripheralManager#respondWriteRequest. - Add
PeripheralManager#respondWriteRequestWithError. - Remove
PeripheralManager#respondCharacteristicReadRequestWithValue. - Remove
PeripheralManager#respondCharacteristicReadRequestWithError. - Remove
PeripheralManager#respondCharacteristicWriteRequest. - Remove
PeripheralManager#respondCharacteristicWriteRequestWithError. - Remove
PeripheralManager#respondDescriptorReadRequestWithValue. - Remove
PeripheralManager#respondDescriptorReadRequestWithError. - Remove
PeripheralManager#respondDescriptorWriteRequest. - Remove
PeripheralManager#respondDescriptorWriteRequestWithError.
- Add
-
6.0.0-dev.016 May 2024 pre-releaseRelease notes
Open source →- Add
CentralManager#retrieveConnectedPeripheralsmethod. - Add optional
serviceUUIDsargument to theCentralManager#startDiscoverymethod. - Add
CentralManager#mtuChangedevent. - Add
PeripheralManager#mtuChangedevent. - Add
BluetoothLowEnergyManager#authorizemethod. - Add
BluetoothLowEnergyManager#showAppSettingsmethod. - Add
CentralManager#requestMTUmethod. - Add
CentralManager#getMaximumWriteLengthmethod. - Add
PeripheralManager#connectionStateChangedevent. - Add
PeripheralManager#characteristicReadRequestedevent. - Add
PeripheralManager#characteristicWriteRequestedevent. - Add
PeripheralManager#descriptorReadRequestedevent. - Add
PeripheralManager#descriptorWriteRequestedevent. - Add
PeripheralManager#getMaximumNotifyLengthmethod. - Add
PeripheralManager#respondCharacteristicReadRequestWithValuemethod. - Add
PeripheralManager#respondCharacteristicReadRequestWithErrormethod. - Add
PeripheralManager#respondCharacteristicWriteRequestmethod. - Add
PeripheralManager#respondCharacteristicWriteRequestWithErrormethod. - Add
PeripheralManager#respondDescriptorReadRequestWithValuemethod. - Add
PeripheralManager#respondDescriptorReadRequestWithErrormethod. - Add
PeripheralManager#respondDescriptorWriteRequestmethod. - Add
PeripheralManager#respondDescriptorWriteRequestWithErrormethod. - Add
ConnectionStateenum. - Add
GATTService.isPrimaryfield. - Add
GATTService#includedServicesfield. - Add
MutableGATTCharacteristic#permissionsfield. - Add
MutableGATTDescriptor#permissionsfield. - Move
BluetoothLowEnergyManager#getStatetoBluetoothLowEnergyManager#state. - Move
PeripheralManager#clearServicestoPeripheralManager#removeAllServices. - Move
CentralManger.instanceto factory constructor. - Move
PeripheralManager.instanceto factory constructor. - Remove
BluetoothLowEnergyManager#setUpmethod. - Remove
GATTCharacteristicReadEventArgsclass. - Remove
GATTCharacteristicWrittenEventArgsclass. - Remove
PeripheralManager#characteristicReadevent. - Remove
PeripheralManager#characteristicWrittenevent. - Remove
PeripheralManager#readCharacteristicmethod. - Remove
PeripheralManager#writeCharacteristicmethod. - Fix the issue that
Cannot access value of empty optional.
- Add
-
5.0.707 Apr 2024Release notes
Open source →AndroidFix the issue that Advertisement resolve failed withNullPointerException
-
5.0.601 Feb 2024Release notes
Open source →AndroidFix the issue that throws when read the CCCD(Client Characteristic Config Descriptor, 0x2902).AndroidiOSUpdate characteristic's value when write by centrals.- Implements new Api.
-
5.0.519 Jan 2024Release notes
Open source →WindowsFix theCentralManager#discoverGATT,CentralManager#readCharacteristicandCentralManager#readDescriptorissue caused by cache mode.
-
5.0.417 Jan 2024 -
5.0.317 Jan 2024Release notes
Open source →AndroidFix the wrong blutooth low energy state caused by multi permission requests at the same time.AndroidFix the ConcurrentModificationException whenPeripheralManager#clearServicesis called.
-
5.0.216 Jan 2024 -
5.0.115 Jan 2024 -
5.0.030 Dec 2023Release notes
Open source →- Now
CentralManager#writeCharacteristicandPeripheralManager#writeCharacteristicwill fragment the value automatically, the maximum write length is 512 bytes. - Add implementation of
CentralManageron windows platform. - Add
GattCharacteristicReadEventArgsandGattCharacteristicWrittenEventArgs. - Add
PeripheralManager#characteristicReadandPeripheralManager#characteristicWritten. - Add
PeripheralManager#readCharacteristic. - Remove
CentralManager#getMaximumWriteLengthmethod. - Remove
PeripheralManager#getMaximumWriteLengthmethod. - Remove
ReadGattCharacteristicCommandEventArgsandWriteGattCharacteristicCommandEventArgs. - Remove
PeripheralManager#readCharacteristicCommandReceivedandPeripheralManager#writeCharacteristicCommandReceived. - Remove
PeripheralManager#sendReadCharacteristicReplyandPeripheralManager#sendWriteCharacteristicReply. - Move
CentralManager#statetoCentralManager#getState(). - Move
PeripheralStateChangedEventArgstoConnectionStateChangedEventArgs. - Move
CentralManager#peripheralStateChangedtoCentralManager#connectionStateChanged. - Move
GattCharacteristicValueChangedEventArgstoGattCharacteristicNotifiedEventArgs. - Move
CentralManager#characteristicValueChangedtoCentralManager#characteristicNotified. - Move
CentralManager#notifyCharacteristictoCentralManager#setCharacteristicNotifyState. - Move
PeripheralManager#notifyCharacteristicValueChangedtoPeripheralManager#writeCharacteristic. - Move
NotifyGattCharacteristicCommandEventArgstoGattCharacteristicNotifyStateChangedEventArgs. - Move
PeripheralManager#notifyCharacteristicCommandReceivedtoPeripheralManager#characteristicNotifyStateChanged.
- Now
-
5.0.0-dev.327 Dec 2023 pre-release -
5.0.0-dev.227 Dec 2023 pre-release -
5.0.0-dev.127 Dec 2023 pre-releaseRelease notes
Open source →- Now
CentralManager#writeCharacteristicandPeripheralManager#writeCharacteristicwill fragment the value automatically, the maximum write length is 512 bytes. - Add
UUID#fromAddressconstructor. - Add
GattCharacteristicReadEventArgsandGattCharacteristicWrittenEventArgs. - Add
PeripheralManager#characteristicReadandPeripheralManager#characteristicWritten. - Add
PeripheralManager#readCharacteristic. - Remove
CentralManager#getMaximumWriteLengthmethod. - Remove
PeripheralManager#getMaximumWriteLengthmethod. - Remove
ReadGattCharacteristicCommandEventArgsandWriteGattCharacteristicCommandEventArgs. - Remove
PeripheralManager#readCharacteristicCommandReceivedandPeripheralManager#writeCharacteristicCommandReceived. - Remove
PeripheralManager#sendReadCharacteristicReplyandPeripheralManager#sendWriteCharacteristicReply. - Move
CentralManager#statetoCentralManager#getState(). - Move
PeripheralStateChangedEventArgstoConnectionStateChangedEventArgs. - Move
CentralManager#peripheralStateChangedtoCentralManager#connectionStateChanged. - Move
GattCharacteristicValueChangedEventArgstoGattCharacteristicNotifiedEventArgs. - Move
CentralManager#characteristicValueChangedtoCentralManager#characteristicNotified. - Move
CentralManager#notifyCharacteristictoCentralManager#setCharacteristicNotifyState. - Move
PeripheralManager#notifyCharacteristicValueChangedtoPeripheralManager#writeCharacteristic. - Move
NotifyGattCharacteristicCommandEventArgstoGattCharacteristicNotifyStateChangedEventArgs. - Move
PeripheralManager#notifyCharacteristicCommandReceivedtoPeripheralManager#characteristicNotifyStateChanged.
- Now
-
4.0.030 Oct 2023Release notes
Open source →- Remove
BluetoothLowEnergyclass. - Update
CentralMangerto extendsPlatformInterface. - Update
PeripheralManagerto extendsPlatformInterface. - Change some
PeripheralManagermethods' arguments to required optional arguments. - Move
AdvertiseDataclass toAdvertisementclass. - Remove
BluetoothLowEnergyErrorclass. - Add
MyCentralManagerandMyPeripheralManagerabstract classes. - Add
LogControllerinterface toBluetoothLowEnergyManager. - Fix issues.
- Remove
-
4.0.0-dev.125 Oct 2023 pre-releaseRelease notes
Open source →- Remove
BluetoothLowEnergyclass. - Update
CentralMangerto static class. - Update
PeripheralManagerto static class. - Move
AdvertiseDataclass toAdvertisementclass. - Update
example.
- Remove
-
3.0.321 Oct 2023 -
3.0.218 Oct 2023Release notes
Open source →AndroidiOSFix the issue thatgetMaximumWriteLengthis wrong and coerce the value from 20 to 512.AndroidiOSFix the issue that the peripheral manager response is wrong.AndroidRequest MTU with 517 automatically.
-
3.0.112 Oct 2023Release notes
Open source →AndroidClear cache when disconnected.AndroidFix GATT server error aftter bluetooth reopened.iOSFix the issue that write characteristic will never complete when write without response.iOSFix the issue that write characteristic will never complete after disconnected.
-
3.0.010 Oct 2023Release notes
Open source →- Add
PeripheralManagerapi. - Add
CentralManager#readRSSImethod. - Add
CentralManager.instanceapi. - Add
PeripheralManager.instanceapi. - Move
CentralControllertoCentralManager. - Move
CentralStatetoBluetoothLowEnergyState. - Move
CentralDiscoveredEventArgstoDiscoveredEventArgs. - Move
Advertisementclass toAdvertiseDataclass. - Move
setUpmethod fromBluetoothLowEnergyclass toBluetoothLowEnergyMangerclass. - Change the type of
manufacturerSpecificDatafromMap<int, Uint8List>toManufacturerSpecificData. - Fix the issue that
UUID.fromString()throw FormatException with 32 bits UUID string. - Fix known issues.
- Add
-
3.0.0-dev.410 Oct 2023 pre-release -
3.0.0-dev.309 Oct 2023 pre-releaseRelease notes
Open source →- Fix the issue that
UUID.fromString()throw FormatException with 32 bits UUID string. - Change the type of
manufacturerSpecificDatafromMap<int, Uint8List>toManufacturerSpecificData.
- Fix the issue that
-
3.0.0-dev.207 Oct 2023 pre-releaseRelease notes
Open source →- Move
setUpmethod fromBluetoothLowEnergyclass toBluetoothLowEnergyMangerclass. - Add
CentralManager.instanceapi. - Add
PeripheralManager.instanceapi.
- Move
-
3.0.0-dev.106 Oct 2023 pre-releaseRelease notes
Open source →- Add
PeripheralManagerapi. - Add
CentralManager#readRSSImethod. - Move
CentralControllertoCentralManager. - Move
CentralStatetoBluetoothLowEnergyState. - Move
CentralDiscoveredEventArgstoDiscoveredEventArgs.
- Add
-
2.2.111 Sep 2023Release notes
Open source →AndroidFix the issue thatCentralController#getMaximumWriteLengthmay throw.
-
2.2.008 Sep 2023 -
2.0.331 Aug 2023Release notes
Open source →AndroidMigrate to Android 13.AndroidFix the issuce that receive wrong values caused by unsafe memory, see https://developer.android.com/reference/android/bluetooth/BluetoothGattCallback#onCharacteristicChanged(android.bluetooth.BluetoothGatt,%20android.bluetooth.BluetoothGattCharacteristic)
-
2.0.220 Aug 2023 -
2.0.118 Aug 2023Release notes
Open source →- Fix the issue that GATTs is cleared after peripheral disconnected on iOS and macOS.
- Fix the issue that create UUID form peripheral's address failed on Linux.
- Fix the issue that instance match failed on Linux.
-
2.0.017 Aug 2023Release notes
Open source →- Rewrite the whole project with federated plugins.
- Support macOS and Linux.
-
1.1.030 Sep 2022Release notes
Open source →- Fix the crash by onMtuChanged called multi-times on Android.
- Fix the finalizer doesn't work issue.
- Make some break changes.
-
1.0.023 Sep 2022 -
0.1.015 Jul 2021Release notes
Open source →- Add implementations on iOS.
- Combine available and state for Bluetooth.
- Add connectable for Discovery.
- Add maximumWriteLength for GATT.
-
0.0.202 Jul 2021Release notes
Open source →- Fix connect blocked when bluetooth closed.
- Fix wrong repository url.
- Move all example files to main.dart.
-
0.0.101 Jul 2021Release notes
Open source →- Add central APIs.
- Add implementations on Android.
- Add example.
- Add test.