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.

RTOS: Unresolved symbols for event related functions

Other Parts Discussed in Thread: SYSBIOS, CC2640

Tool/software: TI-RTOS

Hi,

I m getting following unresolved symbol error for following events in ccs

undefined                                                              first referenced
symbol                                                                              in file
---------                                                                           ----------------
ti_sysbios_knl_Event_Params__init__S         <whole-program>
ti_sysbios_knl_Event_construct                       <whole-program>
ti_sysbios_knl_Event_pend__E                       <whole-program>
ti_sysbios_knl_Event_post__E                         <whole-program>

Also my app_ble.cfg file contains

//Semaphore.supportsEvents = true;
Semaphore.supportsEvents = false;


/* ================ Events configuration ================ */
if (typeof USE_EVENTS != 'undefined' && USE_EVENTS != 0)
{
var Events = xdc.useModule('ti.sysbios.knl.Event');
}

I have also defines USE_EVENTS=1 in XDCtools->advanced options

Still this error persists.

Can somebody give me a solution this problem??

  • Hi Pavithra,

    I used ble_sdk_2_02_01_18 and TI-RTOS for CC13xx/26xx v2.20.01.08. I imported the simple peripheral  projects. I add the following to the app_ble.cfg file (additions in bold)

    utils.importFile("../../../../../src/common/cc26xx/kernel/cc2640/config/cc2640.cfg");

    /*

    * Extend the cc2640 configuration

    */

    //Semaphore.supportsEvents = true;

    Semaphore.supportsEvents = false;

    /* ================ Events configuration ================ */

    if (typeof USE_EVENTS != 'undefined' && USE_EVENTS != 0)

    {

        var Events = xdc.useModule('ti.sysbios.knl.Event');

        print("Howdy!!!!!!");  // shows up in the build log...used to verify that it was included:)

    }

    Then I added the USE_EVENTS=1 in the XDCtools->Advanced->Config Script args (as you did).

    In main.c, I added a Event_Params_init() (and #include <ti/sysbios/knl/Event.h>). I was able to build the application then. 

    Can you attach a cleaned project with the problem?

    Todd

  • Great. I split your thread to allow someone to answer the follow-up question. I have not worked on this area and the new thread will get a faster answer.

    Here's the split thread: https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/598031

    Todd

  • Hi Todd,

        print("Howdy!!!!!!");  // shows up in the build log...used to verify that it was included:)

    Saw this line in your code snippet.

    print function is used here. Where can i find the declaration, header file and all??

    Also can i use print function to get print statements in CCS console?

    I tried changing adding following code in app_ble.cfg

    var SysMin = xdc.useModule('xdc.runtime.SysMin');
    SysMin.bufSize = 128;
    System.SupportProxy = SysMin;
    //var SysCallback = xdc.useModule('xdc.runtime.SysCallback');
    //System.SupportProxy = SysCallback;

    and adding 
    System_printf("Hello World :)");
    System_flush();

    But didnot get anything in the CCS console. What else should i do??

  • The above print API was used in the .cfg file. It is outputted in the build output. It is not a target API.

    Can you add a '\n' into your string? CIO is not flushed to the CCS console until a new-line or when it is full when the System_flush is called.

    Todd