|
KiCADKicad
|
|
|
Zephyr Project |
|
|
Flutter |
AudioLink – USB & Bluetooth LE Audio / Auracast Receiver with Balanced Line Outputs (nRF5340)
What is AudioLink?
AudioLink is an open-source audio receiver that turns any amplifier, mixer or pair of active studio monitors into a modern wireless endpoint. It plays sound from three sources and sends it to two professional 6.35 mm line outputs:
- a computer over USB-C – a class-compliant USB Audio Class 2 sound card (48 kHz / 16-bit), no driver needed on Linux, macOS or Windows,
- a phone over Bluetooth LE Audio – the new LC3-based standard (Android 13+ phones such as Pixel 7 / Galaxy S23 and later),
- an Auracast™ broadcast – the board automatically joins the first broadcast it finds when no phone is connected, or a phone can tell it which broadcast (including encrypted ones) to join.
When several sources play at once, the board picks one by priority: USB > phone > Auracast.
Why I built it
Bluetooth LE Audio and Auracast are the biggest change to wireless audio in two decades: a better codec (LC3), lower power, and one-to-many broadcast – think public venues, shared listening, or a whole house of speakers receiving one stream. Yet almost every receiver you can buy is still classic A2DP with an unbalanced 3.5 mm jack. I wanted a small, fully open device that brings LE Audio and Auracast to "real" audio gear with balanced outputs, and that also works as a plain USB sound card at the desk.
How it works – hardware
- Radio + MCU: MinewSemi MS45SF1 module (Nordic nRF5340, dual-core Cortex-M33, Bluetooth 5.x LE Audio)
- DAC: TI PCM5242 – 32-bit stereo DAC with differential outputs
- Output stage: 2× TI OPA1678 low-noise audio op-amps
- Output switching: Vishay DG419 analog switch
- Analog supply: TI TPS65133 ±5 V split rail, 2× TLV755 3.3 V LDOs
- Indicators: 4× WS2812B-4020 RGB LEDs
- Connectors: 2× Neutrik NRJ6HM-1 6.35 mm TRS jacks, USB-C, 2×5 1.27 mm SWD header
Board details:
- PCB: 4 layers, 100 × 56 mm, 1.6 mm FR4, all 83 parts on the top side (single-sided SMT + a few THT parts). Inner layer 1 is a solid ground plane.
- Power: everything runs from USB-C – a phone charger is enough when USB audio isn't needed.
- Automatic output modes: plugging a cable into J2 switches the board from unbalanced stereo (J1 only, tip = L, ring = R) to fully balanced (J1 = left, J2 = right, tip = hot, ring = cold). 1 % 100 Ω series resistors set the balanced source impedance and CMRR. The output mutes for ~20 ms while switching, so there are no pops.
- Enclosure: the board fits the CamdenBoss CBHEX1-06-WH Hex-Box; the jacks overhang the edge to reach a side panel.
How it works – firmware (the IoT part)
The firmware is built on Zephyr RTOS / nRF Connect SDK and uses both nRF5340 cores: the network core runs the Bluetooth controller, the application core runs the audio pipeline.
- USB Audio Class 2 sink and a USB serial port for firmware updates.
- LE Audio unicast and broadcast sink, LC3 decoding and left/right assembly, with the phone's volume buttons controlling the board's volume.
- I2S output with source selection and clock tracking, feeding the PCM5242.
- 5-band equalizer (60 Hz low shelf, 250 Hz / 1 kHz / 4 kHz peaks, 12 kHz high shelf, ±6 dB in 1 dB steps) applied to every source, stored in flash.
- Music-reactive LEDs: the level is measured on the digital audio after the EQ and before the volume, so turning the volume down doesn't dim them. Brightness rises instantly on loud sounds, fades over about a second, and follows an exponential curve in dB so changes look even. Four colour themes.
- Custom Bluetooth GATT settings service – EQ, LED brightness and LED theme are plain characteristics, so the device can be controlled from the companion app, nRF Connect, or any BLE-capable script or home-automation system.
- Secure over-the-air updates: MCUboot with signed images and a version check (the bootloader refuses downgrades). Both cores can be updated over Bluetooth (from the app or nRF Connect Device Manager) or over USB; SWD is only needed for a brand-new board.
Companion app
A Flutter app (Android and Linux) finds the board over Bluetooth LE, sets the equalizer, LED brightness and theme, and installs the firmware bundled inside it with one tap – the update button only appears when a newer version is available.


Build your own
- Order the PCB (Gerbers attached) – standard 4-layer, 1.6 mm, HASL. The BOM and centroid files are ready for assembly; the only part not stocked at LCSC is the MS45SF1 module (DigiKey).
- Flash a new board over SWD with the release hex files (network core first, then application core).
- Plug in USB-C, connect J1 to your amplifier and select "AudioLink" as the sound output – or pair it from an LE Audio phone.
- Install the Android app (APK in the repo) to set the EQ and LEDs. All later updates are wireless.
AudioLink – USB & Bluetooth LE Audio / Auracast Receiver with Balanced Line Outputs (nRF5340)
Project images are for reference only. Actual production is based on the manufacturing files on the project page.
Please review the designer's notes (e.g., PCB thickness) and select the appropriate options.
PCBWay is not responsible
for issues caused by unsuitable parameter selections.
For more important ordering information, please refer to
Read More
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(0)
- Likes(0)
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Grzegorz Blach
-
AudioLink – USB & Bluetooth LE Audio / Auracast Receiver with Balanced Line Outputs (nRF5340)
What is AudioLink?AudioLink is an open-source audio receiver that turns any amplifier, mixer or pair...
-
Segger J-Link to Tag-Connect TC2050 adapter
Segger J-Link to Tag-Connect TC2050 adapterIt follows standard JTAG/SWD pinout used on many Cortex-M...
-
Sunmachine-A2 - smart lighting system
The driver for WS2812, SK6812 or similar LED strips controlled via Bluetooth LE. It supports both RG...
-
AudioLink – USB & Bluetooth LE Audio / Auracast Receiver with Balanced Line Outputs (nRF5340)
13 0 0 -
-
-
-
Émetteur Récepteur Optique Expérimental (communication UART ATtiny + fibre optique)
261 0 1 -
SmallOLED - Live PC Stats, Animated Clocks & Audio Visualizer
1186 0 3 -
"Talking Multimeter": Arduino-Based Speech Add-on for Multimeters with SCPI Protocol
688 0 1 -
Programmable Mist Maker - XIAO / QT PY Extension
3188 2 4 -
RadioHAT - Raspberry Pi radio development platform
2701 0 4








