MP3
Hardware- 15 Devlogs
- 33 Total hours
I am building my own MP3 player so I can distance from my phone!
I am building my own MP3 player so I can distance from my phone!
My project is almost finished! Today I made some subtle changes to the PCB. More changes were made in CAD today. I know I’m a CAD noob, so I took quite a while to do some simple things :>
This is the result of my work today:
I moved the SD card slot because I was scared it might not fit into the case. I also made some space for the Picos USB port.
I added space for two M2 screws at the bottom of the case!
I also added a hole through which the on/off switch can be used.
More CAD improvements!
I made the front of the case again!
I also remade the controls and added a system so the buttons can’t fallout (reference) the case!
On top of that, I wanted to add two screws at the bottom of the MP3 player that keep the case together - I’m splitting it into two parts! This way, the assembly should be a lot easier (and possible lol). I ended up reverting my changes though because I was not finished and ran out of time.
Enough for today!
CAD progress!! I deleted the whole case I made yesterday, I think it looked insanely ugly. I wanted something sleek and somewhat elegant (to the extent it’s possible with a 3D printer). Therefore, I remade pretty much everything from scratch, but it looks a lot better now!
This is the case I made:
If you paid attention, you might’ve noticed a few things:
Take some pictures!
This is the microUSB slot. I was not entirely sure how big it should be - I genuinely thought the Raspberry Pi Pico uses USB-C, because of the Orpheus Pico I have laying around - sadly it does not. Maybe I gotta mod it myself :)
The holes for the audio jacks are not too spectacular:
This is the hole for the microSD card (which is blue in this picture). I’m not sure if I even put it in the right way, I guess there’s only one way to find out:
And here are the PCB stand-offs. Not very spectacular either.
This is what the assembly of the case looks like with the PCB:
Enough CAD work for today :)
Yay, finally CAD! I switched from Fusion360 to Shapr33D. Best decision ever. This is so much more fun and it genuinely does not feel like the software is working against me anymore!
Importing the .STEP file worked without any problems. I just noticed the audio jacks had that weird height offset again, seems to be a KiCad problem. Oh, and my PCB is green as well for some reason - but whatever! Here’s the PCB in Shapr3D:
Shapr3D feels way more intuitive. The sketches work really well and everything is genuinely “assisted” (like the A in CAD). I’ve made some sketches for the case!
This is the result for today! This is super unfinished and needs a bunch of polishing…
More CAD work soon!
I am genuinely struggling.
Today I made SOME PART of my case, I just don’t get this program… I might try out OnShape soon, Fusion just seems like it’s working against me.
I moved some parts on my PCB closer to the border so their connectors are accessible easier (the Pico & the AUX jacks). For some reason, Fusion did not like me and displayed the audio jacks higher than they were placed in KiCad. I did not find a solution for that other than just moving them down manually. Below is the new layout!
Since I moved the Pi, I had to rewire quite a lot of stuff - didn’t take too long though.
This is the start of my case. Yes, the start… It takes ages and I am not getting along well with the program. In the image below, it still uses the old layout. Apparently there is no way to import a .STEP file into an already existing project in Fusion- WHAT? Just why? Okay, anyways, the promised picture:
Yep, I don’t like Fusion if you didn’t notice that already.
I did not do too much stuff today. I mostly experimented with Fusion and did some tiny improvements. Genuinely, I hate Fusion… I don’t understand why everything has to be so complicated…
Okay, so I made this small 3D battery model with nimits help! Thank you!
I then attached that to my MP3 player in KiCad by creating a footprint for it and adding that 3D model there. It now looks like this:
Pretty cool!
For the rest of my working time today, I just TRIED… to make a case. I failed. Fusion makes every single feature (that should be easy) extremely complicated. Just why.
Thanks for reading this, I’m so done for today…
(also, why is that thing green again???)
Batteries always seemed fun to me - trust me, making circuits so they don’t blow up, really isn’t. Nimit recommended me to use a DW01A chip with my TP4056 chip for my battery management system. After quite a bit of research, I did not find a pre-soldered module I can use - so I built it myself! What helped me is this schematic I found on the internet:
[Source]
After downloading some footprints from LCSC, I used them to make a similar circuit myself!
You can ignore the buttons on the right, they are for the menu controls. The circuit charges the battery if it receives power from Pico VBUS (which is the Picos 5V output), and uses the batteries energy to power the circuit, if the switch POWER_SW is turned on. The voltage then goes through a voltage booster to ensure, that the 3.7 Volts, which the battery supplies, is being boosted to 5 Volts - which is good to power the Pico!
The new components are hidden under the screen in the state of final assembly. Below is a picture which shows their position!
Another minor change: the board now uses the same mounting holes everywhere. I have adapted to the screens mounting holes - why use two different sizes, if one works as well? I hope that makes my life easier later. This means I only have to get one sort of screws and the designing of the case should be a little easier. I have also attached a picture below:
Today I did not work too much on the project, so these are all the changes from today!
Today I have done a bunch of things!
I have done some research on which battery I could use - my main searching aspect was the size. I did not want to make my PCB larger just for a bigger battery. I ended up going with a 3.7V 1200mAh battery with a size of 48mm x 30mm x 7mm. This is enough so it still fits inside the case I am planning to design!
To make space on my PCB I had to re-route some things… (I ended up doing pretty much everything routing-wise from scratch again)
Well, now the routing is so much cleaner and also looks a lot better and more organized - you could say I have learned from my mistakes. Take a look at this amazing new routing:
One new thing you might’ve also noticed: I added a voltage booster for the battery! Since 3.7V is not enough, this thing boosts the voltage up to 5V so the whole circuit should be working - hopefully.
Here’s a photo of my new rendered design.
That’s the front:
And this is the back:
The area with all the lines is meant for the battery! If the measures on AliExpress are accurate, it should fit in there - let’s hope so.
I think that’s pretty much everything I did today!
(PS: in my last journal I have said that I am getting closer and closer to production - I would’ve never guessed how wrong I was…)
I’m getting closer and closer to production! Today I have made some breaking changes!
I have replaced the old 1/4” audio jack with a normal 2.5mm audio jack. I’m not really happy with this change, but it was the only option: I would’ve liked to keep the big jack, since I have hardware that uses it, but it is just too big for the PCB and the possible enclosure / case I want to make for this project. My MP3 player now features two normal aux jacks!
If you looked at the photo precisely, you might’ve noticed one thing: the PCB is black now! It just looks so much better :)
Additionally, I have added a footprint for the screen I want to use. Thank you @Di, I just ripped it out of your schematic off GitHub since I couldn’t find it on the internet :)) (PS: I asked afterwards, it’s fine !!). Here’s what it looks like now:
From the 3D model you can see in that picture, I have removed the pre-installed SD card slot as well as the connector pins for it. I’m using my own SD card slot since I can place it where I want it to be! Additionally, I am not sure how reliable this SD card slot actually is, so I’d rather not use it.
I have also moved the buttons down, since the screen was larger than I expected (not really, but I have not really thought about button placement before and just placed them where it looked good to me). For a picture, check the one above.
I also added a bunch of mounting holes so both the screen as well as the PCB itself have a good connection to the case.
Possible plan for tomorrow: I am uncertain if I am actually going to do this, but I was thinking about rotating the Raspberry Pi Pico by 90°. This would give me the advantage of a bigger battery, since there would be more space at the top of the PCB, behind the screen (on the other side of the PCB).
Okay, that’s it!
I reworked my whole PCB today! The routes were pretty terrible, so I redid most of it. I also asked a professional PCB-er to help me out (thank you nimit!).
This is the result of the day:
I have had quite a few odd footprints which I have not changed correctly, therefore I fixed those! I also took the measures of yet another screen from AliExpress and I’ve made an actually accurate placeholder for it!
I’m also using a ground plane now, which makes the whole routing so much more clean! On top of that, I am now using thicker routes for relevant power-related wiring.
Here’s an overview of my PCB at the end of this working session!
Today I finished my PCB (I think)! I added a bunch of component 3D models and now there’s a cool render of my MP3 player!
Here’s a photo of my current wiring! Yes, I am aware it looks chaotic :)
I am currently considering moving the screens connector down a little more, so I’m using less space, though I am scared I might ruin the useability of the buttons - therefore it’s staying up there until I made up my mind!
While adding the 3D models, I had some struggles with the 1/4” audio jack. It required rotation so it aligned correctly - which I applied but the audio jack always decided to snap back into the original position again -.-
I restarted KiCad and it seems to have worked - maybe I just pressed cancel instead of okay? The buttons are switched, in my opinion it’s a weird design choice.
Below is a photo of both sides of my current 3D render!
This is the front, where the buttons and the screen will be!
And this is the back, where the Pico is!
I’m pretty sure I could’ve been more space-efficient in some places, so I might rework this again. Also, I’m not too happy with the size of the 1/4” jack, it’s pretty thick. I’d love to mount it inside of the PCB because it would spread its’ size into two halfs, which would drastically reduce my players overall size - I don’t think this is possible though. Pretty sad :(
Okay, but that’s it for today!
I’m making progress! I started creating my PCB and almost finished it in one go! I personally feel like the wiring I made for this is one of the worst you could possibly make haha.
I’m writing this journal on the go, so I sadly cannot attach any photos right now!
I also fixed some ERC violations, that’s the only picture I have right now :)
Hey there, seems like my schematic is finished now! I wired the LCD to my microcontroller. It took me a while figure out how I can wire a module that has no KiCad footprint - I just ended up wiring a connector (which is lowkey smart). It looks like this now!
I have also redone the charging circuit, this should be working now! I genuinely have no idea what that past version of this charging circuit was, so I just completely scrapped it and remade it! Below is a picture as well.
My next step will be to make the PCB!
Hey there! This is kind of a collection of various work sessions over the last weeks.
Firstly, I did some work to clean up my schematic! I was aware the labels feature existed in KiCad, but I did not use it at first. The schematic looks much better now and it should be more fun and less messy to work with it now!
Additionally, I have wired my SD Card module. My plan is to mount the SD card in the Picos filesystem so the user can also access it via the USB-C port!
I also wired a charging circuit (I’m very scared it might blow up). My intention is to only have one port, which will be used for both data (see above) and charging. I’m pretty sure my current wiring would not work, since it’s not even connected to the Picos power output pin - or is it? I genuinely have no idea. Take a look at this mess:
A lot of people told me to just use a pre-made module for charging but that would be boring - and as I already said, I don’t want a spare port if it’s not necessary. Also, Micro USB sucks.
I have also done some more screen research, more info on this can be found in my channels canvas (this is somewhat like my documentation of finding parts & me crashing out because there are so many options).
Next, I’ll rework the charging circuit and I’m going to search for a footprint for my screen!
Hey there, welcome to the first journal entry for my own MP3 player!
Obviously, the start is usually the hardest part (hey, that rhymes!).
I started with some research through the depths of AliExpress to figure out some basic things first: what audio jacks can I use and how am I going to display the necessary information? What screen am I using? Having absolutely no idea what I was actually searching for, I took a (somewhat) deep dive into the world of screens to find out one thing - a lot of them are incredibly expensive - and the others are shitty :)
Also, I wanted not just a normal AUX port, but a 1/4” AUX port as well, if possible! I use studio headphones and would like to have a possibility to connect them as well (yes, I could just unscrew the AUX -> 1/4” AUX adapter but that’s uncool)
I ended up making a [part list] in my Slack channel #xvcfs-studio!
A few days later, I looked a way to connect headphones to my main controller - a Raspberry Pi Pico. Why a Pico, you might ask? Well, I got one from Haxmas recently and need a use-case for it (and it’s from Hack Club so that’s cool!). Back to audio though, I needed to find a way to somehow interact with the two audio jacks from the Pico. I did some research on the internet and found a chip from Texas Instruments that should be capable of doing, what I want it to do! The chips name is TAD5142. Clicking through the datasheet was less terrible than expected, to be honest it was quite fun! Thank you Texas Instruments for a good datasheet!!
Since I am using two AUX ports, I need an operational amplifier! Here, I decided to use a MCP6002-I/SN since it should work fine with the lower voltages I am using here.
I connected it and hopefully my wiring is correct and should work! I have attached a picture below, though the wiring of the TAD5142 is currently not finished.
My last step today was just some simple research on the microSD card connector. I figured that the connector I found on KiCad did not have a connection detector and also did not really seem to have a good datasheet on the manufacturers website. I switched to a different model that fits my needs (and has a better datasheet) and I’m going to finish wiring it soon!
Yay, a lot of work, but that’s it for now! This was super fun!!