Does GATT database of a size limit, other than available RAM?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Does the GATT database have a size limit, other than available RAM?

This is the profile database defined by using:...

ATTRIBUTE((section(".app_init_code")))

APPLICATION_INIT()

{

  bleapp_set_cfg( (UINT8*) my_profile_in_my_gatt_database, // Set Profile database

...

0 Likes
1 Solution
asridharan
Employee
Employee
10 comments on KBA 5 comments on KBA First comment on KBA

Yes, available RAM is perhaps the first limit you will hit.

GATT database handles are 16 bit values from 0x00 to 0xFFFF, so this sort of limits you to ~65K entries in the database. With SDK 1.1.0, GATT characteristic length/max length is a 1 byte field while with SDK 2.0.1, it could optionally be a 2 byte field too. The BT spec limits characteristics to a max of 512 bytes. So, if you put all these together, there is a finite limit to the GATT database array, but you will hit the available RAM limit long before your database gets anywhere close to this.

View solution in original post

1 Reply
asridharan
Employee
Employee
10 comments on KBA 5 comments on KBA First comment on KBA

Yes, available RAM is perhaps the first limit you will hit.

GATT database handles are 16 bit values from 0x00 to 0xFFFF, so this sort of limits you to ~65K entries in the database. With SDK 1.1.0, GATT characteristic length/max length is a 1 byte field while with SDK 2.0.1, it could optionally be a 2 byte field too. The BT spec limits characteristics to a max of 512 bytes. So, if you put all these together, there is a finite limit to the GATT database array, but you will hit the available RAM limit long before your database gets anywhere close to this.