MeloLED
MP3 Player with LED strip using Pico RP2040
Author: Raul-Anton Jac
GitHub Project Link: https://github.com/UPB-FILS-MA/project-jacraul
Description
The project aims to create a multifunctional MP3 player using the Raspberry Pi Pico microcontroller, enhanced with vibrant LED lighting effects for added ambiance. The MP3 player will allow users to enjoy their favorite music tracks with ease, featuring controls for play, pause, previous song, next song, and volume adjustment. Additionally, the project will incorporate an infrared (IR) remote control for convenient playback management and to control the LED Bar. The LED lighting effects will be synchronized with the music, providing an immersive audiovisual experience tailored to the user's preferences.Depending on time, I hope I will add an application for controlling it at distance.
Motivation
I chose this project because I am a fan and I have a blog about Eurovision Song Contest. I want to create something which is useful for me and in the same time something very nice and colorful.
Architecture
Raspberry Pico RP2040
- "the brain", controlls everything
- it is connected with every single module, led strip
1602 LCD
- interface: I2C
- connections: GP0 (SDA), GP1 (SCL)
- it will display the artist and the song playing
IR Receiver
- connection: GP15
- it will transmit to pico the request from remote control
Micro SD Module
- interface: SPI
- connections: GP13 (CS), GP12 (MISO), GP11 (MOSI), GP10 (SCK)
- it will read and write on Micro SD Card
Potentiometer
- connection: GP26 (Analog Out)
- it will control the volume of the player
Log
Week 6 - 12 May
I uploaded the project documentation where i described why I chose this project, what materials I used, how the components are connected.
Week 7 - 19 May
I uploaded the KiCad schematics and the photos with components connected on breadboards.
Week 20 - 26 May
Hardware
I used the Pico RP2040 W as the "brain" of the entire project, a MicroSD Card Reader for playing the songs connected through SPI. I also have a potentiometer for controlling the volume of the mp3 player, an IR receiver for the remote control (used to control the player and the LED strip). For the outputs I have an OLED Screen (0.91 inch) where I will display the song title and the artist. Also for the output i have an audio amplifier connected to a speaker.
Schematics
The KiCad Schematics with all components connected.
Bill of Materials
Device | Usage | Price |
---|---|---|
Rapspberry Pi Pico W | The microcontroller | 35 RON |
Display OLED 0.91 Inch | LCD Screen for artist & song | 20 RON |
WS2812 RGB LED Bar (8 LEDs) | LED bar for ambient | 6 RON |
2 x 20p 2.54 mm Male Pin Header | Pins for PICO | 1 RON |
MicroSD Card Slot Module | MicroSD reader for songs | 5 RON |
100k Mono Potentiometer | Controlling the volume of player | 2 RON |
Infrared Remote Receiver Module | Infrared sensor for remote control | 9 RON |
Mini Infrared Remote | Remote Control for player and led bar color and modes | 4 RON |
Plusivo Resistor Kit 250 pcs | Used for Voltage Divider | 15 RON |
Breadboard Jumper Wires Set | Connecting components | 8 RON |
2 x Breadboard HQ (830 points) | Base for the project | 20 RON |
Amplifier Audio Mono XPT8871 | Amplifies the audio signal | 5 RON |
Speaker | The output of the mp3 player | 16 RON |
Software
Library | Description | Usage |
---|---|---|
embedded-hal | Foundation for drivers | Used for components to communicate with software |
FatFS | MicroSD card management | Used for reading the files from microSD |
ssd1306 | Driver for 0.91 OLED Display | Used to transfer the text from pico to lcd |