Skip to content

switch to i2s amp & added LDO to vbus#1

Open
jonbro wants to merge 2 commits into
emeb:mainfrom
jonbro:main
Open

switch to i2s amp & added LDO to vbus#1
jonbro wants to merge 2 commits into
emeb:mainfrom
jonbro:main

Conversation

@jonbro

@jonbro jonbro commented Apr 8, 2024

Copy link
Copy Markdown
  • adds an i2s amp chip
  • adds a LDO on the vbus (I'm using one I've used before from lcsc / jlcpcb, but I suspect there are similar drop in options)

I haven't tested this at all, I'm planning on marking it all up with lcsc part numbers and getting it assembled. Feel free to ignore! this is just a ping to let you know I'm poking at this.

@emeb

emeb commented Apr 8, 2024

Copy link
Copy Markdown
Owner

Oh cool - thanks for working on this. As it turns out I've been poking at this too - I've got a schematic in the works with a MAX98357A I2S amp and a TPS63031DSKR true 3.3V buck/boost regulator. Parts are coming tomorrow and I hope to get the board off to fab this week.

@emeb

emeb commented Apr 8, 2024

Copy link
Copy Markdown
Owner

Oh - BTW: very interested in how an LCSC / JLCPCB build works out.

@jonbro

jonbro commented Apr 8, 2024

Copy link
Copy Markdown
Author

ah nice! boost buck is probably the way to go, why have 2 solutions when you could have one.

I also started playing with that max amp, and it is supported by circuitpython - you've probably already laid out the board, but there is a restriction with the circuitpython i2s rp2040 lib where the pins need to be sequential and in this order: BCLK, LRCLK ... I'm not sure if DIN needs to come after those two sequentially or not, but may as well.

I should probably start a different thread, but I tried importing the BOM that you uploaded to octopart, and it seemed like it was for a different project entirely.

@emeb

emeb commented Apr 8, 2024

Copy link
Copy Markdown
Owner

My current schematic for the I2S amp has BCLK, LRCLK, SDO on GPIO16,17,18 respectively - I had noticed that limitation on putting the signals adjacent a while back - it's a PIO thing IIRC, not just CircuitPython.

No idea what's going on with the BOM. I'll look into it later today.

@emeb

emeb commented Apr 9, 2024

Copy link
Copy Markdown
Owner

Here's a PDF of the revised schematic I'm working on - I'm not sure how I want to handle this in git - maybe start a separate I2S branch.
buddhabox2_sch.pdf

@emeb

emeb commented Apr 9, 2024

Copy link
Copy Markdown
Owner

No idea where that Octopart BOM you're looking at came from - it wasn't me. The BOM I generated is in this git repo only.

@jonbro

jonbro commented Apr 9, 2024

Copy link
Copy Markdown
Author

ah, I just meant I used octopart to open the ods file, not that there was already one on octopart - I just installed openoffice and it worked fine though :)

new schematic looks good!

@emeb

emeb commented Apr 9, 2024

Copy link
Copy Markdown
Owner

OK - Octopart probably doesn't like the way my BOM .ods is formatted. I wasn't targeting their service, just using the defaults from the Kicad BOM .csv output.

@jonbro

jonbro commented Apr 10, 2024

Copy link
Copy Markdown
Author

image
did I beat you to it?

I setup the bom with JLC / LCSC numbers. I still need to replace the push button with something from their library, and would require hand soldering for the side button and pot. Bunch of "extended parts" required unfortunately.

@emeb

emeb commented Apr 10, 2024

Copy link
Copy Markdown
Owner

Yeah, I haven't started work on the layout yet. I'm swapping the thru-hole connectors (serial, SWD, spkr, batt) out for smaller SMD parts to reduce size and avoid interference with the speaker on the backside so there will be a bit more work to do. Yours looks great though and I'm looking forward to how you get the BOM & manufacturing stuff going.

@emeb

emeb commented Apr 11, 2024

Copy link
Copy Markdown
Owner

Got a preliminary layout going - using some little connectors for the battery & speaker plus removed some pins from the SWD connector. Note that there are no LC filters on the speaker outputs - datasheet says that's not needed even though the Adafruit breakout does provide them. Not sure if that's a problem or not.
buddhabox2
I2S outputs have been shifted to different GPIOs - need to verify on the breadboard that the new location is OK, plus check for backside interference between SWD and speaker - may shift to an SMD header if so. I tried to use the same 3-pin connector for SWD that RPi used on their new debug probe but it doesn't fit into the available area.

@jonbro

jonbro commented Apr 11, 2024

Copy link
Copy Markdown
Author

nice - I finished my layout as well, and sent it off for assembly

image

I added a big resistor to the gain select for the amp, switched to usbc, and setup the debug header so you can just plug a pi pico into it directly (my preferred approach)

I'm curious to see how bad this back of the board interfering with speaker is - hopefully something that can be solved with hot glue or tape.

@emeb

emeb commented Apr 14, 2024

Copy link
Copy Markdown
Owner

Looking fwd to seeing how your assy turns out. I've been tweaking on my layout for a few days and here's what it looks like ATM:
buddhabox2
Main thing going on here is that I removed all thru-hole connectors that come near the speaker. Still have the serial debug on the side though since that's well away from the danger zone.

I'd be interested to get a look at your BOM and assembly order - curious to see what it would take to get my design done vs having to build my own.

@jonbro

jonbro commented Apr 14, 2024

Copy link
Copy Markdown
Author

Added LCSC part numbers to my schematic - there are quite a few "extended" parts on the list, which cost an extra 3 dollars each per assembly order, but you can skip past those and just do them by hand.

@emeb

emeb commented Apr 14, 2024

Copy link
Copy Markdown
Owner

Cool - thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants