Digital Audio Player
| Table of Contents |
|---|
| Home |
| Digital |
| Analog |
Motivation:
My motivation for pursuing this project is two-fold, I wanted to get more experience designing mixed-signal circuits and devices and I wanted the ability to play music from FLAC or ogg files with headphones without relying on a device such as my phone or my computer.
Goals
- Accepts music using FLAC, ogg, (mp3 and wav optional) on a microSD
- Display for selecting music
- Equalizer with loadable eq settings on the microSD
- Skip, Back, Pause/Play, Volume Control
- Rechargeable (USB-C)
- 3.5mm output
Contraints
- Battery Life: 8 hours
- Fits in a pocket
- Equal or better quality audio than my computer (subjective)
Optional Features
- 1/4” TRS and 1/8” TRS audio passthrough / mixer
- I want to be able to play my bass through the same device so I can listen to music while playing.
- This would feature either an analog mixer circuit or using an ADC to perform digital mixing on DSP
- Analog may provide lower latency, allowing me to play along to music better perhaps??? (wondering if this is outdated thinking)
Existing Products
VS1053b
The VLSI Solution VS1053b Ogg Vorbis/MP3/AAC/WMA/FLAC/MIDI Audio Codec Circuit and the Sparkfun mp3 Player Arduino Shield already contains most of what’s required by this project, with the VS1053b covering DSP, DAC, and amplifier. However for the sake of this project, I want to select a DAC, DSP, and design the amplifiers myself. I’ll mostly be following this datasheet for specifying constraints.
According the VS1053b datasheet, the chip is capable of the following (bullets selected for salience):
- Decodes and encodes a variety of formats
- Spatial Processing
- Bass and treble controls
- Zero cross detection for smooth volume changes
- Stereo driver capable of 30 Ohm loads
- 18 bit DAC, 100 dB Dynamic Range
- Max 0.07% Total Harmonic Distortion, 0.02% Third Harmonic Distortion
- Max analog output 2.06Vpp, typical 1.85Vpp, minimum 1.64 Vpp
Block Diagram
Power
Requirements
- Lithium Battery powered (LiPo vs Li-ion vs LiFePO4)
- USB-C Charging
- 3.3V for digital circuits
For the power section, I’ll mostly be using off the shelf batteries and protection circuits.