Hi,
We already have applications running on CC2540 and CC2541 and consequent infrastructure to build these products. At that time the implication from bcomdef.h (for CC2540/41) was that 0x0 to 0x79 was reserved for the stack. Thinking that we would let TI expand a little beyond that we defined our NVIDs starting 0x90.
Along comes the CC2640 and decides that user defined NVID are in the range 0x80 (BLE_NVID_CUST_START ) to 0x8f (BLE_NVID_CUST_END) as defined in bcomdef.h. These constants were not defined for the CC2540/CC2541 (Version 1.4.0 of the stack, at least)
Since it is the same application on the CC2540/41 that I am porting to CC2640, I was hoping to use the same NVIDs as on the CC2540/2541, but it seems to me that BLE Stack 2.1 is more restrictive in this aspect than BLE Stack 1.4.0.
Here's my question:
To ensure compatibility I can do one of two things, modify
a) modify BLE_NVID_CUST_START to 0x90 and BLE_NVID_CUST_END to 0x9f in bcomdef.h for BLE Stack 2.1
b) modify BLE_NVID_CUST_END to 0x9f, effectively have an NVID range of 32 ids instead of 16.
Is the TI BLE Stack 1.1 smart enough to use these definitions to ensure that there is no overlap between TI definition and customer definitions?
Thanks,
KK