SD + MicroSD Expansion Card

Recently finished putting together an EC design that includes both — for my usecases of a lot of data transfer to Pis or Printers this is very handy to have compared to bespoke readers for either size.

Features:

  • SD Slot
  • MicroSD Slot
  • Standard-size card
  • (Planned for board rev 2) 1 exposed usb port internally for a dongle

Tradeoffs:

  • the internal hub is USB2.0 (microchip USB2660), so there’s a speed drop compared to the official expansion cards
  • the board seems to get a bit hot right now. Not sure exactly why, wondering if there’s a powersave mode I’m missing linux-side

Pics (starring the bodge wire from rev1):




I have 4 unassembled PCBs from my order left over, if there’s interest from the midwest US (shipping costs and all) feel free to DM and I’ll see if I can work something out.

Not sure offering an assembled version is going to be viable cost-wise without a lot of interest considering the BOM is ~$20 and I ordered with PCBA instead of reflowing at home.

12 Likes

Very nice!
Welcome to the forum btw :grin:

1 Like

Files are now up on a git repo: https://github.com/Luminoso-256/dualsd-ec

2 Likes

You don’t really need a hub, they make readers that can address multiple cards at the same time these days. I am kind of playing with the idea of doing a dual microsd + usb A (2.0) card using one of those at some point.

I’m a little confused by the comment? This design is using a multiple-card IC (the USB2660). Said IC also happens to have a USB hub built in that simply isn’t being utilized at the moment. When I was doing a component search I couldn’t find a multi-card IC that was meaningfully simpler to work with (e.g. most of the cypress parts were out due to some of the configuration requirements from my datasheet skim)

Built in hub?! sweet, usb2 only? not quite as sweet.

How fast is it? Most of the usb2 card readers I have been trying lately were extremely slow ~20MB/s which isn’t even half of what usb2 should be capable of.

I was probably going to rip off of the of the shelve chinesium multi card reader designs, from what I have seen those aren’t using all that many components (those seem to use mostly genesyslogic controllers like the framework readers do)


The speed is around 20 MB/s in testing, yeah. Extremely slow is subjective by use case though, I’d argue. It works fine for my needs at least

So the fancy usb2 ones allso cap out at 20, wonder what the bottleneck is there, usb2 like sticks or ssds can usually do around 40 (and so do usb3 readers cockblocked to usb2). Would have expected there to be at least some difference between a name brand ti chipset and some 50cent chinesium chip on board blob.

“Too slow” would be subjective to use case but “extremely slow” is somewhat in an absolute sense and compared to what the flash is capable of. Then again my current solution is one of those tiny usb2 readers on my key-chain in case I forgot my nice reader so fast enough for some applications is the key here XD.

So the fancy usb2 ones allso cap out at 20, wonder what the bottleneck is there, usb2 like sticks or ssds can usually do around 40

on this particular board I wouldn’t be surprised if it was my diffpair routing. the USB 2 traces were… not routed first shall we say and so the impedance match is suboptimal.

“extremely slow” is somewhat in an absolute sense and compared to what the flash is capable of.

ah, yeah that’s fair.

I highly doubt that is a symptom of bad signal integrity, for one usb2 is incredibly tolerant and for the other you’d get constant disconnects and stuff like that and not just half speed.