In the contemporary wireless audio industry, providing crystal-clear uninterrupted sound is such a major and recurrently faced problem. Depending on the nature of Bluetooth headsets ethereally connecting with other apparatus modules over wireless ambience or in the car for in-roads communication purposes, or in gaming devices, it is imperative that, from the engineers’ standpoint, audio signals need to stay unstuck from distortion. To validate and optimize further, SCO (Synchronous Connection-Oriented) loopback transmissions can be put to use.
In this manual, loopback mode is described. Why do we need loopback testing in Bluetooth audio? And how does one configure PCM or I2S for an SCO loopback using the Infineon AIROC Bluetooth controllers?
What is a Loopback Mode?
Loopback mode is a constraint and verification method for wireless audio. Rather than train the audio signal back to a set destination (e.g., speakers, headphones, etc.), the signal is looped back to the originating source. This allows the developers to check the signal quality, such as verifying hardware configurations and troubleshooting towards identifying any mismatch, without dependence on external devices for tests.
Normal vs. Loopback Mode:
Normal Mode: Audio is transmitted to the output device.
Loopback Mode: Audio is redirected back to the source for testing.
Test Environment
To configure SCO loopback transmission, you’ll need:
AIROC CYW20706 headset demo (PCM_OUT source) → GitHub demo project
Linux mbt tool for HCI command input → GitHub mbt tool
AIROC CYW89072 (or any supported Infineon Bluetooth controller) with firmware
Step-by-Step Setup for SCO Loopback Transmission
Step 1: Program the CYW20706 and Bring Up the Demo
- Flash the CYW20706 using ModusToolbox.
- Use the client control tool to run the demo.
- Pair a phone with the CYW20706 and start playback.
Step 2: Connect Hardware
Wire the CYW20706 PCM_OUT pin to the CYW89072 PCM_IN pin.
Step 3: Download Firmware
./mbt download [filename].hcd –minidriver
Step 4: Enable Loopback Mode
./mbt input_command 24fc0101
PCM Configuration
8K PCM
./mbt input_command 1cfc050001000101
./mbt input_command 24fc0101
16K PCM
./mbt input_command 7efc03010200
./mbt input_command 6dfc0400010102
./mbt input_command 1cfc050002000101
./mbt input_command 1efc050000030000
./mbt input_command 24fc0101
I2S Configuration
8K I2S
./mbt input_command 7efc03000200
./mbt input_command 6dfc0401010001
./mbt input_command 24fc0101
16K I2S
./mbt input_command 7efc03010200
./mbt input_command 6dfc0401010102
./mbt input_command 24fc0101
Pin Configuration Notes
For controllers like CYW555xx or CYW43xx, an additional command may be required to route PCM/I2S to default pins:
./mbt input_command 61fc0501b9b8b8b8
By default, the setup assumes TDM2 pins are in use. If you are using alternative pins, adjust the commands accordingly.
Key Takeaway
SCO loopback transmission is an invaluable tool for validating wireless audio performance. By configuring PCM or I2S formats with Infineon’s AIROC Bluetooth controllers, engineers can easily verify signal integrity, fine-tune system performance, and ensure a smooth end-user audio experience.
(This article has been adapted and modified from content on Infineon Technologies.)