Tech News
← Back to articles

Implementing Bluetooth LE Audio and Auracast on Linux Systems

read original related products more articles

Bluetooth® audio has come a long way since 2001, when the Headset Profile (HSP) and Hands-Free Profile (HFP) first enabled bidirectional voice calls over Synchronous Connection-Oriented transport. The Advanced Audio Distribution Profile (A2DP) followed in 2003, bringing high-quality audio streaming to our headphones and speakers. While these Bluetooth® "classic" profiles have served us well for over two decades, they come with fundamental limitations that have become increasingly apparent in modern use cases.

If you've ever wondered why your music quality drops dramatically when you answer a call on your Bluetooth® headset, you've experienced one of A2DP's key limitations firsthand. Its unidirectional nature means that enabling a microphone requires switching to HFP, resulting in that noticeably reduced audio quality. Beyond this, Bluetooth® classic exhibits high latency (100-200ms for A2DP) and high power consumption, by modern standards, which results in inadequate battery life for all-day use cases like hearing aids. These and many more limitations have led vendors over the years to drive this outdated technology to its limits and develop non-standard solutions such as Google's Audio Streaming for Hearing Aids (ASHA) profile and Apple's Made for iPhone (MFi) extensions.

Enter LE Audio, introduced with Bluetooth® 5.2 in 2020, which represents a fundamental shift in the Bluetooth® audio architecture. This post outlines what changes LE Audio brings, what its support status is on Linux, and what lies ahead for building great Linux-based products that make use of this functionality. The content of this post was originally a talk presented at the Embedded Linux Conference Europe 2025, which you can watch here.

What is LE Audio?

LE Audio is built on the Bluetooth® Low Energy (LE) stack rather than the Basic Rate / Enhanced Data Rate (BR/EDR) stack used by classic Bluetooth®. This isn't just a minor technical detail. Bluetooth® Low Energy is an entirely separate wireless communication stack from Bluetooth® BR/EDR, comparable to the difference between Wi-Fi and Bluetooth® themselves. This new foundation achieves significantly lower power consumption and latency, enabling use cases that were previously impractical or impossible.

Unlike Bluetooth® classic's approach of defining separate profiles for different scenarios, LE Audio provides a modular framework of profiles working together. At its core is the Basic Audio Profile (BAP), which defines audio transport for all use cases. Built on top of this are supporting profiles: the Volume Control Profile (VCP), Microphone Control Profile (MICP), Coordinated Set Identification Profile (CSIP - for devices "sets", like earbuds), Call Control Profile (CCP - replacing HFP functionality), and Media Control Profile (MCP - replacing AVRCP). Higher-level profiles like the Telephony and Media Audio Profile (TMAP), Hearing Access Profile (HAP), and Public Broadcast Profile (PBP) then define specific use cases built on these foundations. And at the codec level, it is all powered by the newly developed Low Complexity Communication Codec (LC3).

Image source: https://www.bluetooth.com/learn-about-bluetooth/feature-enhancements/le-audio/le-audio-specifications/

Auracast™: Broadcasting audio to multiple devices

One of LE Audio's most significant innovations is Auracast™, enabled through the Public Broadcast Profile. Auracast™ allows audio to be broadcast to multiple receivers simultaneously, almost like traditional analog radio, but with all the benefits of a secure digital wireless connection. The applications are compelling: assistive listening in public venues like theaters or conference halls, access to audio sources like TVs in public spaces, or silent movie nights with friends in your living room.

Auracast™ sources work similarly to Wi-Fi access points where users can use a QR code or scan the area to find and connect to the source of their choice. Transport is handled through Isochronous Streams, which provide synchronized delivery essential for coordinating multiple receivers.

... continue reading