We're designing a portable digital audio player with a unique interface for audiophiles.
This project consists of developing an embedded software solution on a Microchip PIC32MX series microcontroller, with the following requirements.
SOFTWARE REQUIREMENTS INCLUDE:
1) Decode audio files (.WAV, .MP3, .FLAC, .OGG) and playlists (.PLS) stored on a micro-SD card. Must support modern file systems, including 256GB SD cards and long filenames.
2) Output decoded digital audio data via I2S. Must support at least 24-bit, 192kHz sampling rate I2S. Software solution preferred, or use VLSI Solution's VS1053, or equivalent.
3) Send and receive commands to user interface app, via BC127 Bluetooth module or equivalent:
-Support Play, Pause, Stop, Previous, Next, Shuffle, Random,
-Read playlists, filenames, and directories of SD card (basic file-system navigation)
-Read ID3 tags, including embedded artwork
PROJECT DELIVERY SHALL INCLUDE:
A) Source and compiled Microchip MPLAB project, with all software requirements implemented. Source code shall include thorough explanatory comments.
B) Basic Android and/or iOS app to demonstrate solution.
C) Pinout and/or hardware schematic of your PIC32MX solution.
D) Demonstration of final solution.
Microchip's DM320013 development board provides an SD card slot and I2S output connected to a codec for testing.
A BC147 Bluetooth module can be wired to an SPI port by removing D2 (use pin for SPI chip select). See attached hardware schematic for BC147 wiring.
We can provide pre-wired development hardware and schematic notes if helpful.