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.

Steps to setup CC2650EM 5XD

Other Parts Discussed in Thread: CC2640

Hello,

Background:

We have been running the CC2650EM 7ID using the RF06 evaluation board with CCS V6.  Our target device is being switched to a CC2640 with a 5x5 mm package from the 7x7mm.   So we want to test our BLE program using the CC2650EM 5XD prior to porting to the new PCB.  The SimpleBLEPeripheral app was used as a starter, and to also build and test a new iOs application.  The design provides a virtual wire for the UART plus some sensor data.  

I recently purchased a CC2650EM 5XD to test the code on the 5x5 mm chip to make sure it is ready to port to the new pcb.  I didn't have success getting the SimpleBLEPeripheral to run on our target pcb.

Questions:

1)  What do I need to change in the Project Settings to build and debug the CC2650EM 5XD?  Project runs fine with the CC2650EM 7ID.

a. Change Board.c & Board.h files by using preprocessor define CC2650EM_5XD, and including path to the board.c/.h files for the CC2650EM_5XD

b. Disable LCD support by not defining TI_LCD_INLUDED.

2) Do I need to purchase a License for CCS V6 to run our external target using the SmartRF06 via XDS100v3?

Thanks for your help!

Dan

  • Hi Dan,

    The TI example projects contains a generic Board.c file which includes one of the EVM board files.

    By modifying the compiler search path ("${TI_RTOS_DRIVERS_BASE}/ti/boards/SRF06EB/CC2650EM_7ID") the include statement in the resolved Board.h file will define the correct EVM for you (CC2650EM_5XD).

    In all contexts where you need the symbol you also then need to include Board.h (as done in main.c) or define a global symbol CC2650EM_5XD.
    To check that it is resolved properly simply right-click the include Board.h statement and press "Open declaration".

     
    You also need to remove the define TI_LCD_INCLUDED as the LCD is not connected to all needed pins on the 5x5 EM.

    Note that there is a syntax bug in the RTOS 5x5 board file that comes with the 2.0.0 version of the BLE stack that needs fixing:
    e2e.ti.com/.../420803

    Regards,
    Svend

  • Svend,

    Thank you for your answer. We were able to get the 5XD board running properly, and this helped debug a fault on our target PCB.

    Thanks again!
    DAn
  • Great !!!


    It works fine. Here main steps:

    1) CCS > Properties > CCS Build > ARM Compiler > Include Options

     change "${TI_RTOS_DRIVERS_BASE}/ti/boards/SRF06EB/CC2650EM_7ID" to "${TI_RTOS_DRIVERS_BASE}/ti/boards/SRF06EB/CC2650EM_5XD"

    2) Refresh source code index within CCS environment

        CCS > Project > C/C++ Index > Rebuild / Freshen all files

    3) Remove all references about LCD on main module (e.g. SimpleBLEPeripheral.c)

        //#include "board_lcd.h"
        //  Board_openLCD();
        //LCD_WRITE_STRING  ...
        //LCD_WRITE_STRING_VALUE ...

    That's all

    Regards

    Alex

  • In addition, please see the BLE SW Developer's Guide (SWRU393) and the sticky CC2640 FAQ thread.

    Best wishes