Open
Description
iOS doesn't see changes to Bluetooth services and characteristics between sketches
To duplicate
- Run example CurieBle -> LED
- Use LightBlue from iPhone to connect to LED
- Run example CurieBle -> ButtonLED
- Use LightBlue from iPhone to connect to ButtonLED (the old LED name will be show)
Problem: The old LED characteristics are also shown
- Turn Bluetooth off and on on the iPhone
- Use LightBlue from iPhone to connect to ButtonLED
The correct service and characteristics should now be shown
Background
The original problem was that descriptors (0x2901) added to existing sketches were not showing up in LightBlue. This has not been a problem when using other libraries such as BLEPeripheral or bleno. The steps above are an easier way to duplicate the issue without adding descriptors.
Software/Hardware
Arduino 101
Arduino IDE 1.6.7 on OS 10.10.5
iOS 9.2 (13C75) on iPhone 6s
Possible solution
iOS is expecting Service Changed 0x2a05 to be implemented on the Generic Attribute Service 0x1801.