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.

CC1352P: rfObject.state.semSync blocking radio thread

Part Number: CC1352P


Hi! 

I'm trying to use a semaphore to exit my radio loop, but my radio loop is blocked on rfObject.state.semSync according to ROV. 
Any tips on figuring out how/why this is stuck? RF_runCmd never exits.

    while(true) { // each loop iteration is 1 chain starting with RF_cmdFs

        RF_runCmd(rfHandle, (RF_Op*)rf_ctx.RF_cmdFs, RF_PriorityNormal,
                  &listenerCallback, (RF_EventRxEntryDone | RF_EventLastCmdDone));

        if (Semaphore_pend(radioExitSem, BIOS_NO_WAIT)) {
            break;
        }
    }

Looking closer, I have a cmdPropRx that waits forever and is typically killed with CMD_TRIGGER. 
Tried killing the command with both RF_flushCmd (I don't have the last command handle, was hoping it would catch all).
The CMD_TRIGGER doesn't seem to be killing the RX either. 

                Semaphore_post(radioExitSem);
                RF_flushCmd(rfHandle, 0, 1);
                rfc_CMD_TRIGGER_t triggerCmd = {
                    .commandNo = CMD_TRIGGER,
                    .triggerNo = 1
                };
                RF_runImmediateCmd(rfHandle, (uint32_t*)&triggerCmd);

Open to suggestions here.