I noticed that when looking at the best practices for Bluetooth Low Energy(BLE), Apple mentions that using the API comparable the Android GATT's onNotificationChanged() is more efficient than calling calling getValue() on a characteristic that updates regularly.
"Though reading the value of a characteristic using the readValueForCharacteristic: method can be effective for some use cases, it is not the most efficient way to retrieve a value that changes. For most characteristic values that change—for instance, your heart rate at any given time—you should retrieve them by subscribing to them."
I am working on a device where we have multiple sensors (similar to the Text Insturment's CC2541). What is going on behind the scenes (i.e. Bluetooth antenna power, sensor activity) that makes the notifications more efficient?
I am seeing if it is beneficial to pace the transmission through setting the update period on the device, by pinging the device (the queries will be to get the reading 1-2 times a second for each sensor).