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.

CC256XSTBTBLESW: HFP Demo question

Part Number: CC256XSTBTBLESW

Hello,

I am working with the following system: STM3240G-EVAL Board + CC256XEM-STADAPT Board + CC2564MODNEM Board and I am exploring the CC256XSTBTBLESW.

I am experimenting both the HSP and the HFP demo and I have some questions:

- it should be possible to modify the example so that the controller does not decode the audio and instead send it to the host? What modifications are needed?

- for the HFP demo, it should be possible to disable the 16 kHz feature, in order to develop an HFP + LE application?

Thank you,

regards

Arianna

  • Hi Arianna,

    For speech profiles such as the HSP and HFP demos where the audio is sent as a SCO stream, it is highly recommended that the controller decodes the audio and outputs it directly using PCM. This is due to timing issues that could arise if you were to send the audio over HCI.

    It is possible to use the HSP and HFP demos in 8KHz-only mode so that you can use the coprocessor for BLE. In the demo code, you can simply edit DEFAULT_AG_SUPPORTED_FEATURES to remove the codec negotiation bit, and comment out the BSC_EnableFeature(BluetoothStackID, BSC_FEATURE_WIDE_BAND_SPEECH) call in OpenStack(). That will prevent 16KHz audio from being used, freeing up the coprocessor.


    Let me know if you need more clarification, or have further questions on using the HFP demo.

    Regards,

    Michael

  • Hi Michael,

    thank you again for your reply, I successfully disabled the 16 kHz feature!

    But the audio quality is very poor (also @16kHz): there is some backgound noise and there is some samples lost (you can ear some milliseconds of silence every 2-3 seconds). Any idea of why?

    I asked you about sending the audio to the host because we are trying to figure out how to easily switch between the 8kHz audio from the Bluetooth and the 48 kHz audio internally managed by the host when needed (we were thinking about some kind of resampling..).

    Another solution we are taking into account is to send the controller PCM directly into a DAC. It should be possible, right? Configuring the controller PCM/I2S as master is all we need to do that?

    Thank you again,

    regards

    Arianna

  • Hi Arianna,

    Yes, you should configure the controller as the PCM master, then route the PCM signals directly to the codec on your device.

    As for your background noise, have you isolated the issue to a specific subsystem? I suggest using a bluetooth sniffer to sniff the SCO connection to see where the noise and data loss might be coming from.

    Regards,

    Michael