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.

CC2650: connection problem about project zero

Part Number: CC2650
Other Parts Discussed in Thread: UNIFLASH, SYSBIOS

Hi there,

I was going through the project zero of BLE and now had some difficulties. I have debugged and launched project zero and host test on two of my cc2650 launchpads, but I failed to connect to them through serial port. I tried btool and device monitor but still can't make it. Logs are as below.

For device monitor:

23:59:57.989 > *** APPLICATIION RESET ***

23:59:58.016 > Host: COM12 115200 baud no flowc.

23:59:58.019 > HCI log disable

00:00:00.209 > HCI link error

00:00:03.023 > No response from BLE host device at COM12

00:00:08.158 > *** APPLICATIION RESET ***

00:00:08.187 > Host: COM11 115200 baud no flowc.

00:00:08.188 > HCI log disable

00:00:10.412 > HCI link error

00:00:13.175 > No response from BLE host device at COM11

For btool, there's failed connecting to COM11 where the launchpad ran project zero, and for COM12 the log is as below

[1] : <Info> - 12:03:29.067
Port opened at 2023/9/2 0:03:29
--------------------------------------------------------------------
[2] : <Tx> - 12:03:29.866
-Type : 0x01 (Command)
-OpCode : 0x0C03 (HCI_Reset)
-Data Length : 0x00 (0) byte(s)
Dump(Tx):
0000:01 03 0C 00 ....
--------------------------------------------------------------------
[3] : <Error> - 12:03:31.887
Message Response Timeout
Name = HCI_Reset
OpCode = 0x0C03
Tx Time = 12:03:29.866
--------------------------------------------------------------------
[4] : <Warning> - 12:03:31.916
Device Reset Timeout
Device May Not Function Properly
--------------------------------------------------------------------

Here's my config

ccs 7.40

ble_sdk_2_02_01_18

compiler 5.2.9

rtos 2_20_01_8 

Simplelink academy v1.11

Regards,

Shaw

  • Hi Shaw,

    Thank you for reaching out.

    Can you please try to flash the host_test example on the CC2650 and retry the same as you have described? This should help us understand whether the issue is with the UART connection or with the Software.

    In case it does not work either with the suggestion I made, could you please provide a picture of your setup?

    Best regards,

  • Hi Clément,

    Thank you for replying.

    Here's how I try to solve the problem. First I built the app and stack project, and when I tried to debug the stack project, an error occurred as "ccs Error: (Error -264 @ 0x0) ... (Emulation package 7.0.100.0)". I went to "C:\ti\ccsv7\ccs_base\common\uscif\xds110" and update the firmware manually according to the Readme, and then I can debug both the stack and the app project. However, my cc2650 still couldn't be recognized by BLE device monitor or Btool.

    For BLE, the log was still as:

    17:30:49.106 > *** APPLICATIION RESET ***

    17:30:49.140 > Host: COM11 115200 baud no flowc.

    17:30:49.141 > HCI log disable

    17:30:51.270 > HCI link error

    17:30:54.130 > No response from BLE host device at COM11

    For Btool, the connecting to the COM failed again

    In case I made stupid mistake, I wanted to make sure that myport settings are right.

    Baud: 115200. Flow: none. Connected to application/user UART rather than Data Port.

    Regards,

    Shaw

  • Hi Shaw,

    Can you please specify which image you have flashed on the device for your last test?

    Regards

  • Hi Clément,

    I'm new here so could you please tell me how to check the image I just fleshed?

    Thank you for your patient guidance.

    Regards

  • Hi Shaw,

    I am asking the name of the project you have built and downloaded on the CC2650.

    As mentioned before, I would like you to verify if building and flashing the project named "host_test " on the CC2650 would actually work.

    Regards,

  • Hi Clément,

    I think I'm doing with "host_test" and here's where I imported it.

  • Hi,

    Great, so I guess you are running the host_test example. Once the device is flashed, please make sure to power cycle it.

    Please also provide a picture of your setup and specify the IOs usd for UART communication.

    Regards,

  • Hi,

    Okay I will never forget to power cycle it. Again could you please tell me exactly how to make it?  I really need some instruction.

    Regards

  • Hi,

    By "power-cycle" I mean power-down, and then power-up again the device.

    Regards,

  • HI,

    Oh I mean how to provide the picture you asked for. Sorry for the misunderstanding.

  • Hi,

    Please provide a photo of the setup showing the UART connection between the computer and the CC2650 device.

    Regards,

  • Hi,

    Do you mean this?

    Regards,

  • Hi Shaw,

    I would like to verify if the physical UART connection between the device and the computer looks correct.

    Regards,

  • Hi Clément,

    Here's the photo of my connection. I simply use the USB cable to get them connected.

    Regards,

  • Hi,

    Thank you. All seems as expected on the LaunchPad side.

    To continue the investigations, I will ask you to:

    - on the computer, make sure to close all the applications that may try to access the COM port used by the LaunchPad (CCS, Uniflash, other instances of BTool, etc.). To make sure,

    - please provide a screen shot of the Device Manager showing the available COM ports

    Regards,

  • Hi Clément,

    Thanks for your patient guidance. Here's the screen shot.

    Regards,

  • Hi,

    Everything looks ok on the Device Manager.

    Next step is to make sure the code on the CC2650 works well. Can you please try to execute the code in debug mode on the CC2650. This means you should try to step in the code (using CCS). The goal is to identify whether the code gets trapped in an error loop somewhere.

    At first, I would suggest to run the code step by step. If it works well, you can let the code run freely for a while then press the "pause" button. Once the execution paused, you should be able to step again in the code and see if an infinite loop has been hit.

    Regards,

  • Hi,

    It seems that something wrong may occur about the code of host_test. I step in the code and in some cases it didn't finished properly. This may be long and boring so I again express my gratitude.

    For the stack, first, I usd "step over" to check the code, and it failed to pass CommonROM_Init() in icall_startup.c. To be more specific, it failed to pass RT_Init_CommonROM() in the common_rom_inic.c.

    Second when I only use "step in", it goes to these lines. For the last screen shot, it jumps into line 101 and then 98 and retruns to 101, finally endind up nowhere.

    For the app, first step over and it fail at BIOS_start() with a new tab showing that it" Can't find a source file at "/db/vtree/ademars/git_trees/avala-v/src/ti/sysbios/BIOS.c" ". Then step into and more source are shown as not found. I downloaded all the things at default location.

    Regards,

  • Hi,

    For the app, first step over and it fail at BIOS_start() with a new tab showing that it" Can't find a source file at "/db/vtree/ademars/git_trees/avala-v/src/ti/sysbios/BIOS.c" ". Then step into and more source are shown as not found. I downloaded all the things at default location.

    This is expected behavior as you don't have access to all the sources (especially the code in ROM).

    I would rather suggest to set a break point at the beginning of the main() to ensure the code reach this points. After this, try to add a breakpoint right after the initialization of the BLEStack.

    Regards,

  • Hi,

    Thank you for your reply. By setting break points at the main() and every function before BIOS_start(). I may found it clear that the code didn't get trapped in any unexpected loop. Maybe something else is wrong?

    Regards

  • Hi,

    Great to see there is no issue in the boot procedure of the device.

    Now, setup a breakpoint after the BLEStack initialization and verify it is reached.

    After this, let the device running freely and stop the execution. Step a few time in the code and see if you reach an error loop.

    Regards,

  • Hi,

    Thank you for your reply, and I want to make sure which is the exact funtion of BLEstack initialization in the main.c of app project.

    Regards,

  • Hi,

    I seemed to mistakenly click the "resolved". Please ignore it.

    Regards,

  • Hi,

    In main(), only the task are created. The tasks are then started when calling BIOS_start().

    If you want to find the BLEStack initialization functions, you should review the tasks created in main().

    Regards,

  • Hi,

    I guess I find the BLE initialization functions like GAP_RegisterForMsgs(selfEntity) and GATT_InitClient() in the host_test task, but when I running the HostTestApp_createTask() in main() I can just create the task and unable to go into the registered function HostTestApp_taskFxn where it initialize the BLEStack. I wonder if I have some misunderstanding about this.

    Regards