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.

CC2340R5: Disable CRC checking for RCL Command

Part Number: CC2340R5

Customer is using RCL commands to receive BLE packets, is there a way to NOT check the CRC in received packets?

Best regards,

Shuyang

  • Hi Shuyang,

    How customer are using RCL commands, they're not using the BLE stack to do so?

    Do they used RCL commands for propRF or Bluetooth LE packets?

    There are no proper way to disable the CRC check, why customer want to disable them, it could help to find an other debugging approach.

    Regards,

  • Hi Guilliaume,

    Customer is using RCL commands to receive BLE packets. The background for this question is that they are using RCL command to get RSSI inside the BLE packets, and found that when CRC has error, stats.lastTimestamp will be 0. They wish to have stats.lastRssi and stats.lastTimestamp even if CRC has error, so they are trying to disable CRC to achieve this.

    Would you please comment on the reason for stats.lastTimestamp is 0? And is it not recommended or not possible at all to disable CRC? Is there a way to get lastTimestamp when CRC error without disable CRC?

    Below is the code snippet the customer is using:

         rxCmd.channel = chan;
    
        /* Start command as soon as possible */
        rxCmd.common.scheduling = RCL_Schedule_Now;
        rxCmd.common.status = RCL_CommandStatus_Idle;
    
        rxCmd.common.timing.absStartTime = 0;
        rxCmd.common.timing.relHardStopTime = end - hal_get_current_time();
        rxCmd.common.timing.relGracefulStopTime = -400;
    
        ctx.accessAddress = access_address;
        ctx.crcInit = crc_init;
    
        /* Submit command */
        RCL_Sta = RCL_Command_submit(rclHandle, &rxCmd);
    

    Best regards,

    Shuyang

  • Hi Shuyang,

    They are using some functions that are not meant to be used by costumers (such as hal_get_current_time()).

    If they wish to get the RSSI, they can use the RSSI API that is provided in RCL.c. That way they wont depend on getting the packet without errors.

    It would be easier to help you on this one by knowing what they are trying to accomplish for their use case.

    I suggest them to use the BLE stack to deal with Bluetooth LE packets, otherwise they should use the generic command handlers, like propRF ones.

    regards,

  • Hi Guillaume,

    The customer can get the RSSI when CRC error, but timestampValid and lastTimestamp are 0. Is there an API to acquire the timestamp when CRC has error?

    Best regards,

    Shuyang

  • Hi Shuyang, 

    No there is no API to acquire timestamp when there is a CRC error. You need a valid packet to receive the timestamp.

    To help on this one we need more context and what customer is trying to do. There is probably another way to accomplish this but we need to know a bit more.

    regards,