##### ## #### ## #####
_____ (___ ) | | _ | | ( )_| | `\___/'
______ |___ / / / / / / /__ /_____|
_ __ | |/ / | ' / | < | . \ |_|\_\
### ### ### ## ## ## ## ####
IMPORTANT: enter the case-INsensitive alphabetic (no numbers) code AND WRITE SOME SHORT summary of changes (below) if you are saving changes. (not required for previewing changes). Wiki-spamming is not tolerated, will be removed, so it does NOT even show up in history. Spammers go away now. Visit Preferences to set your user name Summary of change: '''This page is for developers about logging to MMC''' '''it takes complex and CPU-eating software to talk the native MMC protocol''' (bidirectional data line, CRC ...). * However '''most MMC cards support the SPI protocol''' (possibly all, according to [http://www.freelabs.com/~whitis/sd_card/ this useful page] ) * SD is not simpler than MMC, but all SD cards support SPI! Since we also use SPI for the knock-chip and MCP3208, it was an excellent choice to provide HW support SPI-based MMC on GenBoard/VerThree. ---- '''Old thoughts:''' For onboard logging (GenBoard/VerThree) we considered the SPI atmel flashes that appear MMC SPI-mode compatible: * [ http://www.atmel.com/dyn/products/product_card.asp?family_id=616&family_name=DataFlash%AE&part_id=2471 At45DB161B 16Mbit] * [http://www.atmel.com/dyn/products/product_card.asp?family_id=616&family_name=DataFlash%AE&part_id=2472 At45DB321B 32Mbit] * [http://www.atmel.com/dyn/products/product_card.asp?family_id=616&family_name=DataFlash%AE&part_id=2473 At45DB642 is dual interface, big] * [http://www.atmel.com/dyn/products/product_card.asp?part_id=2474 At45DB1282 is 128Mb version of the above.] * [http://www.atmel.com/dyn/resources/prod_documents/doc1456.pdf related AVR appnote for dataflash usage] Real MMC is basically the same electrical interface and protocol, but more available and can be removed if a socket is used. ---- '''Links''' Working system with MMC and ATmega161: * http://www.myplace.nu/mp3/ under ''hardware'' - ''yampp-7'' * http://butterflymp3.sourceforge.net/sw.html AVR plays MP3 from FAT16 stored on MMC ** everything we need for logging to MMC. look at sources/fat...c and mmc...c ** minor cosmetics needed to use non-busy (but interrupt based) reading of SPI data '''Flashfile C library for MMC/SD FAT'''http://www.avrfreaks.net/index.php?module=FreaksTools&func=viewItem&item_type=tool&item_id=516 '''Procyon AVRlib with MMC, FAT, IP, graphic lcd support and lots more''' http://hubbard.engr.scu.edu/embedded/avr/avrlib/ Basic tech info about hw & sw interface system * http://www.squirrelpf.com/msavr/files/MMCTech.pdf * http://www.squirrelpf.com/msavr/files/images.zip Hitachi 16MB MMC-!DataSheet as Sample * http://www.squirrelpf.com/msavr/files/Hitachi16.pdf * [http://www.dragonsgate.net/pipermail/icc-avr/2003-December/002816.html SPI codee] * [http://www.vems.hu/files/mmc/mmcsys-version_3-1.pdf Detailed MMC spec: 130 pages] * [http://www.squirrelpf.com/msavr/files/MMC-System-Summary-v3.31.pdf apparently a summary of the above: 38 pages] '''libraries:''' * http://www.squirrelpf.com/msavr/files/mmc_eagle_lib_20040112.zip * http://www.squirrelpf.com/msavr/files/MMCSocket20040111.zip * http://www.squirrelpf.com/msavr/files/mmpack.zip '''Tech sheets''' * http://www.conwin.com.tw/multi.htm * http://homepage.ntlworld.com/seanellis/mmcserial.htm * http://www.singatron.com/MCC.asp ---- '''MMC and SD sources''' Can someone check these Toshiba SD flash and comment on them? The question is if we can talk to it via SPI. * SD-M3203B3 * SD-M6404B3 (1.5 *price of SD-M3203B3) We would host in WebShop if suitable. Other type is OK, but we want to make sure to be fully compatible with our firmware and HW. That aside, they are drivable through SPI (sure?) Official doco appears to need licensed, but there's some limited info here - http://www.sandisk.com/oem/sd.asp ---- '''MMC sockets''' also digikey has some sockets from HRC hr845ct-nd $3.80 hr846ct-nd $3.80 Note that the '''MMC and SD have 7 pins with standard 2.54mm centerline so any card-edge connector should work'''. Your old 286 ISA motherboard comes to mind with a hammer in the background :-) ---- '''See also''' * GenBoard/LoggerIntegration Optional: Add document to category: Wiki formatting: * is Bullet list ** Bullet list subentry ... '''Bold''', ---- is horizontal ruler, <code> preformatted text... </code> See wiki editing HELP for tables and other formatting tips and tricks.