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.

migrating code from a CC2650 to a CC2640

Other Parts Discussed in Thread: CC2640, CC2650

Hi,

What are the care-abouts when migrating code from a CC2650 to a CC2640 ?

Our Lab test is done with a SMartRF06+CC2650 and and working OK but on our application board equiped with CC2640 the code is not running.

Is there any special configuration to apply prior during the build , i.e related to ChipInfo_GetHwRevision() ?

Our test code is based on example HostTest.hex

Thanks for guidance.

Phil

 

  • Hello Phil,

    You can refer to this topic from the sticky CC2640 FAQ thread:

    Q: What is the difference between CC2650 & CC2640? How do I move from CC2650 to CC2640?

    A: The multi-standard CC2650 wireless MCU supports BLE as well as other wireless protocols, such as ZigBee. The CC2640 supports Bluetooth low energy only and is recommended for designs that are entirely based on BLE. All code generated from the BLE-Stack v2 SDK is binary compatible with both the CC2650 & CC2640, so no porting is required when switching from a CC2650 based development kit to a CC2640 based custom board. Additionally, IDE project configuration settings in the BLE-Stack v2.x SDK for CC2650 & CC2640 are cross-compatible; however, it is strongly recommended to not change the CPU settings in the IDE. Although the CC2650 has the HW & ROM capability to support additional wireless protocols, a given SW build can only support one wireless protocol. All TI CC26xx development kits feature the multi-standard CC2650 wireless MCU but are suitable for development of CC2640 based custom board designs.

    --

    Beyond that did you make any changes? Is it the same 7x7 package on the custom CC2640?

    Best wishes

  • Hi,

    I have almost the same question.

    1. My host_test application runs very well on SmartRF06 board with CC2650. However, when I flash images into CC2640 custom board with I-Jet, the application blocks in the NPI Task, and it never goes into host_test_app task. (I have put a breakpoint in host_test_app.c)

    2. When I test UART communication with SmartRF06 board, the NPI Task has received a NPI_TX_READY_EVENT (I think it comes from the BLE Stack), however, with our CC2640 custom board , the NPI Task has never received the NPI_TX_READY_EVENT.

    So could you please tell me where is the problem? I have blocked here for few days.

    Thanks in advance.

    Yang
  • Hi,

    I have compared the chip infos for CC2650 and CC2640:
    CC2650

    Protocol supported: 0x0E;
    Package type: PACKAGE_7x7;
    Device HW Rev Code: 8 
    Minor HW Rev: 0 
    Chip Family: FAMILY_CC26xx 
    HW Revision: HWREV_2_2 

    CC2640
    Protocol supported:0X0A;
    Package type:  PACKAGE_7x7
    Device HW Rev Code:  8
    Minor HW Rev: 1
    Chip Family:  FAMILY_CC26xx
    HW Revision: HWREV_2_3

    So how can I solve the problem?

    Yang

  • Hello Yang,

    Are you using a different HW layout as compared to the CC2650EM on the RF06 board? Did you change the UART TX/RX DIO pins on your custom board?

    Best wishes
  • Hello JXS,

    For the HW layout, they are the same.

    And for UART, I have inversed Tx and Rx DIO pins in CC2650DK_7ID.h for our mockup. And I have tested it with SmartRF06, it works well.

    Also I have used XDS100v3 on the SmartRF06 to flash a merged .hex to the CC2640. And the merged image works well on CC2650. However, on CC2640, the application is also blocked in NPI task. It never entries host_test_app.c.


    Yang

  • Hello JXS,

    I have tried with UART Echo Test on our custom board, and it works well. So the UART works on our board with swapped TX and RX.

    That means BLE Stack is not answering in CC2640.

    What do you suggest me to do?

    Best wishes,

    Yang

  • Hi Yang,

    Did you disable POWER_SAVING? Can you post your CC2640 schematic?

    Best wishes
  • Hello JXS?

    Thanks for your response. I have solved the problem.

    There are indeed some HW errors that makes the CC2640 perform badly.

    Thank you very well.

    Best regards,

    Yang
  • Hi Yang,

    Thank you for updated. Indeed, all variables must be accounted for in the bring up!

    And PhilM5? Any update on your side?

    Best wishes
  • Hi JXS,

    We've been working on the same case with Yang. There was an issue in the mounting of the 24MHz quartz. 

    Many thanks for your support, much appreciated.

    Best Regards

    Phil