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.

Guidelines for implementing CC2564 Stack on a Tiva application

Other Parts Discussed in Thread: CC2564, CC2540, CC256XM4BTBLESW, CC2640, BLE-STACK

Fellows,

We're attempting to create an application involving PAN1326B and a Tiva TM4C123x. Environment is CCSv6.

Although I have been reading documents, wikis and posts for a yet some time, it seems that the (excessive) documentation out there still doesn't clearly address the mission.

Most of the searches point to the sample codes (particularly, "CC256x TI Bluetooth Stack SPPLEDemo App"), for which the most recent version comes inside the Bluetopia v1.2R2, available at TI. And everything seems to suggest "take a look at the demo and figure things out yourself"...

The hardware inolved is our own design. It is obviously not identical to having the standard Development Kits on hand (which in fact I do not). And except for bluetooth, our project already works and has a few thousand lines, performing many other tasks - so the path of "adding our application to the Bluetopia demo" is out of the question.

But that demo app is certainly not a "demo" (yes, maybe Demo) focused piece of code, with all the callbacks and hard-to-visualize dynamic functions...

I guess the bottom line is: is there any documentation available as a general guide of HOW TO IMPLEMENT BLUETOPIA ON YOUR EXISTING APPLICATION? In the end, all one needs when using SPP is to pair, connect, send and receive some bytes... A "wireless cable" shouldn't be that painful!

Of course such guide would also serve the MSP developers...

Thanks for any help and hints!

Bruno

  • hi , please let us know if you still need assistance with this issue
    Saurabh
  • Hello Saurabh,
    Yes, I still do! I suspended this task and diverted to work with other things meanwhile, but our product is fully working now and ready to go, except for Bluetooth communication. Help will be most useful and appreciated!
    Bruno
  • Hello again SN,
    After your recent question I had the impression you would be able to post some guidelines here...
    Any chance? That will be most welcome, as I need to get back to this development next week.
    Cheers
  • Hello Bruno,

    Unfortunately we don't have any ready made guide.
    As Saurabh answered before we have some demo applications - which i understand are not copy and paste in all cases.
    This is how most of our customers work.

    If you have any specific questions once you start the porting process please feel free to contact us anytime.

    BR,
    Chen Loewy
  • Hello Chen,

    Are you willing to help me elaborate a "basic guide", right here on this thread?
    I figure I could post my step by step doubts, and in the end we can compile a guide to remain here, on as a chapter of a separate wiki... I will write a few initial points here, please correct me if they are lies (in which case I'll edit it later to have proper information).

    STEP 01: some infrastructure info for the developer:

    A) Note that cc2564 (and itself inside a PAN1323 module) does not make an INTEGRATED module. This means that your application's MCU will have to contain the Bluetooth stack. Integrated modules will host the Bluetooth stack into their own processor, and data exchange with those are typically done with higher level API's.

    B) On TI's environment one will find different Bluetooth software. CC2564 does NOT work with TI's "ble-stack", which are targeted for different products such as CC2540/41 and CC2640/2650. The software for using CC2564 in a Tiva MCU is called CC256XM4BTBLESW, and can be currently found in the link below. When you install it, you are actually installing a Bluetooth Stack called CC256x M4 Bluetopia SDK. It is not clear wheather the third company which created Bluetopia still supports it.

    www.ti.com/.../CC256XM4BTBLESW

    C) Documentation states that such stack can be used either for non-OS (as in "normal" C with TivaWare library), or also for TI-RTOS. As my first project requires a tivaWare non RTOS project, that is the example I'd like to elaborate here. Further, the goal here is to use the Bluetooth communication as a replacement for wired serial connection, so the SPPLE solution is sought after. CCS 6.1 is my platform.

    STEP 02: including the Bluetooth Stack in your project.

    A) Configure CCS: I particularly prefer to create environment variables for the most common libraries I work with (which are basically the TivaWare library, my company's own library, and now the Bluetopia). Hence, I am creating an environment path variable named BLUETOPIA_INCLUDE, which in my case points to:
    "C:\ti\Connectivity\CC256X BT\CC256x M4 Bluetopia SDK\v1.2 R2\Cortex_M4\Bluetopia\include"

    B) Add the path variable to the project's properties, at CCS Build/ARM Compiler/Include Options. It shows as "${BLUETOPIA_INCLUDE}".

    Because the file names inside Bluetopia library are referred to directly, without any folder structure, more path variables are required to compile the project. So far, this additional path variable was needed, BLUETOPIA_KERNEL_NOOS, also added to the Include Options.

    C) Add the lib path to the project's properties, at CCS Build/ARM Linker/File Search Path/library file. In this case, the entry becomes
    "${BLUETOPIA_ROOT}\lib\ccs\NoOS/Bluetopia.lib"
    (Note that this file name is not the same as shown on the PDF instructions that come with the stack download)

    STEP 03: initializing Bluetopia for your hardware settings

    Bluetopia certainly needs to "learn" your hardware settings (which pins are used for UART communication with the CC2564, what is your MCU's clock, and probably some details about auxiliar timers...) I haven't got into this step, and I guess this is the part where my valuable colleagues here could step in and add help. Some questions are:

    What is the API for that, where are the instructions for this API... Are there actually Bluetopia implemented functions to configure Tiva hardware? If not, what are the Bluetopia basic requirements as far as system support, that need to be configured in the main application?

    All the best,

    Bruno
  • Bruno Saraiva said:
    What is the API for that, where are the instructions for this API... Are there actually Bluetopia implemented functions to configure Tiva hardware? If not, what are the Bluetopia basic requirements as far as system support, that need to be configured in the main application?

    Fellows,

    Quoting myself to try and bring this subject back to life and hopefully get some response. Thanks!