Tool/software: Code Composer Studio
My company is designing a new product based on CC2640R2F. It's a pretty simple design: portable medical device with BTLE simple peripheral behavior. We don't really need the features of BT5 bu we decided to start the design with BT5 for long term support reasons.
We started the design using the BT5 stack and the simple peripheral example in SDK 1.40.0.45. Now our firmware is almost complete and we are a bit afraid of the small remaining amount of Flash. We checked back the non-modified sample peripheral example and using BT5, it's also using a great part of the available Flash.
TI released now a new SDK (2.20.0.49). We have to decide if we go in production with stack from SDK 1.40 ou 2.20. We tried to port our application to the new SDK stack and problem: not enough Flash space!
We went back to the unmodified Sample peripheral example and we built it using both SDKs and using either BT4.2 or BT5. Here are the results:
- SDK 1.40.0.45, Unmodified Simple Peripheral Example, BT4.2 Stack: Flash usage = 64.9KBytes (from 127KBytes total Flash)
- SDK 1.40.0.45, Unmodified Simple Peripheral Example, BT5 Stack: Flash usage = 95.3KB (from 127KBytes total Flash)
- SDK 2.20.0.49, Unmodified Simple Peripheral Example, BT4.2 Stack: Flash usage = 70.5KBytes (from 127KBytes total Flash)
- SDK 2.20.0.49, Unmodified Simple Peripheral Example, BT5 Stack: Flash usage = 116KB (from 127KBytes total Flash)
I can provide the output map files from CCS 8.0 that was used for building of these projects.
Here are my questions:
1. Do we have to migrate from SDK 1.40 to SDK 2.20 for stability or any other reason (knowing that we won't use any BT5 feature) ?
2. Why is the SDK 2.20 using so much more Flash memory for the same functionality? With BT5, this SDK is almost unusable because the remaining Flash space for application is too small!
3. Is there a way the reduce Flash usage for SDK 1.4 and/or SDK 2.2 knowing that we are only a simple peripheral?
4. Do you have plans to reduce memory footprints of these stacks?
5. What is the impact in terms of BT5 certification of removing 4.1 or 4.2 features using parameters BLE_V41_FEATURES or BLE_V42_FEATURES (which is a possible parameter for reducing the memory footprint)?
6. Do you gave an extended list of stack parameters for SDK 2.2?
Thank for supporting us!