Connection Parameters

edited September 2016 in Android
Hi, 

I connected my MetaWear C (firmware 1.1.3) to the oscilloscope and tried to connect to the board with different apps. With the latest version of MetaWear sample apps, I found the Bluetooth communicates every 30ms between the board and iOS 9 iPhone 6. The Bluetooth communicates every 50ms between the board and Android 6 Nexus 5. 

So my first question is: Are the connection parameters on two sample apps different?

I tried to configure the connection parameters (MaximumInterval and SlaveLatency) on the Android phone and reconnect to the board. However, I didn't see any difference on the oscilloscope. (I tried to set MaximumInterval = MinimumInterval = 20ms and other combinations w.r.t the Apple Bluetooth LE Guidelines: https://developer.apple.com/hardwaredrivers/BluetoothDesignGuidelines.pdf , page 22)

So my second question is: Can I read the configuration back from the board to verify if the parameters are successfully written to the registers? (I saw there are interfaces in Setting class. But I don't know if I can get any result by calling any of those functions.)

P.S. I also tried to connect with MetaWear sample app on my Android 4.4 LG Optimus Fuel. Thel Bluetooth communicates every 7.5ms. The connection parameter configurations seemed not working on this phone also.

Comments

  • edited September 2016
    Each btle stack has different default connection parameter settings; the 30ms and 50ms sounds correct for iOS and Android devices.  It's possible the Nexus 5 and Optimus Fuel ignore the connection parameter update requests.  You should try your tests again with the latest firmware.

    You can confirm by reading the Generic Access service characteristics using the nRF Connect app or by calling readConnectionParameters.
This discussion has been closed.