Rob Wentworth sent in his simple MMC card slot hack. He used that useless card edge floppy connector to add a MMC/SD card to his WRT54G. A quick rebuild and a spacer made it perfect connector. The connector meets the MMC pins perfectly, but skips the unneccesary SD contacts.
40 thoughts on “Floppy Connector MMC Card Slot”
Thats a good hack, if your board already has a MMC interface onboard you can solder on to. Check out this hack of a compact flash card to IDE connector using an IDE ribbon cable. http://www.natrium42.com/blog/?p=39
eliot what do the starts mean?
sorry i mean stars
That is awesome. Clever, simple solution to a potentially expensive problem.
That’s awesome, and it appeared here with strangely good timing, as I was looking at ordering some typical commercial SD sockets yesterday to play around with them, now it seems I have a free alternative.
Your “board” does not need an mmc interface. All you need it a couple of GPIO (General Purpose I/O) pins, and you can “bit-bang” the SPI protocol used by the SD card in MMC mode. You need a clock output, and a Data Output, and an (optional Data Input). Instead of separate Data Input, you can wire it through a current-limiting resistor to the Data Output line, then switch I/O directions between SD/MMC reads and writes. This technique is common in the PIC microcontroller world. We can use it in out OpenWRT routers as well. I have also updated the mmc.o loadable linux sd/mmc driver to run much faster and places much less load on the router. I will post the updated driver soon.
huh. go figure, the pins match up. sometimes I guess we all get a little gift. too bad i don’t think I have a single edge style one laying around…
also, to be really useful for anything except embedded work (though it is pretty schweet for that) you are going to need to come up with a way to auto align the pins. should be pretty simple to cut down or otherwise modify the connector to do this. it looks like all it would require is a pair of rails to force proper alignment.
if anyone was inspired by this to take a walk down memory lane and read about floppy disk cables, here is an interesting site: http://www.nullmodem.com/Floppy.htm
Lots of (most?) floppy cables in desktop PCs STILL have the edge connectors, for 1.2 MB 5.25 inch floppy drives. I have one of these drives in my computer, for my extensive collection of “old media” (I still have hundreds of 8 inch floppies too ;-). You may be able to “steal” a connector from the floppy cable inside the PC you are using now. In my computer, one is just hanging off the end of the cable, so I could just cut the cable close to the next inner connector (with the power OFF, of course).
With the right drivers, you could use one of these on a PC parallel port. Because it is 5 volt TTL, you need to use a pair of resistors to “voltage-divide” the printer port outputs to 3.3 volts. The 5 volt inputs should “see” 3.3 volt logic from the card just fine. You could also steal power from the PC and use a resisotr voltage divider to get the 3.3v power for the SD card. “Somebody” just needs to port an mmc driver to the PC parallel port. Hack together a printer cable, a floppy cable, and some resistors for a “free” SD card reader. ;-)
You don’t need rails to force pin alignment. The outer edges of the SD card contain grooves that catch in the floppy socket, and the card aligns nicely against edge of the floppy connector alignment key (fits into slot cut into floppy drive edge connector). I inserted a piece of folded-over plastic cut from a soda pop bottle to fill the unused pins and help guide the card into the socket. It is easy to plug and unplug without alignment woes. You could Dremel a slot in your router case just wide enough for the SD card and (sparingly) hot-glue the floppy connector inside it (with SD card inserted to help gluing alignment. It is not spring-loaded like a *real* SD socket, so you want the card sticking out enough so you can remove it from the router. *** Or, like my friend does, just LEAVE the SD card INSIDE the router. He never changes the SD card, but if he needed to, a WRT54G case snaps apart easily.
To bypass booting (pivotroot) my WRT54G from the ext3 partition on my SD card, I can press the RESET button within one second of when the front panel amber LED first comes on. Startup scripts launch mounting the SD card JFFS2 partition in the background so booting can continue. The JFFS2 mount point is empty for several minutes after booting, while complete JFFS2 integrity testing is done, until the mount completes. Because the filesystem root is on my SD card, I have installed MANY OpenWRT software packages without having to reconfigure them for non-default installs. :-)
My free webhost only gives 2 GB of traffic per month. After posting to hackaday, I have already used 1 GB in just hours. I see my webhost (awardspace.com) bumped my limit to 5 GB, but that could be used up in a day or so…
If somebody wants to mirror my “sdfloppy” webpage (with photos) you have my permission, and please post the URL to this comment list.
Coral cache link:
A little offtopic, but I understand that Secure Digital is propriatry code, are there any open source read/write drivers that have been written, or IDE-to-SD adapters (I understand also that the IDE-to-CF on ebay will not support SD)
Little about SD do I know :(
I love it when stuff works out like this.
Elegant, and think of how happy that floppy connector is to be useful again! :D
“… Secure Digital is propriatry code … are there any open source read/write drivers …”.
Actual, the SD specs that USED to be expensive are now (somewhat) open, and drivers HAVE been written, but have not been ported to OpenWRT. SD protocol requires the extra pins that are provided by a *real* SD socket. However, MMC-mode does not need the SD pins, supports 4-bit data transfers (like SD), and does not need the SPI-mode chip select (it uses an address resolution protocol instead). MMC mode drivers have also been written, but not ported (AFAIK)…
There is also a much more complete SPI-mode mmc driver (from Yong-iL Joh) that I want to merge into the OpenWRT mmc driver.
Thanks for the mirrors! I especially like the Coral Cache link (no need for setup, first access creates the cache). I am considering only posting Coral Cache URLs to my website in the future. Is that acceptable use for hackaday?
a nice use of a old teck interface like this very much keep up the good work hackaday
My web host suspended my account (including uanr.com e-mail) due to overtraffic (2 GB in the past hour,
6 GB in less than a day, with small highly-compressed images)…
The mail does not bounce, it is just trapped in the inbox until the account unfreezes at the beginning of next month. ;-(
I just transferred my uanr.com domain to a different web host (50webs.com) that claims to have unlimited traffic. My DNS registrar says the domain transfer may take up to 72 hours, but that all depends on how long the old IP address remains cached in DNS servers across the internet…
Meanwhile, please use this link (thanks bumsk):
Please use this contact information for the sdfloppy site:
oh, thats gold,
thats just sweet,
never thought you could do something like that, well done
Hmm… I just realized that all mail sent to the uanr.com mailbox will be trapped in the old isp inbox forever, because the uanr.com domain transfer means I cannot get mail from the *OLD* mail.uanr.com pop3 mailserver (it was a shared IP address).
Sorry, I will not be able to read or answer any mail y’all sent to uanr.com e-mail addresses after the account was suspended for overtraffic. I was getting 2 GB per hour of traffic and climbing. Was that all real site visits, or some sort of denial-of-service attack?
My account has gotten hundreds of MB of traffic just to the “account suspended” page, and the hits are still coming…
The new uanr.com website (same as the old one) should start appearing in most places by tomorrow, but that depends on IP address caching at various DNS servers.
I am glad you enjoyed the hack. I have many more (lots of notes, photos, screenshots, etc.)… I recently built a CNC machine that uses a stepper-motor to turn the hand crank on an old broken camera tripod, for my dremel tool z-axis… :-)
You should still be able to get your email from your old host – just change the pop3 settings from mail.uanr.com to 126.96.36.199 and you should be good to go.
Neat hack – not sure if I’ll try it though!
Regarding using the numeric IP address for my pop server, I already tried that right after posting the comment. It works! I am just glad I looked up the old mail.uanr.com IP address before it changed.
Thanks for the tip, in case I had not already done that!
I wish there was a simple way I could edit previous comments I posted to hackaday, so I could make corrections to correct spelling, reduce redundant wording, etc…
I have added detailed descriptions to each of the photos. Please excuse the occasional feeble humor (“… with an SD card waiting patiently to mate with the connector.”) ;-)
Newbie,just started getting into video formats and its portability prospects.
nice project i’m not very good with io or gpio (I dont even know how to locate them) but would this be possible to hook directly to a computer?
“Shea” asks “… would this be possible to hook directly to a computer?”.
Yes! My next hack is an “el-cheapo parallel port SD card reader” using only salvaged floppy and printer cables, and some resistors (no circuit board needed). This should even work with old laptop computers that do not have USB ports.
When complete (soon), I will submit my “el-cheapo parallel port SD card reader” to hackaday. :-)
Now you should make a wrt54g microdrive reader!
Mr. I want hlep me with my project my project is lock /unlock the MMC .I just know the CMD42 but I does not know the data block strucutre of this CMD please send
THATS A GREAT FUCKIN HACK!!!!!!!!!
Try to find SD connectors. $50 for 3. GREAT JOB!!!
An ISA slot works too. It’s basically the same type of connector, but soldered to an old motherboard. Got a powered handsaw?
I saw this idea a while ago, but it only just occured to me today that, because the floppy connector is double sided, and the SD card isn’t, it should be possible to wire up the connector so that the card can be inserted in either orientation. The wires of the ribbon cable could be joined at the board end. I hadn’t seen this idea anywhere, and I thought it might add a little to an already great idea.
Excelent comments. My Favorit Blog. Thank you Autoversicherung
I really enjoyed your blog. I love it when I find out new things or are reminded of old things on a blog,
So what happened with the “el-cheapo parallel port SD card reader” project? Is it possible to do? I’m really interested.
I got sucked into a blackhole project when another programmer died. My hobbies have been place on hold since then.
Now that microSD cards are so cheap, I would just use the SD adapter that comes with it as a socket for it. Of course, microSD is not required to support anything but SD protocol, so more wires would have to be connected and a different device driver used.
Some day, I may return to this project. Spare time is just rare these days…
Here is code for using a parallel printer port to access an SD card (using a floppy connector):
And another one with code, but he uses a circuit board with 3.3v/5v level translation/buffereing with an IC, plus a REAL SD socket:
Here’s a similar neat trick which I like better:
Take a piece of double row pinheader, bend one row of pins et voila, a makeshift SD connector.
Actually, I was impressed when I saw that newer SD socket bent-pin hack too.
If you compare any modern device to its ancestors, you will see a long line of simplifications. Compare a recent DVD player (or an newer VCR) innards to those of its ancestors. Those old ones will FILLED with many motors and gears. The newer ones just use a few custom molded plastic pieces to replace most of that complexity.
This simplification by using a DIP header is indeed an impressive step forward over using a floppy connector (which is no longer as common as it was back in 2006).
i can use other cable then 5.25″ FDD connector ..i stil use 5.25″ fdd :) The ST-506 and ESDI Hard disc interface (PC XT) use 2 cable with short (data) and long connector (control) (i does not use anymore :D) .. http://pctuning.tyden.cz/ilustrace2/Teuzz/HDD_ST506.gif
Please be kind and respectful to help make the comments section excellent. (Comment Policy)