Click here to jump to the Microchip PIC32 Bluetooth Audio Suites
Bluetooth Audio Software Stack Overview
The Bluetooth audio software stack enables Bluetooth devices to locate each other and establish connections to exchange data and interact with one another over Bluetooth. Below is a block diagram of the Bluetooth audio stack with all the available protocols and profiles. It consists of the controller interface, the Bluetooth protocols which form the Bluetooth core and the Bluetooth profiles.
Serial Port Profile (SPP)
Bluetooth SPP is the basic data transfer profile and serves as the basis for AVRCP and HSP profiles. This profile defines the requirements for Bluetooth devices necessary for setting up emulated serial connections using RFCOMM between two peer devices. Each serial port connection can connect two Bluetooth-enabled devices.
Microchip offers a basic PIC32 Bluetooth serial port profile available as a free download here
Advanced Audio Distribution Profile (A2DP)
The Advanced Audio Distribution Profile (A2DP) defines the protocols and procedures that realize distribution of audio content of high-quality in mono or stereo channels over Bluetooth. A typical usage case is wirelessly streaming music from a stereo music player to headphones or speakers. The audio data is compressed in an appropriate format for efficient use of the limited bandwidth. A2DP includes mandatory support for Low Complexity Subband Coding (SBC) of an audio stream, but can also support MPEG-1, MPEG-2, MPEG-4 and AAC codecs. “MP3” audio is the more common reference to the MPEG-1 Part 3 audio compression standard.
A/V Remote Control Profile (AVRCP)
This profile defines the requirements for Bluetooth devices necessary for the support of the remote control options and track metadata access. This profile is designed to provide a standard interface to control Bluetooth sound docks, headphones, TVs, etc. to allow a single remote control to control all of the Bluetooth enabled A/V equipment. For examples it is used for providing audio controls such as play, pause, skip forward, skip backward, fast forward, and rewind. PIC32 now supports AVRCP version 1.5 which includes provisions for bi-directional volume control.
PIC32 SBC Decoder Library
Low Complexity Subband Coding (SBC) is an audio coding scheme specially designed for Bluetooth audio and video applications to achieve high quality audio transfer at medium bitrates, while maintaining a low computational complexity. It is specified by the Bluetooth Special Interest Group (SIG) for the Advanced Audio Distribution Profile (A2DP). To ensure interoperability, the SBC codec is a mandatory requirement for A2DP support and all other codecs are optional. Microchip offers an SBC decoder as part of both Bluetooth Audio Software Suites 1 and 2.
PIC32 AAC Decoder Library
Advanced Audio Coding (AAC) is a standardized lossy compression scheme for digital audio that was intended to be the successor for the MP3 standard. The AAC audio compression standard is common to Apple iPhone, iPod and iPad devices. AAC decode is available in the PIC32 Bluetooth Audio Software Suite 2 package.
PIC32 Audio Equalizer and Filter Library
The PIC32 Audio Equalizer (EQ) Filter Library is specifically designed to assist with multiple-frequency filtering of digital audio. The library can work from multiple audio sources, and customize the listening experience to compensate for speaker, room / enclosure acoustics or user preferences. The library can support either graphic equalizer or parametric equalizer filtering functions.
An optional element of graphical frequency-band magnitude is also available to enable a real-time display of the audio output.
For more information or to download this library click here
Microchip Audio Software Suites and demo projects
Microchip offers two Bluetooth audio software suites, one with SBC decoder and the other one with both SBC and AAC decoders. However the Advanced Audio Distribution Profile A2DP 1.3, Audio/Video Remote Control Profile AVRCP 1.5, Serial Port Profile SPP 1.2 and Service Discovery Protocol SDP 1.1, provided in the binary form, are common to both the suites. This Bluetooth binary code is combined with application source code for operation on the PIC32 Bluetooth Audio Development Kit DV320032.
Existing customers please note that both Software Suite 1 and 2 have been updated to include the following new functions as version 2.0. You can obtain an updated version by logging into your microchipDirect account here to obtain a free update.
-
Removed RTOS from all demonstrations
-
Updated Bluetooth stack, now compatible with AVRCP 1.5
-
Added graphic equalizer function
-
Added multi-mode GUI to support Graphic EQ and user display
-
Added AVRCP button profile options for fast forward and reverse functions
-
Added voice prompt options for key events
-
Added new utility to write audio (voice) data to external Flash memory
-
Added AVRCP functions for replay and shuffle
-
Added top level user configuration header, user_config.h
-
Added user configuration for automatic reconnect timeout
-
Updated soft mute function, option for mute during fast forward and reverse
Part Number SW320014-1 - PIC32 Bluetooth SBC Only Audio Software Suite 1 v2.0
This suite contains projects for USB and Bluetooth audio. The Microchip Bluetooth stack for audio streaming with the standard SBC software CODEC is provided as a non-modifiable binary file combined with source code for usability. It includes the Advanced Audio Distribution Profile A2DP 1.3, Audio/Video Remote Control Profile AVRCP 1.5, Serial Port Profile SPP 1.2 and Service Discovery Protocol SDP 1.1. This binary code is combined with source code for operation on the PIC32 Bluetooth Audio Development Kit DV320032. Users have the option of USB Audio functionality or just the streamlined stack. In version 2.0 of this software, Free-RTOS has been removed. A version of this code with the addition of the Advanced Audio Coding AAC CODEC SW320014-2 is also available on microchipDirect. See the Bluetooth Audio Development Kit Reference Guide for usage details.
Suite 1
|
Demo Description
|
Resource
Requirement
|
Peak
MIPS
|
Comment
|
Flash
|
RAM
|
BT Audio Demo 2.5
|
Bluetooth Stack (A2DP+AVRCP+SPP+SBC) + Android Open Accessory audio Type-A USB connection support and Samsung® audio with mini-B USB connection support.
|
227 KB
|
49 KB
|
~30
|
No Apple USB audio support.
|
BT Audio Demo 2.5A
|
Bluetooth Stack (A2DP+AVRCP+SPP+SBC) + Android Open Accessory audio Type-A USB connection support and Samsung® audio with mini-B USB connection support. Also includes Apple MiFi stack + Apple iAP connection support for Apple authenticated designs. .
|
263 KB
|
54 KB
|
~30
|
Includes Apple USB audio support. Available by special request only to registered Apple certified developers.
|
|
|
|
|
|
|
BT Audio Demo 5
|
Bluetooth Stack (A2DP + AVRCP + SPP + SBC decoder) + Graphics.
|
182 KB
|
41 KB
|
~30
|
Bluetooth audio only; no USB support.
|
BT Audio Demo 7*
|
Bluetooth SBC + Graphical Equalizer
|
TBD
|
TBD
|
TBD
|
|
Part Number SW320014-1 - PIC32 Bluetooth SBC Only Audio Software Suite 1 v2.0
This suite contains projects for USB and Bluetooth audio. The Microchip Bluetooth stack for audio streaming with the standard SBC software CODEC plus the “Advanced Audio Coding” AAC software CODEC is provided as a non-modifiable binary file combined with source code for usability. It includes the Advanced Audio Distribution Profile A2DP 1.3, Audio/Video Remote Control Profile AVRCP 1.5, Serial Port Profile SPP 1.2 and Service Discovery Protocol SDP 1.1. This binary code is combined with source code for operation on the PIC32 Bluetooth Audio Development Kit DV320032. An SBC CODEC only version of this code is also available on microchipDirect SW320014-1. See the Bluetooth Audio Development Kit Reference Guide for usage details.
Suite 2
|
Demo Description
|
Resource
Requirement
|
Peak
MIPS
|
Comment
|
Flash
|
RAM
|
BT Audio Demo 2.5
|
Bluetooth Stack (A2DP+AVRCP+SPP+SBC) + Android Open Accessory audio Type-A USB connection support and Samsung® audio with mini-B USB connection support.
|
227 KB
|
49 KB
|
~30
|
No Apple USB audio support.
|
BT Audio Demo 2.5A
|
Bluetooth Stack (A2DP+AVRCP+SPP+SBC) + Android Open Accessory audio Type-A USB connection support and Samsung® audio with mini-B USB connection support. Also includes Apple MiFi stack + Apple iAP connection support for Apple authenticated designs. .
|
263 KB
|
54 KB
|
~30
|
Includes Apple USB audio support. Available by special request only to registered Apple certified developers.
|
|
|
|
|
|
|
BT Audio Demo 3
|
Bluetooth Stack (A2DP + AVRCP + SPP + AAC decoder) + Graphics. This demonstration uses the higher quality AAC audio decoder in place of the SBC decoder.
|
248 KB
|
51 KB
|
~65
|
Bluetooth audio only; no USB audio support.
|
BT Audio Demo 5
|
Bluetooth Stack (A2DP + AVRCP + SPP + SBC decoder) + Graphics.
|
182 KB
|
41 KB
|
~30
|
Bluetooth audio only; no USB support.
|
BT Audio Demo 6*
|
Bluetooth Stack + USB with Support for both AAC and SBC decoders
|
TBD
|
TBD
|
TBD
|
|
BT Audio Demo 7*
|
Bluetooth SBC + Graphics Equalizer
|
TBD
|
TBD
|
TBD
|
|
* - Demo’s added to release version 2.0
PIC32 Bluetooth Audio Software Revision History
The following table outlines revision history and additions to the PIC32 Bluetooth Audio Software suites.
Version
|
Release Date
|
Notes / Details
|
V2.0
|
December 21, 2013
|
Version 2.0 Major revision Changes
-
Removed RTOS from all demonstrations
-
Updated Bluetooth stack, now compatible with AVRCP 1.5
-
Added graphic equalizer function
-
Added multi-mode GUI to support Graphic EQ and user display
-
Added AVRCP button profile options for fast forward and reverse functions
-
Added voice prompt options for key events
-
Added new utility to write audio (voice) data to external Flash memory
-
Added AVRCP functions for replay and shuffle
-
Added top level user configuration header, user_config.h
-
Added user configuration for automatic reconnect timeout
-
Updated soft mute function, option for mute during fast forward and reverse
-
New QDID for updated Bluetooth stack
|
V1.03
|
November 26, 2013
| -
Installer update
-
SBC Decoder fix – updated to address lock up issue
-
Improved AVRCP detection
-
Fixed RTOS Bug related to XC32 Compiler v1.30
|
V1.0
|
September 2013
|
Initial release software for PIC32 Bluetooth Audio development hardware.
|
Share with your friends: |