PureSwift / GATT

Bluetooth Generic Attribute Profile (GATT) for Swift (Supports Linux)
MIT License
64 stars 18 forks source link

GATT peripheral does not advertise services #26

Closed fwcd closed 3 years ago

fwcd commented 3 years ago

Services added to a GATTPeripheral are discoverable once a remote central has connected, their UUIDs are, however, now included in the LE advertising payload. This causes nodes acting as a GATTPeripheral to go undiscovered if the central scans for specific service UUIDs.

colemancda commented 3 years ago

The problems with this is that you only have 31 bytes (61 with Scan Response) to advertise services. If you are using 128 bit UUID you could use that up really fast. Also, what about manufacturer data or local name advertisement? That is why we leave it up to you to customize the advertising. This is a feature not a bug.