Microchip logo
Microchip logo
  • All
  • Products
  • Documents
  • Applications Notes

Bluetooth® Audio

Microchip Bluetooth Audio

Microchip offers several solutions for Bluetooth® Audio, Voice, and Data: Wireless Audio Streaming as well as Wireless Data which are as follows:

Option #1: PIC32 + BM64 Module Module where the PIC32 is running the application and the BM64 is running the full Bluetooth Version 4.2 (BDR/EDR/BLE) stack.
Option #2: PIC32 + HCI (Host Control Interface) Module where the PIC32 is running the Bluetooth Stack and profiles.

Click to enlarge images

The BM64 stereo audio module which is a fully-certified Bluetooth Version 4.2 (BDR/EDR/BLE) module provides designers the capability Bluetooth wireless audio and voice applications to their products. Additional information on the Microchip BM64 Module is available at the following link: Microchip BM64 Module.

For Option #2, the following is an overview of the Bluetooth Stack running on the PIC32 as well as the different profiles included.

Different Profiles included as well as HCI Modules are available from Microchip.
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.
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 a PIC32 Bluetooth Audio Package for Harmony to enable the SBC Codec and A2DP Audio. 
The PIC32 Basic Bluetooth Audio Package for Harmony is available for purchase on Microchip Direct, SW320024-1HPM.
Bluetooth Break-In Mode
+
Bluetooth Break-In mode is an application that allows for multiple source devices to connect to one Bluetooth sink. Up to seven devices can pair and connect simultaneously, with the last commanded action becoming the device of focus. The PIC32 Break-in Solution offers support for both audio and SPP data applications. The SPP Data application is included for free in the basic SPP Bluetooth software stack, and is configurable through MPLAB® Harmony Configurator. Break-in for audio applications carries an additional royalty surcharge per unit.
Hands Free Profile (HFP)
+

Hands-Free Profile, or HFP, is a common profile used to allow a hands-free car kit or speaker system to connect to a phone source. In addition to the features found in the Headset profile, HFP adds last number redial, call waiting and voice dialing.

Support for the HFP is available for the BM64 Bluetooth Module which is included with the PIC32 Basic Bluetooth Audio Package for Harmony and is available for purchase on Microchip Direct, SW320024-1HPM.

Advanced Audio Distribution Profile (A2DP) and A/V Remote Control Profile (AVRCP)
+

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.

The A/V Remote Control 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 and other devices, and to allow a single remote to control all of the Bluetooth-enabled A/V equipment. For example, it is used for providing audio controls such as play, pause, skip forward, skip backward, fast forward and rewind. PIC32 MCUs now supports AVRCP version 1.5, which includes provisions for bi-directional volume control. 

The A2DP/AVRCP is available without royalty when using the BM64 Bluetooth Module. For use with and HCI Module, A2DP/AVRCP is included in the PIC32 Basic Bluetooth Audio Package for Harmony which is available for purchase on Microchip Direct, SW320024-1HPM.

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.

Demos for Bluetooth Audio

The following are the application demos for PIC32 Digital Audio Bluetooth® Applications which include Audio, Voice, and Data.

MPLAB® Harmony Supported Demonstrations:

  • BM64_a2dp_hfp: This demo is used in conjunction with the BM64 Module daughter board to demonstrate Bluetooth Audio and the Hands-Free Protocol (HFP.)
  • BM64_ble_comm: This demo demonstrates data using the BM64 Module daughter board for BLE data.
  • BM64_bootloader: This demo is used with the BM64 Module daughter card which appears as a virtual com port to implement a bootloader.
  • ble_rn4871_comm: This demo is used to connect to the RN4871 BLE Radio to set up the radio with broadcast name, setting of public and private services, and the data for these services.
  • data_basic: This demonstration performs full duplex data transfer over a Bluetooth connection using the SPP profile. 
  • data_temp_sens_rgb: This demonstration performs full duplex data transfer over a Bluetooth connection using the SPP profile. Command are entered on a smart phone to change the color of a RGB LED on the Bluetooth Starter Kit. 
  • a2dp_avrcp: This demonstration performs streaming of wireless Bluetooth audio from any smartphone (i.e., Apple, Samsung, Google, etc.), personal computer, or Bluetooth-enabled device. The demonstration supports the following features: A2DP, AVRCP, SSP, and SBC Decoder.

For more information on MPLAB® Harmony, please click on the following link: MPLAB Harmony Integrated Software Framework.

MFI Support only to Apple Licensees

If MFi Is required, the device requires a iAP/MFi software component and special hardware acquired through the Apple MFi program. For more information about the required hardware, contact applesupport@microchip.com. To obtain software for this and other Microchip hardware, which is enabled for Apple products, contact your Microchip sales office. PIC32 currently supports:

  • MFi data (Bluetooth): this uses L2CAP data transfer to enable data to Apple Product using Bluetooth classic similar to SPP.
  • MFi data (USB): this is new for MPLAB Harmony v2.05 and enables bulk data transfer over USB to an Apple Product.
  • MFi audio (USB): this allows audio streaming in handset host mode.  Note this requires a custom cable assembly.