Card Reader PCB
For the PCB, we decided to run a bunch of the optional traces from the SD card to the Teensy for future projects. Only the 6 lines shown above (VCC, GND, CS, CLK, MISO, MOSI) are actually used in the firmware, but we have a couple of SD ideas bouncing around that we wanted to try out – hence, the PCB is a little busier than our simple wiring diagram shown above. Of course, you could always modify the firmware we’ll give you today to do neat things like auto-card detect and other stuff like that, if you hate the idea of having unused wires on your board. We’ve also included a 3-pin header for jumpering between the hardware port’s CS, and the software-controlled CS that we are using.
Fig 6 – XYRW Eagle Schematic
- IC1 – 24-DIP Socket for Teensy
- JP1 – 3x 100mil header pins for jumpering between two different CS lines. We use the software CS on p13.
- SD Card Socket
Yeah, no need to incorporate the whole SPI nybble read wiring, as it’s not synced with the hardware SPI and therefore you might as well bit bang it. But for most SD (SPI) projects, this wiring will get you pretty close. If you don’t care about using the hardware CS (which is probably always the case), then you can go ahead and solder a wire into pins 1-2 of the header and call it a day.
With this simple little board, you can implement all sorts of rudimentary USB->SD devices. Card readers of course, but maybe a little encryption widget, or some sort of Teensy datalogger. Notice we said datalogger and NOT keystroke logger as that would be naughty and would probably require a second USB connector. But for general hobby hacking you might get some mileage out of actually etching a PCB.
Which brings us to: The PCB layout. This is a png file which is properly scaled for printing to transparency. It looks grainy here because it’s scaled down to an easily viewable size. Click and save it to your PC if you actually plan to use it to etch a board, and try to remember not to “Fit to Page” when you print. Har har har, we’ve wasted more transparencies that way… Yes, we agree that it’s crap layout, but it’s single side copper and only took 10 minutes. Redo it yourself if you need something nicer.
Fig 7 – XYRW PCB Layout
Also note that PJRC offers a nice microSD adapter that piggybacks onto the Teensy. For every other application except this one (which uses full size SD), theirs is probably much better. Nicely buffered, and quite pretty.
At this point, you should have a functional electrical and logical connection between your PC, Teensy, and Xyron card. Now all we have to to is (ugh), the software side. It’s all downhill from here!