This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SIMPLELINK-CC2640R2-SDK: SDK version need clarification

Part Number: SIMPLELINK-CC2640R2-SDK
Other Parts Discussed in Thread: BLE-STACK, CC2650, CC2640R2F

Hi,

I'm really confused regarding some of the version number revisions of the various BLE SDKs available, and feel like the documentation is very unclear.

First of all I wanted to ask about the difference between SDK 1.40.00.45 and SDK 1.50.00.71. I know that they are not compatible and projects require quite a lot of modifications to migrate from one to another. But I want to know the main BLE functionality difference there. As per the Release notes, 1.50.00.71, supports all new features that BLE 5 introduces (Where LE Coded PHY is evaluation only) and I was told by an TI employee that this was the only SDK that was able to utilize all these new features, including LE Coded.
The SDK 1.40.00.45 Release Notes however state that "The BLE5-Stack is Bluetooth certified with the 2 Mbps feature and all Bluetooth 4.0, 4.1 and 4.2 LE core specification features from BLE-Stack v3.x. LE Coded PHY demonstration (non-production) mode for evaluating data throughput in Bluetooth 5 long range connections."
I know that the 1.50.00.71 SDK does support the LE Coded and I have demonstrated that but I don't really find any good documentation about the difference between these two SDKs.

So is the case that LE Coded can be utilized in both SDKs? Then what is the main difference between the two SDKs? How would one proceed on migrating an application currently using SDK 1.40.00.45 to use SDK 1.50.00.71?

Thanks & Regards,
Gamli

  • Hi Gamli,

    One of the main differences is that the BLE5-Stack in SDK 1.50.00.71 also supports the Advertising Extensions (AE) feature and fuller support of the LE coded PHY features. I think the best documentation to look at is to compare for both versions the BLE5-Stack release notes that are linked from the SDK release notes by selecting Documentation Overview and then selecting BLE5-Stack release notes:

    For SDK 1.40.00.45, you can find the BLE5-Stack 1.00.01.45 Release notes here: dev.ti.com/.../release_notes_ble5stack_1_00_01_45.html

    If you have the SDK 1.50.00.71 installed, you can find the BLE5-Stack 1.01.00.71 Release Notes in your file system at C:/ti/simplelink_cc2640r2_sdk_1_50_00_71/docs/ble5stack/release_notes_ble5stack_1_01_00_71.html

    Both documents list the key BLE5 features in the Introduction section - you'll see that Advertising Extensions support is one of the main differences, in addition to the statement about 1.50.00.71 being an evaluation release.

    For migrating a BLE5 application from SDK 1.40.00.45 to SDK 1.50.00.71, there is included a migration guide on how to do this in the BLE5-Stack User's Guide 1.01.00.00 that installs with the SDK 1.50.00.71. You can find it in your file system at C:/ti/simplelink_cc2640r2_sdk_1_50_00_71/docs/ble5stack/ble_user_guide/html/ble-stack-5.x-guide/ble5stack1.00.01-to-ble5stack1.01.00.html

    That migration guide should include step-by-step instructions for migrating your application.

    I hope that this helps!

    Regards,
    Katie

  • Hi Katie,

    Thanks for the reply! But one wondering I seem to not find answer on the revision numbering of the BLE Stacks, 3.x.x and 1.xx.xx.xx (v3.1.0 for SDK v1.40.00.45 and 1.01.00.00 for SDK v1.50.00.71), what is the difference between them and why are the revision numbering so different? And are the Release notes for BLE Stack 1.01.00.71 available somewhere? (Or should I refer to TI BLE5-Stack 1.01.01.00 Release Notes)

    And regarding SDK 1.40.00.45, I've briefly attempted to use the LE Coded PHY with no luck, is that in fact possible? And if so, how do you enable it? and is the core difference between the SDKs the AE feature support?

    BR,
    Gamli

  • Hi gamli,

    I know this can get a little bit complicated, so I'll do my best to explain. 

    The SimpleLink SDK for each part includes a number of components like the TI Drivers and the BLE-STACK. The SimpleLink SDK version are the numbers on the SDK download like 1.40.00.45 and 1.50.00.71. Within the SDK, you'll find one of the components is the BLE-STACK or BLE5-STACK, and these components have version numbers that TI assigns as well. Further, each of those BLE-STACK or BLE5-STACK versions is implementing a specific version of Bluetooth LE features as defined by the Bluetooth SIG e.g. BLEv4.2 or BLEv5.0. So there are 3 different version numbers here, so it can get a little complicated. 

    The SDKs contain stacks for different BLE versions (e.g. BLE 4.0, 4.2, 5.0) defined by the Bluetooth SIG. If you look at the table in the Getting Started & FAQ sticky thread, you'll see there is a list of the different Bluetooth SIG defined BLE specs that each SDK implements (third column): https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/404236 

    Device Software Development Kit
    Bluetooth LE Version Production / Evaluation
    CC2640R2F

    SIMPLELINK-CC2640R2-SDK

    v4.2 , v5.0 (High Speed)

    Production
    CC2640R2F

    SIMPLELINK-CC2640R2-BLE5-EVAL

    v5.0 (High Speed + Long Range)

    Evaluation
    CC2642R / CC2652R

    SIMPLELINK-CC26X2-SDK

    v5.0(High Speed + Long Range)

    Pre-Production
    CC1352R

    SIMPLELINK-CC13x2-SDK

    v5.0(High Speed + Long Range)

    Pre-Production
    CC2650/CC2640 BLE-Stack v2.2.2 v4.2 Production

    For BLE5-STACK versions, this is quite new so the TI BLE5-Stack version is only in the 1.x range. For the BLE-STACK version (that implement Bluetooth SIG BLE4.2 not BLE5) these have been around longer and so have more versions - current releases are either 2.x for example for the non-SimpleLink SDK versions (e.g. CC2650) or 3.x for the SimpleLink SDK version like CC2640R2F. For CC2640R2F we have different SDK versions that contain the BLE-STACK/BLE5-STACK component supporting either BLE v4.2 or BLE 5 and I know that this can lead to some confusion. 

    For your question at hand - SDK v1.40.00.45 is row #1 in the table above - that doesn't really fully support the LE coded PHY it just has some simple experiment you can run. If you really want to use long range you should use the 1.50.00.71 linked in the second row of the table above. That, and the support of AE are the main differences between the two SDK versions for BLE5 support. As far as release notes, usually all release notes are online, however for SDK 1.50.00.71 that is an evaluation version that is available by request only (you'll see that when you go to download it) which is why I pointed you into the actual install location in your file system to find the release notes if you have installed that SDK. There's a button on the install page to request access if you don't have it already and you can then download this SDK version if approved (usually takes 1-2 business days I believe). 

    The BLE5-Stack 1.1.1.0 Release notes that you linked are NOT for this SDK version - those are for the CC26x2 SDK. Don't look at those as it doesn't match up with what applies for your part - unless you decide to switch to CC26x2 device. 

    Regards,

    Katie

  • Hi Katie,
    Thanks for a thorough answer. Now I finally understand why the revision system on the various parts of the SDK gets so complicated - would be nice to be able to see the date of revision clearly as well.
    I have the SDK 1.50.00.71 and have already implemented part of my application there and seen the release notes for that. However I cannot find the BLE5-STACK (1.01.00.71) Release notes (as the BLE5-STACK Release Notes I linked to in the previous post). Is that available somewhere?
    Thanks,
    Gamli
  • Hi Gamli,

    If you installed the SDK in the default location (C:/ti), it will be found at C:/ti/simplelink_cc2640r2_sdk_1_50_00_71/docs/ble5stack/release_notes_ble5stack_1_01_00_71.html

    Regards,
    Katie
  • Hi,
    Oh yeah as you said earlier! haha sorry about that! The numbering of the SDK and the Stack got me all twisted in the head...
    Thanks again
    -Gamli