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.

CC2564MODA: HFP -WBS profile limited to a Class 2 peripheral

Part Number: CC2564MODA
Other Parts Discussed in Thread: CC2564

Hi everyone,

Earlier this year I was trying to get Class 2 limited on my HFP + WBS unit. (see the previous subject: https://e2e.ti.com/support/wireless-connectivity/bluetooth/f/538/t/811745).
We finally got the result back from my modified Class 2 CC256XB.h patch and it was unfortunately not ok... The signal strength at spectrum analyzer did not change a bit.

I recently tried a different approach using the BTVSAPI function: 

VS_Set_Max_Output_Power(unsigned int BluetoothStackID, Byte_t MaxPower);

I followed the instructions found on this topic: https://e2e.ti.com/support/wireless-connectivity/bluetooth/f/538/p/449245/1635058#1635058 and I can see with a Bluetooth scanner that my RSSI is now reduced !
But this test is incomplete because I would like to reduce signal strength to +4dBm in all modulation used by the HFP profil when the device is unconnected and connected.

(1) How to reach a +4dBm limit with the VS_Set_Max_Output_Power function?

(2) Is that function affecting all modulation in all device state?

 

My main concern on this subject is that we don't own a spectrum analyzer, so we must go to a laboratory for testing the device.
I would be very thankful if someone could help me on that matter.

 

Regards,

Alain.

  • Hi Alian,

    I hope all is well. The important command that you need to look at is the HCI_VS_DRPb_Set_Power_Vector (0xFD82) function. This is where the power vector is set so that you can reduce the output power. You can then use the VS_Set_Max_Output_Power

    The power vectors is defined at the GFSK power levels. For BLE you can adjust the power level 1. Note that BLE is only se for a single power level. Thus you can adjust this vector as needed then use the command to run the channel and modulation that you need.

    Without a spectrum Analyzer it will be difficult to find the actual output power and since it is the MODA this actually needs to be done radiated. IF you can see the output power reduced the best way would be to work with your lab so that they can control the power and let you know the final vector value.

    I hope this helps.

    Thanks,

    Riz

  • Hi Rizwan,

    Thank you for your answer.

    To be a little bit more precise, I am not interested in with BLE. I only use BT Classic in a Hand Free profile (HFP) mode. I understood along documentations that they were several modulations used by the CC2564 (GFSK, EDR2 and EDR3). But if I can set a limit for all modulation, I'm ok with that.

    I also understand that we must run several tests in laboratory in order to find the +4dBm (even if I hoped for a single command with the right parameter :-)).

    So, you indicated me to look for the HCI_VS_DRPb_Set_Power_Vector command. From what I understand of the wiki page (http://processors.wiki.ti.com/index.php/CC256x_VS_HCI_Commands) I have to process the commands at a service pack level… the same approach I used last month and which did not work.

    I could probably ask laboratory guys to change settings in C functions to design a +4dBm limit, like you suggest. But I cannot ask them to generate service pack in order to set Power Vectors… Is there any way to use those commands right after the Bluetopia stack initialization? (for example after the BSC_Initialize() function).

     

    Regards,

    Alain.

  • Alain,

    Alain Werck said:
    Is there any way to use those commands right after the Bluetopia stack initialization? (for example after the BSC_Initialize() function).

    The implementation of the HCI_VS_DRPb_Set_Power_Vector commands is included in the BTVS.c under the VS_Set_Max_Output_Power API.

    You mentioned at the top that this approach did not work for you. Could you please explain your test in detail?

    Alain Werck said:
     (1) How to reach a +4dBm limit with the VS_Set_Max_Output_Power function?

    You can implement this by adding the following API call in your InitializeApplication function.

    VS_Set_Max_Output_Power(BluetoothStackID, 4);

    Alain Werck said:
    (2) Is that function affecting all modulation in all device state?

    Yes it will set all modulations to max output power of +4dBm.

    Best regards,

    Vihang