We detect you are using an unsupported browser. For the best experience, please visit the site using Chrome, Firefox, Safari, or Edge. X

We offer several solutions for Bluetooth® audio, voice and data as follows:

Option #1: PIC32 MCU + BM64 Module Module

The PIC32 MCU runs the application with the BM64 running the full Bluetooth Version 4.2 (BDR/EDR/BLE) stack.

The BM64 stereo audio module, which is a fully certified Bluetooth Version 4.2 (BDR/EDR/BLE) module, provides you with the ability to add Bluetooth wireless audio and voice applications to your products. Visit the BM64 product page for more informaton about the module.

Option #2: PIC32 MCU + Host Control Interface (HCI) Module

The PIC32 MCU runs the Bluetooth stack and profiles.

See below for an overview of the Bluetooth stack running on the PIC32 MCU and details on the profiles that are included. Different profiles and HCI modules are also available.



Bluetooth Stack Running on a PIC32 Device

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. It consists of the controller interface, the Bluetooth protocols that 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 bit rates 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. We offer a PIC32 Bluetooth Audio Package for MPLAB® Harmony to enable the SBC codec and A2DP audio. 

The PIC32 Basic Bluetooth Audio Package for Harmony is available from our purchasing portal: SW320024-1HPM.

Bluetooth Break-In Mode

Bluetooth Break-In mode is an application that allows 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 with the MPLAB Harmony Configurator. Break-in for audio applications carries an additional royalty surcharge per unit.

Hands-Free Profile (HFP)

Hands-Free Profile (HFP) is a common profile used to enable 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 and is included with the PIC32 Basic Bluetooth Audio Package for MPLAB Harmony, which is available on our purchasing portal: SW320024-1HPM.

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

A2DP defines the protocols and procedures that enable distribution of high-quality audio content over Bluetooth in mono or stereo channels. 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 supporting remote control options and for tracking 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 Bluetooth-enabled A/V equipment. For example, it can provide audio controls such as play, pause, skip forward, skip backward, fast forward and rewind. PIC32 MCUs now support AVRCP version 1.5, which includes provisions for bidirectional volume control. 

The A2DP/AVRCP is available without royalty when using the BM64 Bluetooth module. For use with an HCI module, A2DP/AVRCP is included in the PIC32 Basic Bluetooth Audio Package for MPLAB Harmony which is available from our purchasing portal: 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 availble within MPLAB Harmony for PIC32 MCU-based Bluetooth® audio, voice and data applications:

  • BM64_a2dp_hfp: This demonstration is used in conjunction with the BM64 module daughter board to demonstrate Bluetooth audio and the Hands-Free Protocol (HFP).
  • BM64_ble_comm: This demonstrates data using the BM64 module daughter board for BLE data.
  • BM64_bootloader: This demonstration is used with the BM64 module daughter card, which appears as a virtual COM port to implement a bootloader.
  • ble_rn4871_comm: This demonstration is used to connect to the RN4871 Bluetooth Low Energy radio and set it up with a broadcast name, 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. Commands are entered on a smartphone 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, personal computer, or Bluetooth-enabled device. The demonstration supports A2DP, AVRCP, SSP, and SBC decoder.


Title Download
AN1152 - Achieving Higher ADC Resolution Using Oversampling Download
AN1422 - High-Quality Audio Applications Using the PIC32 Download
AN643 - Adaptive Differential Pulse Code Modulation using the PIC16/17 Download
Title Download
PIC32MX1xx/2xx 28/36/44-pin Family Data Sheet Download
PIC32MZ Embedded Connectivity with Floating Point Unit (EF) Family Data Sheet Download
PIC32MX330/350/370/430/450/470 Family Data Sheet Download
PIC32MX1xx/2xx/5xx 64/100-pin Family Data Sheet Download
PIC32MX1XX/2XX 28/44-pin XLP Family Data Sheet Download

Development Tools

Description Part Number
PIC32MX Curiosity Development Board DM320103
PIC32MM USB Curiosity Development Board DM320107
PIC32MZ Embedded Connectivity with FPU (EF) Starter Kit DM320007
PIC32MZ Embedded Graphics with Stacked DRAM (DA) Starter Kit DM320010
PIC32MZEF Curiosity Development Board DM320209
PIC32MZ Embedded Graphics with External DRAM (DA) Starter Kit
Description Part Number
BM64 Bluetooth Radio Daughter Board AC320032-3
Audio Codec Daughter Card – AK4642 AC320100
Audio Coder Daughter Card – AK7755 AC327755
PIC32 Audio DAC Daughter Card AC320032-2
PIC32 Audio Codec Daughter Card - AK4954
Description Part Number
Explorer 16/32 Development Board
MPLAB Starter Kit for dsPIC DSC
Audio Development Board for dsPIC33E

Software Libraries

Recording and Playback Software Libraries

Audio Functions Resource Type Title and Link Supported Families
Audio and Speech Library PIC32 Audio Equalizer Filter library PIC32 MCU
Audio and Speech Software Bluetooth Audio PIC32 MCU
Audio and Speech Software PIC32 Audio Decoders/Encoders PIC32 MCU
Record Application Note
and Source Code
AN1152-Achieving Higher ADC Resolution Using Oversampling dsPIC30F, dsPIC33F
Record and Playback Library W300026 dsPIC/PIC24 G.711 Speech Encoding and Decoding Library PIC18, PIC24F, PIC24H,
dsPIC30F, dsPIC33F,
Record and Playback Library SW300090-dsPIC G.726A Speech Encoding/Decoding Library dsPIC30F, dsPIC33F<
Record and Playback Library SW300070-Speex Speech encoding/decoding Library dsPIC30F, dsPIC33F
Record and Playback Library dsPIC DSC Equalizer Library dsPIC30F, dsPIC33F
Telecommunications Library SW300060-Aucostic Echo Cancellation Library dsPIC30F, dsPIC33F
Telecommunications Library SW300080-Line Echo Cancellation Library dsPIC30F, dsPIC33F
Telecommunications Library SW300040-Noise suppression library dsPIC30F, dsPIC33F
ALL Library dsPIC DSC Automatic Gain Control Library dsPIC30F,dsPIC33F
ALL GUI dsPIC DSC Speech and Audio Fast Forward (SAFF) tool dsPIC30F, dsPIC33F
ALL GUI Digital Filter Design dsPIC30F, dsPIC33F
ALL GUI dsPICworks Data Analysis and DSP software (use to convert PCM to WAV and back) ALL