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.

CCS/BOOSTXL-CC2650MA: BLE programming

Part Number: BOOSTXL-CC2650MA
Other Parts Discussed in Thread: CC2650, BLE-STACK, CC2650MODA

Tool/software: Code Composer Studio

Hello,

I am new to Bluetooth programming and I am currently trying to program the CC2650MA to collect data via ADC, store it and transmit it to an Android phone thanks to BLE. I am using the BoosterPack and the LaunchPad in the standalone configuration described here

Until now, I have successfully managed to program ADC and storage and I would like to add the BLE transmission. My problem is that I don't know which example to use and what file I have to modify to adapt the project to my needs. I am used to use basic TI RTOS examples but every BLE example is composed of 2 projects (app and stack) and I can't find my way to the files I am used to write to (CC2650_LAUNCHXL.h/c, board.h...). Do they even exist?

So my questions are:

- Which example is the most adapted to what I want to do?

- What files should I modify in that example to configure the standalone functioning? Are there any files corresponding to the ones I am used to?

- I suppose I will have to add new tasks for the ADC and storage already coded, is that right?

I have looked at many documents (Developer's guide, BLE getting started, workshops and threads) but I couldn't find answers in them, especially concerning the standalone configuration.

Any help would be very appreciated.

Regards,

Ilona

  • I have found the board.h and CC2650_LAUNCHXL.h/c in the SimpleLink Academy Project Zero, what does this project do? This is not clear to me. Does it send anything? Is it advertising? Pairing?
  • Hi Ilona,

    Yes, the regular BLE-Stack projects have board files, but they are included via a "gateway" file that pulls in the right board file based on a preprocessor define. This is described in the Software Developer's Guide, Section 6.2. In summary each project for the CC2650MODA will use the board files in src\boards\BOOSTXL_CC2650MA if BOOSTXL_CC2650MA is defined.


    - -Which example is the most adapted to what I want to do?

    I would recommend using simple_peripheral or project_zero to start with. They are peripheral devices that advertise and can form a connection as a peripheral right out of the box. You should be able to connect to them using an Android smart phone app such as BLE Scanner or Light Blue or the TI Android app.

    -- What files should I modify in that example to configure the standalone functioning? Are there any files corresponding to the ones I am used to?
    I would work with the following files: simple_peripheral.c, simplge_gatt_profile.c
    Simple_peripheral.c contains the task that interfaces to the BLE-Stack. You can merge this with an ADC example like adcsinglechannel or others. Just be aware to pend/post events and don't starve the processing of BLE events in the app task. I would create events in addition to those that exist related to ADC conversions.

    Simple gatt profile is the vehicle for sending data over GATT. Depending on the format of your data over the air, you may want to update this file. I recommend using char 5 because it supports notifications, these are some of the lightest weight procedure types in BLE and are good for throughput. (asynch)

    -- I suppose I will have to add new tasks for the ADC and storage already coded, is that right?
    Do you mean non volatile storage? If so ,yes this is described in section 3.10.3 of the Software Developer's Guide.