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/CC2640R2F: ACK Status is different in Debug mode and Normal mode

Part Number: CC2640R2F
Other Parts Discussed in Thread: TEST2

Tool/software: Code Composer Studio

Hi everyone!

After the simple_central is connected to the smartphone (android), ACK Status is a litte different in Debug mode and Normal mode.

In debug mode, the ACK state is stable (OK). Once exiting debug mode, the ACK state may become RETRY or Unexp. SN.



Once the ACK status is RETRY or Unexp several times in a row (about 4 times), it will disconnect. 


How can I solve this issue?

Many thanks, Gary

  • Hi Gary,

    That seems very odd. How easy is it to reproduce? Assigning an expert internally to follow-up.

  • Hi Gary,

    • What are the connection parameters in this case?
    • Which SDK version are you using?
    • Which phone are you using?
    • Have you done any changes to simple_central?
    • What board is the cc2640r2f mounted on?

    Can you try to disable power saving in the project? This should have similar effects on timing as running in debug mode. See main.c, there should be some mention of this.

    Best regards,
    Aslak

  • Hi Joakim

    This is test table for Normal Mode and Debug Mode with my project:


    You can see that, The Debug Mode is more stable than the Normal Mode.

    Disconnect situation is hard to test, the ACK status must fail four times in a row.

    I can't understand the meaning of the experts. Is it a tool in CCS?

    Many thanks, Gary

  • Hi Aslak,

    >>What are the connection parameters in this case?
    #define CONN_SUPERV_TIMEOUT 50
    I only set this setting.

    >>Which SDK version are you using?
    2.40.0.32 / CCS 8.3

    >>Which phone are you using?
    Mi MIX3

    >>Have you done any changes to simple_central?
    Yes, I have change many.

    >>CC2640R2F Launchpad

    >> disable power saving in the project
    After the test, no matter whether power saving is enabled or not, there is no difference in DEBUG mode.

    Many thanks, Gary

  • Hi Gary,

    The difference should be in the NORMAL mode, it should perhaps behave more like DEBUG when power saving is turned off.

    Can you replicate your observations without all your many changes? Which is to say, unmodified simple_central?

    Best regards,
    Aslak

  • Hi Aslak,

    It's right, I get the same behave after disable POWER_SAVING in Normal.

    xPOWER_SAVING test and unmodified simple_central test:

    It show it still has the same problem without modifying the simple_central.

    Many thanks, Gary

  • Hi Gary,

    What is Test1 and Test2?

    Can this be reproduced (unmodified simple_central) also with:

    • Other Launchpad
    • SDK 3.10
    • Other phones

    In addition, can you try to you enable POWER_SAVING, but tell the stack that your sleep crystal is inaccurate, by calling HCI_EXT_SetSCACmd(500); right after ICall_registerApp() in simple_central.c? It's possible that the sleep clock crystal is inaccurate and the slave doesn't know so doesn't wake up early enough.

    Best regards,
    Aslak

  • Hi Aslak,

    Test 1 and Test 2 are the results of two consecutive tests.

    Coincidentally, there are just two possible situations:

    1. A little unstable

    2. Continuous RETRY and then disconnected



    Test result table (another launchpad & SDK 3.10 & another phone (Sony Z3)) :

    No SetSCA vs SetSCA



    After adding "HCI_EXT_SetSCACmd(500);" , ACK status is more stable them before.

    So the question is, is the sleep clock crystal inaccurate?

    Many thanks, Gary