MicroSD Party Board - SPI widgets for microSD enabled prop boards
Tubular
Posts: 4,703
This project is a joint collaboration between Jazzed (whose idea it was), MacTuxLin (who manufactures a Propeller based microSD duplicator that has 4 microSD sockets onboard), and myself ("smorgified" it and got it made)...
It is a collection of 5 SPI widgets (Spidgets?) that can be snapped apart, and used with any prop board that has a microSD socket. It makes it cheap and easy to add say a big flash memory, or real time clock, or analog inputs, to a propeller platform usb or similar.
The five boards are
1. A Memory Board - accepts a SOIC-8 Flash memory, or 23LC1024 1Mbit SRAM etc
2. A RTC Board - accepts a DS139x (SPI), or DS13x7 (I2C, underneath)
3. An ADC board - accepts an 8 channel MCP3208/3008, or 2ch MCP3202/3002
4. A double adapter - breaks out to two microSD sockets so you can combine any two of the above. Uses and extra data pin normally unused as the select for the second device.
5. A 'dynamite' board that combines C3 style memory, and 8ch ADC. Uses two extra pins (6 data pins total).
How to use the two extra pins is still being debated. I am generally using the pin next to the normal SPI device select, as a second select signal (eg for a TSSOP SRAM underneath the SOIC Flash). And I am using the other spare pin to read a small single wire memory/id device (Microchip 11AA160), but this may be a waste. The two extra data pins allows QSPI flash chips to be read, subject to the host board having 6 rather than 4 data connections.
One unshop of this is it would be great if other board designers brought out these two (normally unused) MicroSD pins to pads, or a solder bridgeable link to propeller data pins. I know MacTuxLin is already updating his to support this, and I'll do the same.
OBC has a few blank boards at PropellerPowered, and I can send him more if anyone is interested in experimenting. There will definitely be another revision coming through with a couple of minor improvements; that was always the intention. To be honest I didn't think they'd do such a good job with the routing of the microSD outline (including notches), but they used a really fine router bit and it came up great.
Any thoughts about pin usage of those extra 2 pins, requests for other SPI devices, questions would be warmly welcomed.
cheers
Lachlan
It is a collection of 5 SPI widgets (Spidgets?) that can be snapped apart, and used with any prop board that has a microSD socket. It makes it cheap and easy to add say a big flash memory, or real time clock, or analog inputs, to a propeller platform usb or similar.
The five boards are
1. A Memory Board - accepts a SOIC-8 Flash memory, or 23LC1024 1Mbit SRAM etc
2. A RTC Board - accepts a DS139x (SPI), or DS13x7 (I2C, underneath)
3. An ADC board - accepts an 8 channel MCP3208/3008, or 2ch MCP3202/3002
4. A double adapter - breaks out to two microSD sockets so you can combine any two of the above. Uses and extra data pin normally unused as the select for the second device.
5. A 'dynamite' board that combines C3 style memory, and 8ch ADC. Uses two extra pins (6 data pins total).
How to use the two extra pins is still being debated. I am generally using the pin next to the normal SPI device select, as a second select signal (eg for a TSSOP SRAM underneath the SOIC Flash). And I am using the other spare pin to read a small single wire memory/id device (Microchip 11AA160), but this may be a waste. The two extra data pins allows QSPI flash chips to be read, subject to the host board having 6 rather than 4 data connections.
One unshop of this is it would be great if other board designers brought out these two (normally unused) MicroSD pins to pads, or a solder bridgeable link to propeller data pins. I know MacTuxLin is already updating his to support this, and I'll do the same.
OBC has a few blank boards at PropellerPowered, and I can send him more if anyone is interested in experimenting. There will definitely be another revision coming through with a couple of minor improvements; that was always the intention. To be honest I didn't think they'd do such a good job with the routing of the microSD outline (including notches), but they used a really fine router bit and it came up great.
Any thoughts about pin usage of those extra 2 pins, requests for other SPI devices, questions would be warmly welcomed.
cheers
Lachlan
Comments
I've included the 5th pin to the new board I'm working on in collaboration with msrobot (RAISD-QS Kit). It has 4 uSD sockets as well & the DAT1 can be connected to the prop simply by mounting a resistor. Tubular, I tried to add the 6th pin of the 1st microSD to the prop but just ran out of available prop pins for it. I'll add this to my to-do list on the next board.
Thanks for producing these. Kenichi's board looks very good
Haven't seen the combo mated until today.
I like "Spidgets" ... SPI widgets.
The PropBOE was my main inspiration for a microSD SPI Flash chip. There are only a few ways to add hardware to the board without doing something with the prototyping board area. A Flash Spidget lets microSD users have easy access to fast XMMC code on PropBOE and other Propeller uSD boards. While SD cards are great for lots of data, they are not really designed for fast random access. Fast random access is needed for fetching code with reasonable performance.
I've already verified that Propeller-GCC XMMC mode works with the Flash Spidget. Propeller-GCC board config file attached below.
The microSD connector is probably the single most common expansion standard on Propeller boards. For anyone considering reselling Spidget Flash boards, I recommend the Winbond 8MB SOIC-8 SPI/QuadSPI parts* available from digikey. These parts will work in any uSD card slot. The QuadSPI feature should work in the Spinneret board uSD slot.
I've been able to score/break the PCB sections on these boards. The Flash Spidget is about 1" long where a normal uSD card is about 0.6" long. The PCBs fit nicely into the uSD slot and with an adapter will have no problems in a standard SD card socket.
Lachlan, WSON8 footprints offer higher density if they could be supported on a respin. Winbond 16MB WSON8 SPI/QuadSPI should work - I have samples of these. Micronix has a 32MB (256Mbit) WSON8 QuadSPI part, but I haven't tried it yet.
I wish I had more time to try the uSD Dynamite Stick Spidget. I suspect it would make a great add-on for the Spinneret module. It also provides up to 8 ADC channels in addition to some of the other C3-like goodies.
It occurs to me that the pads on some of the boards like the uSD doubler could be used to connect some SPI LCD modules
Thanks,
--Steve
*Microchip SQI parts are not single bit SDIO AFAIK
@MacTuxLin, don't worry too much about the 6th pin as it is only used for ID purposes at the moment. It would be nice to have it on one slot, but no big deal.
Does anyone know whether the PropBoe actually brings the extra 2 MicroSD connections out to pads? The schematic isn't clear about this. They do at least have pullup resistors
Also I forgot to mention 4D systems have a small range of similar modules based on the same kind of idea - display and GPS modules - that help complement the set.
http://www.4dsystems.com.au/prod.php?id=141 (small 96 display)
http://www.4dsystems.com.au/prod.php?id=142 (medium 128 square display)
http://www.4dsystems.com.au/prod.php?id=143 (gps)
Seems to me that only the 4 SDIO pins are connected.
Rev. A has pads for DAT1 and DAT2 on the back of the PCB. Rev. A also has pads for all but 2 I/O pins on the back of the PCB so it would be possible to connect the extra SD pins to the Prop with some wire.
Rev. B doesn't have the extra SD pads nor the I/O pads on the bottom of the board.
Thanks for checking that out. Its a pity the pads have been removed on revB of the PropBOE, but never mind. Full steam ahead with the Spinneret and MacTuxLin's new board.
Here's a photo of the display and dynamite board on the spinneret. There are a few passives near the MicroSD socket that could potentially short out, so I'll adjust the board a little bit so it can't happen.
I had not realized that the whole Module fits into ALL 3 sd slots in Kenichis sd-duplicator and our new RAISD-QS-KIT.
This looks and is very COOL, isn't it?
Enjoy!
Mike
It doesn't quite fit, just yet. But it will as soon as we revise it.
Its a bit of a fluke its as close as it is - I hadn't seen a close up of MacTuxLin's product. Its incredibly close to fitting - just perhaps 0.5mm too much pitch. MacTuxLin has sent through some dimensions taken off his board, so we can get the spacing exactly right for the next round.
Also the dynamite board is "upside down" relative to to all the others, due to being pulled from another project. I'll flip it over, then yes all three boards should go nicely into the duplicator.
Yes, it is indeed very cool. And we're only just getting started.
Modular works very nicely with the propeller. I can see this fitting in very well with the software. Run out of ram on a C program - add one of these boards. Need some more I/O pins - add a little board. Sweet.
Drac,
The 23LC1024s seem to be fairly widely available now. I have some of each package from microchip direct, I can post you some to play with if you want. Element14 AU website seems to show they're theoretically due any minute, but i've seen that bug before
Yeah the modular approach goes with the clean "any peripheral on any pin*" philosophy. We're still not really exploiting that aspect of the prop.
*Except video. Even the video limit may disappear with prop2. Something you don't get with many other micro architectures, and it trips them up constantly.
Yeah, their in. I've got an order of DIPs coming this week if I pushed the right buttons.
Jeff