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.

Adaptive Freq Hopping in TI BLE stack v1.4.0

Other Parts Discussed in Thread: CC2540

Hello,

Is AFH implemented in TI BLE stack v1.4.0?

We would like to create a list of channels to avoid for our application using the RSSI threshold. Is there a way to read RSSI for each channel?

We are using CC2540 256K version of the chipset.


Thank you!

  • Mehta,

    Did you get any answer for this question?

    We are trying hard to get this in our project and could not find any documentation. 

    TI,

    Can you please help us here. How do we create the list of channels to be avoided by  stack for creating Adaptive Frequency Hopping (AFH) mechanism? Is this implemented in CC26xx or CC25xx chipsets and stacks?

    Thanks,

    Arjun

  • Hi Arjun,

    AFH is part of the BLE spec and is supported by all 254x devices.

    The channel map is managed by the BLE stack, the user application can read it using the following HCI command

    LE Read Channel Map
  • Thanks for the answer Sean. Appreciated!

    I've couple more follow up questions. Can you please answer?

    1. So, if hciStatus_t HCI_LE_ReadChannelMapCmd( uint16 connHandle ); is used to read the Channel Map then how do the Application get the channel map? Is there any registration function to get the Channel Map?

    2.  There is another API - hciStatus_t HCI_LE_SetHostChanClassificationCmd( uint8 *chanMap ); to set the Channel Map (discovered this through your answer). Can you please tell me the format of "chanMap " parameter in the above function? An example would greatly help.

    thank you very much.

  • Arjun,

    1) the hciStatus will return immediately, but there is another event that will return the channel map to the application. The app will need to register for these events from the stack

    2) The channel map is a 37-bit field with each field representing one of the 37 BLE channels.

    All HCI commands that are not vendor specific are documented in the BLE specification documents. Please see the relevant spec doc Vol 2 Part E for the HCI specification.
  • Hi Sean,
    i also want to solve this problem. i ues HCI_LE_ReadChannelMapCmd(), and get something from pMsg. pMsg->pReturnParam[]... Can i get channelMap from this ? By the way, Can I use HCI_LE_ReadChannelMapCmd() dynamically get the channelMap?
    Thank you very much!