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.

AWR1243: mmwavelink usage in cascaded mode?

Part Number: AWR1243

Hi everyone,

I am trying to get two chips up in cascaded mode. Therefor I have a few questions about the mmwavelink API. As I understood you can use the deviceMap to determine which device(s) you want to send a certain command to. This works perfectly fine when I am not in cascaded mode, even when configuring both chips at once. However, when in casceded mode, I have to power up the master first, followed by the slave. When I call the power up function for the slave, the API callback to disable the first device is issued by mmwavelink. This puts the master in reset mode - the clock turns off and I am not able to power up the slave.

I guess I am doing something wrong or did not understand how to implement the API callbacks. Do I need two instances of rlClientCbs_t, one for each client? Can they share the same callbacks? Especially the async event callback and its global variables? If it should work with one instance of rlClientCbs_t, why does powering up ones device turns off the other? The mmwavelink code is quite clear about that within the power on function:

    /* if driver is already initialized */
    if ((RL_NULL != rlDriverData) && (rlDriverData->isDriverInitialized == 1U))
    {
        /* DeInitialize Device */
        retVal += rlDevicePowerOff();
    }

Ofcourse the driver is already initialized! So what is my mistake? Or is the mmwavelink source code wrong?


Best regards,

Fabian