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.

CCS/CC2640R2F: Using only one data channel on connected status

Part Number: CC2640R2F


Tool/software: Code Composer Studio

Hello, 

We are testing CC2640R2F product in our lab and it shows different performance with RSSI depends on data channels. 

I found these three threads on the forum and knew that the way to limit channel using channel maps.

https://e2e.ti.com/support/wireless-connectivity/bluetooth/f/538/t/598251

https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/507332/1844550

https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/404558/1433442

These talked about HCI_LE_SetHostChanClassificationCmd() command and I put the following code on GAP_LINK_ESTABLISHED_EVENT and return value is SUCCESS (0x00)

case GAP_LINK_ESTABLISHED_EVENT:

static chanMap_t chanMap;
uint8_t status;

chanMap.chanMap[0] = 0x01; // Channel 1 
chanMap.chanMap[1] = 0x00; 
chanMap.chanMap[2] = 0x00;
chanMap.chanMap[3] = 0x00;
chanMap.chanMap[4] = 0x00;

status = HCI_LE_SetHostChanClassificationCmd(chanMap.chanMap);
Display_print1(dispHandle, 22, 0, "ChanMap: %d", status);

....

As far as I understand, it transmit data via data channel 1 and do not use other data channel.

But, when I read device info by hciActiveConnInfo_t struct. it still hop channel.

I want to get some advice.

Thanks for your help in advance.

1. How to transmit data using only one channel?

2. Is it the correct way to use HCI_LE_SetHostChanClassificationCmd()?


Regards,
Soon

  • Hi all,

    e2e.ti.com/.../685898

    According to this thread, minimum quantity of data channels is 2.
    So, I modify this code to use 2 channels and Channel map has been changed 0:0:0:0:3.
    RSSI value is more stable than hopping all data channel.

    But, still don't know which chanMap array is LSB or MSB.

    If, channel Map is 0:0:0:0:3, does it mean using Channel 0 and 1 or 35 and 36?

    Regards,
    Soon
  • Hi Soon,

    You are correct in that you need to have a minimum of 2 supported data channels. What exactly are you trying to do? Are you trying to look at Packet Error Rate per channel? There is an HCI command that allows you to do PER by channel and then you can use this result to allow you to set what channels you wish to use. As far as channel map, I do not know if it's LSB or MSB, but it would be easy to test by setting one end and looking at your sniffer to see what ends up happening, as in what data channel is used.
  • dev.ti.com/.../group___h_c_i.html

    API documentation for the HCI command.
  • Thanks Evan,

    Actually I am measuring RSSI value according to the distance. In terms of hopping all data channel, RSSI value quite swing. so, I would like to check if I test it on 1 or 2 channel, what performance it shows. that is, I think it can be relate to packet Error Rate per channel.

    Best regards,
    Soon