228 Commits

Author SHA1 Message Date
Foti Dim 3ecbcb9b43 Rename in-app pairing capabilities (#88) 2024-09-23 07:13:41 +02:00
Foti Dim bf270c2bf4 Fix _triggersPairingWithEncryptedChar condition 2024-09-21 10:11:59 +02:00
Foti Dim c57cc778da Improve supportsInAppPairing documentation 2024-09-19 22:36:09 +02:00
Rohit Sangwan b978b81cb1 Add default timeout in Connect, Pair and IsPaired apis 2024-09-19 12:50:31 +05:30
Foti Dim 694262d9a9 Allow pairing on all platforms
Mark Web/Linux as not supporting in-app pairing
2024-09-18 06:49:11 +02:00
Rohit Sangwan 7dc22c58a5 Improve scan filter api (#78)
* Improve scan filter api

* Implement Windows filters

* Add manufacturerDataList and deprecate manufacturerData

* Fix Windows

* Update Readme and changelog

* Remove import

* Fix Linux

* Update readme and changelog

* Cleanup Todo

* Improve ManufacturerData

* Rename webConfig and Manufacturer.data

* Return false for receivesAdvertisements on Linux/Web

* Add delay in discoverServices on Linux

* Remove import

* Update changelog

---------

Co-authored-by: fotidim <foti@navideck.com>
2024-09-16 23:43:51 +02:00
fotidim 639384af30 Make pair button disabled if not supported
Co-authored-by: Rohit Sangwan <rohitsangwan647@gmail.com>
2024-08-17 18:50:27 +02:00
Foti Dim c37036135d Auto convert all services passed to getSystemDevices 2024-08-16 14:45:47 +02:00
Rohit Sangwan f7c05b2490 Remove error from onPairingStateChange (#75)
* Remove error from onPairingStateChange

* Update ChangeLog and Readme

* Update Changelog
2024-08-13 16:19:21 +02:00
Foti Dim 40819d5796 Return pair result 2024-08-12 21:15:56 +02:00
Foti Dim 7606e8fd29 Implement pairing on Apple (#59) 2024-08-09 22:42:40 +02:00
Rohit Sangwan 95c0b88181 Fix Android notification for characteristics without CCCD (#72)
* Fix Android notification for characteristics without CCCD

* Minor fixes

* Update changelog

---------

Co-authored-by: Foti Dim <fdimanidis@gmail.com>
2024-08-09 09:20:20 +02:00
Rohit Sangwan 5ce6c3d362 Improve web support (#66)
* Improve web support

* Rename to _hasSelectedCharacteristicProperty

* Update comment

* Make _bleService private

---------

Co-authored-by: Foti Dim <fdimanidis@gmail.com>
2024-07-31 09:28:50 +02:00
Rohit Sangwan 28b0bc6b7c Add platform specific options in start scan (#65)
* Add platform specific options in start scan

* Add code level doc and ChangeLog

* Minor improvements
2024-07-21 17:05:29 +02:00
Rohit Sangwan 0d6b612497 Receive advertisement events on web (#63)
* Fix web manufacturer discovery

* Minor Fixes

* Cleanups

* Add canWatchAdvertisements api

* Improve Cleanups

* Improve code level documentation

* Improve documentation

---------

Co-authored-by: Foti Dim <fdimanidis@gmail.com>
2024-07-19 10:39:49 +02:00
Foti Dim c0c678c735 Trim spaces in UUIDs 2024-07-15 11:53:00 +02:00
Foti Dim efaa72acbd Improve BleUuid API and tests (#62)
* Improve tests

* Fix tests

* More improvements and ToDos

* Final API changes
Add tests

* Update readme

---------

Co-authored-by: Rohit Sangwan <rohitsangwan647@gmail.com>
2024-07-15 05:59:30 +02:00
Rohit Sangwan 44412508e7 Implement scan filter in example app (#61)
* Implement scan filter in example app

* Remove Fixed FlutterVersion from Workflow and improve ScanFilterWidget

* Update example/lib/home/widgets/scan_filter_widget.dart

* Update example/lib/home/widgets/scan_filter_widget.dart

* Update example/lib/peripheral_details/peripheral_detail_page.dart

* Improve text

---------

Co-authored-by: Foti Dim <foti@navideck.com>
Co-authored-by: Foti Dim <fdimanidis@gmail.com>
2024-07-12 17:24:00 +02:00
Rohit Sangwan dffbbd4ba6 Allow modification of ScanFilter properties 2024-07-12 16:23:17 +05:30
Foti Dim 86f3836d5d Update readme and changelog 2024-07-12 09:24:27 +02:00
Rohit Sangwan 9cade4a6ee Fix UUID parsing on Web 2024-07-12 11:44:39 +05:30
Rohit Sangwan 9bb209f8b5 Unify UUID formatting (#55)
* Unify UUID formatting

* Update Readme

* Update Readme

* Apply suggestions from code review

Co-authored-by: Foti Dim <foti@navideck.com>

* Resolve Comments

* Add test and support 32bit uuid parsing

* Add a toString() method to the BleDevice class for easier debugging and logging

* Rename Uuid to BleUuid

* Rename uuid file to ble_uuid

* Update Readme

---------

Co-authored-by: Foti Dim <foti@navideck.com>
2024-07-05 17:53:55 +02:00
Foti Dim 9cd2faee66 Improve error handling and disconnection events (#60)
* Improve Android error handling

* Improve cleanup after disconnection on Apple

* Update changelog
2024-07-05 11:02:33 +02:00
Foti Dim 0070f5c002 Improve Android error handling 2024-07-03 09:00:52 +02:00
Rohit Sangwan 8d0cfe98d9 Add connecting and disconnecting states to BleConnectionState (#54)
* Add connecting and disconnecting state

* Replace BleConnectionState with boolean in onConnectionChanged callback

* Improve Docs and Changelog

* Implement GetConnectionState in Windows

* Update CHANGELOG.md

Co-authored-by: Foti Dim <foti@navideck.com>

* Add  code level doc of connectionState getter

---------

Co-authored-by: Foti Dim <foti@navideck.com>
2024-06-20 20:47:02 +02:00
Foti Dim 2bb3d1dcf4 Bump version to 0.10 2024-06-17 11:32:47 +02:00
Foti Dim 796bb14ccc Do not initialize global queue if not needed (#53) 2024-06-17 10:39:17 +02:00
Foti Dim 15453eb28f Rename onConnectionChanged and onValueChanged
Update changelog
Format files
2024-06-15 09:13:01 +02:00
Foti Dim 58677246b3 Improve queue naming 2024-06-13 22:40:06 +02:00
Foti Dim 6361574b77 Add connection properties in BleDevice (#50)
* Rename to BleDevice

* Add isConnected property

* Make isConnected true

* Add isConnected api

* Implement Windows

* Merge add-isConnected-api

* Rename getConnectedDevices to getSystemDevices

* Add code level Doc for isConnected

* Add isPaired

* Revert isPaired

* Add isSystemDevice property in BleDevice

* Return enum instead of bool

---------

Co-authored-by: Rohit Sangwan <rohitsangwan647@gmail.com>
2024-06-13 16:14:54 +02:00
Foti Dim 7d6714e53a Set CBCentralManagerScanOptionAllowDuplicatesKey to true (#51) 2024-06-12 06:02:52 +02:00
Rohit Sangwan b74191bb97 Implement pairing with dialog on windows (#46)
* Implement pairing with dialog on windows

* Minor fix

* Add pin pairing request for windows 10

* Implement native windows dialog for asking pin pairing

* Cleanups

* Improve pairing dialog ui

* Use PairAsync for Windows 11

* Fix OK button text

* Improve pin entry layout

Co-authored-by: Rohit Sangwan <rohitsangwan647@gmail.com>

* Dialog adjustments

* Make dialog non resizable

* Make window topmost

* Final adjustments

* Update changelog

* Release dialog resources properly

* Release dialog resources properly

* Remove duplicate import

* Minor Fix

---------

Co-authored-by: fotidim <foti@navideck.com>
2024-06-11 12:28:25 +02:00
Rohit Sangwan 2fe21962d2 Add queue per device (#48)
* Add queue per device

* Improve API and documentation

* Update lib/src/universal_ble.dart

* Update lib/src/ble_command_queue.dart

---------

Co-authored-by: Foti Dim <fdimanidis@gmail.com>
Co-authored-by: Foti Dim <foti@navideck.com>
2024-06-07 20:55:46 +05:30
Rohit Sangwan 5847bbffc5 Add name prefix filtering (#45)
* Add name filter

* Change name filter to "prefix"

* Implement namePrefix filtering

* Update lib/src/universal_ble_platform_interface.dart

* Update lib/src/universal_ble_platform_interface.dart

---------

Co-authored-by: fotidim <foti@navideck.com>
2024-05-17 15:49:30 +02:00
Foti Dim 77b8658f72 Remove dependency on collection (#43)
* Remove dependency on collection

* Update changelog
2024-05-10 14:25:59 +02:00
Foti Dim a682ea933d Remove dependency on convert 2024-05-10 13:57:08 +02:00
Rohit Sangwan f928e8de50 Update android example gradle 2024-05-10 16:41:55 +05:30
Rohit Sangwan 05697b7d30 Improve setNotifiation completion (#42)
* Improve setNotifiation completion

* Implement Windows

* Minor android fixes

* Few more fixes

* Update changelog

---------

Co-authored-by: Foti Dim <fdimanidis@gmail.com>
2024-05-10 12:59:10 +02:00
Rohit Sangwan b07a8888e0 Fix windows scan filter (#41)
* Fix windows scan filter

* Bump version and add changelog

---------

Co-authored-by: fotidim <foti@navideck.com>
2024-05-10 09:57:04 +02:00
fotidim a49b260b67 Improve service discovery on linux 2024-05-09 14:14:33 +02:00
Foti Dim fef4e8526b Improve Apple, Android and Windows (#40)
* Cleanup connection

* Reverse search list

* Bump version

* Fix Android serviceUuids in scanResults

* Fix typo

* Improve cleanup on apple

* Improve Apple reconnection and service discovery

* Persist long scan result name on Windows

Co-authored-by: navidecklabs <navidecklabs@users.noreply.github.com>

* Update changelog

---------

Co-authored-by: Rohit Sangwan <rohitsangwan647@gmail.com>
Co-authored-by: navidecklabs <navidecklabs@users.noreply.github.com>
2024-05-09 11:48:32 +02:00
Foti Dim 3be945c3d5 Improve manufacturer data discovery on Windows (#38)
* Improve manufacturer data discovery on Windows

* Switch pairing protection level to encrypted in Windows

* Minor UI improvement in example app

* Update windows/src/universal_ble_plugin.h

* Remove minimum DevicePairingProtectionLevel

* Improve logging

* Bump version

---------

Co-authored-by: Rohit Sangwan <rohitsangwan647@gmail.com>
2024-05-02 00:09:44 +02:00
fotidim 56f2a09a67 Show device name in details page
Allows service and characteristic to be selectable
2024-05-01 23:18:05 +02:00
Foti Dim e252cfeec0 Format project 2024-04-10 22:57:26 +02:00
Foti Dim 57cf39f581 Make variables final and fix formatting in Linux 2024-04-10 22:56:56 +02:00
Morten Boye Mortensen ef83aad181 Fix characteristic keying on linux (#35) 2024-04-10 22:53:08 +02:00
Foti Dim 3fbd2e2422 Add info about discovering services 2024-03-28 09:49:27 +01:00
Rohit Sangwan 9e51e9e951 Fix discover services on Windows (#32)
* Fix discover services on Windows

* Bump version

---------

Co-authored-by: fotidim <foti@navideck.com>
2024-03-28 13:08:55 +05:30
Foti Dim 4f22fe56cd Fix readme typo 2024-03-25 09:36:43 +01:00
Foti Dim 7e19329bd5 Add info about Bluetooth adapters on Windows and Linux 2024-03-23 15:08:12 +01:00