Understanding the bonding limitations and storage for the KW38

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Understanding the bonding limitations and storage for the KW38

325 Views
jlowewithDitec
Contributor I

Hello, 

The SDK version I'm currently using is 'SDK_2.x_FRDM-KW38_2.6.15' and the MCUX version is 'MCUXpresso IDE v11.10.0_3148'.

I am particularly interested in the example project "wireless_examples/bluetooth/w_uart/bm".
The maximum number of bonded devices is defined by 
gMaxBondedDevices_c and is initially set to 8. This strikes me as quite small given that the the number of simultaneous connections is the same. My goal would be to push this number up and store it in NVM.

To sum up what I have understood. It seems we seem to have two methods of storing bond information:

  • The gap_interface.h library provides the bluetooth (GAP) protocol functions and structures. This includes recognition and automatic requesting of bonding and LTKs. I believe that this information is stored in RAM. I would be interested to know what the size of one entry might be in the RAM (176B like in the flash?) so I can estimate how devices could be bonded before I begin to have RAM issues.
  • The ApplMain source file contains several functions for writing/reading bonding information to the NVM depending on defines gAppUseNvm_d and gUnmirroredFeatureSet_d using addresses and functions from NVM_Interface.h. I see that upon set up, space is made for every section depending on the max Number of bonded devices and that presumable I could make it as big as I have space dedicated to the NVM. 

I cannot seem to store bonding information aside from simply initiating pairing with a device using gap_interface.h. I therefore do not see how the NVM is useful or how I register the NVM info into the gap_interface structures for it to check upon connection.

To sum up, I am hoping I could be pointed to literature on the allocation of memory for bonding and if there is a way to go beyond the functions available to me in gap_interface, namely to unite the NVM bond storage to that of the gap_interface.

Many thanks, 

Jack

 

0 Kudos
Reply
1 Reply

269 Views
Ricardo_Zamora
NXP TechSupport
NXP TechSupport

Hello Jack,

 

Hope you are doing well. I would recommend checking the "Bluetooth Low Energy Application Developer's Guide.pdf" (Path: SDK\docs\wireless\Bluetooth).

Specifically, section 4.1.3 and 4.2.2.

 

Also, please check the "Connectivity Framework Reference Manual.pdf" (Path: SDK\docs\wireless\Common). Particularly section 3.5.

 

Hope this helps!

 

Regards,

Ricardo

0 Kudos
Reply