Streaming Audio Using the WT-32 Bluetooth Module
As I mentioned before, one of the goals I have for my software defined radio (SDR) setup is to stream audio and control the radio via Bluetooth. While I haven’t even thought about the control part yet, I have discovered that streaming audio is more difficult than it appears at first.
First, the radio has to be Bluetooth enabled and capable of handling the A2DP profile. (This is the high-quality audio profile and is used to give the desired audio bandwidth.) In addition, since the audio is coming from the radio to the PC the radio must be configurable as an audio source with the PC acting as the audio sink. This is the reverse of what you’ll normally run across. (Usually the PC will act as an audio source.)
To make the radio Bluetooth capable I purchased the Bluegiga WT32 Bluetooth breakout board available from Sparkfun. The WT32 is intended for applications such as this and is easily configurable via the serial port.
The circuit needed to configure the module comes almost directly from the Bluegiga documentation and is shown in the figure below.
To configure the module connect a serial cable to the appropriate pins and configure the port to operate at 115200 8N1. When you enter the command
reset you should see the banner as shown below.
WRAP THOR AI (3.0.0 build 165)
Copyright (c) 2003-2008 Bluegiga Technologies Inc.
Once you’ve seen the banner, enter the following commands to configure the WT32 as an audio source:
set profile a2dp source
set bt class 240428
At this point all that’s left to do is configure Linux to act as an audio sink, which I’ll cover next time.