Audio routing in CYW20721

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
EdIb_4746646
Level 1
Level 1
Welcome! First question asked First reply posted

Hi,

We have a project specifications where audio routing capabilities are required.

We want to know if is possible to put the profile A2DP of CYW20721 in SINK and SOURCE at same time and route the SCO from one role to the other one.

We want to know if is possible the same behaviour in the HFP profile (put the chipset in AG and HF at same time and route the SCOs).

We want to know if chipset can maintain the commented architecture plus SPP profile at same time.

That's all

Regards

0 Likes
1 Solution
PatrickC_56
Employee
Employee
First like received

Hi,

The 20721 support both A2DP Source and Sink, but not at the same time.

A2DP Source and Sink cannot be used simultaneously because:

  • Our I2S bus can be configured in either Input or Output (but not in both modes at the same time)
  • There would not be enough CPU/MIPS to Encode and Decode A2DP streams simultaneously.
  • There will, probably, be not enough Bluetooth bandwidth to Send and Receive two A2DP streams simultaneously.

This is the same for Headset profiles. The device cannot be, simultaneously, AG and HS. The reasons are:

  • In Embedded (Wiced) mode only one SCO link is supported (in your case, two would be required).
  • The PCM bus supports one (bi-directional) channel only.
  • There would not be enough CPU/MIPS to Encode and Decode two mSBC (in case of Wide Band Speech) links.

When either an A2DP Stream or SCO is active, the SPP can be used. The SPP throughput will be reduced (it has a lower priority than A2DP & SCO).

Thanks,

Patrick

View solution in original post

5 Replies
PatrickC_56
Employee
Employee
First like received

Hi,

The 20721 support both A2DP Source and Sink, but not at the same time.

A2DP Source and Sink cannot be used simultaneously because:

  • Our I2S bus can be configured in either Input or Output (but not in both modes at the same time)
  • There would not be enough CPU/MIPS to Encode and Decode A2DP streams simultaneously.
  • There will, probably, be not enough Bluetooth bandwidth to Send and Receive two A2DP streams simultaneously.

This is the same for Headset profiles. The device cannot be, simultaneously, AG and HS. The reasons are:

  • In Embedded (Wiced) mode only one SCO link is supported (in your case, two would be required).
  • The PCM bus supports one (bi-directional) channel only.
  • There would not be enough CPU/MIPS to Encode and Decode two mSBC (in case of Wide Band Speech) links.

When either an A2DP Stream or SCO is active, the SPP can be used. The SPP throughput will be reduced (it has a lower priority than A2DP & SCO).

Thanks,

Patrick

Hi Patrick,

Thank you for your prompt reply.

Regarding A2DP side:

  • In our case the use of I2S is not required, we want just resend the AVDTP (SBC or other codecs) packets received from Audio Sink to the Audio Source.
  • In this scenario no need to decode the A2DP streams, we want just resend the packets. So I think that the CPU/MIPS consumption is lower than decoding and encoding scenario.
  • The main idea is to have two BT links, one with the smartphone and other one with the headset. Just resend the content from the smartphone to the headset, it is just like a man in the middle.
  • Is our scenario possible with the commented conditions?

Regarding HFP side:

  • Which ways do we have to get two or more SCO links? Where I can check the maximmum SCO links that one chipset can support/handle?
  • PCM: No need to output/input in PCM, just resend information
  • No need to decode and encode SBC, just resend.

We are achieving our commented scenario with the CYW20704 A2 (older chipset than CYW20721) where more than two SCO are possible with external MCU that has lower specs than the ARM cortex M4 embedded in the CYW20721.

The problem is that we want to reduce the costs avoiding the external MCU and CYW20721 seems a good solution. Which chipset do you recommend for the commented scenario?

Thanks and regards

0 Likes

Hi,

Unfortunately, our chips do not support such features (in Wiced/Embedded mode).

We have a plan to add some APIs to implement it (at least for SCO repeater), but I’m not sure when it will be ready (probably in October or November).

Thanks,

Patrick

0 Likes

Hi Patrick,

Does it means that at this moment the only way to achieve our scenario is using the Bluetooth HCI controller defined in the Bluetooth Core specification? Which is the maximum HCI UART speed in CYW20721? In the datasheet says 1.5Mbps but in some examples of modus toolbox I am able to open a realterm session at 3Mbps with good communication. 

0 Likes

Hi,

Yes, at this moment, the only way to achieve your scenario is using the Bluetooth controller in HCI mode (Not Wiced/Embedded mode).

The maximum HCI UART speed of the CYW20721B2 is 3Mbps. The limitation to 1.5Mbps was for the previous version of the chip (CYW20721B1).

Thanks,

Patrick