cancel
Showing results for 
Search instead for 
Did you mean: 

I need to interface a mass storage device (of size 8 GB or more) to STM32F769I. SD/microSD/USB disk do not suit my requirements. Hence, I am looking at eMMC/NAND Flash. Is it possible to interface eMMC to STM32F769I? If Yes, How?

Raghavan K
Associate II
Posted on June 16, 2018 at 19:03

I could not find any app notes on how to interface eMMC to STM32F7 MCUs. Appreciate help from the experts in this forum.

#stm32-emmc #stm32f7-nand #stm32f7-emmc #stm32f769i #stm32f769i-eval
6 REPLIES 6
Posted on June 18, 2018 at 12:58

eMMC memory connects like an SD card would, the primary communications pins are the same. The STM32F769I-EVAL board supports two microSD sockets.

One can evaluate eMMC using ODROID adapters and modules. There is a microSD form-factor adapter.

0690X00000604ZKQAY.jpg0690X00000604c9QAA.jpg

https://www.hardkernel.com/main/products/prdt_info.php?g_code=G135415955758

 

Driver code needs to be modified to recognize and use eMMC based memory. I can consult on that if you need assistance.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Raghavan K
Associate II
Posted on June 18, 2018 at 13:37

Turvey.Clive.002

‌ Thanks for your response. I am looking to use an eMMC of size 8 GB or 16 GB for my image storage requirement. I definitely need assistance on how to access eMMC from STM32F769I-EVAL. I shall contact you soon for this.

Posted on June 18, 2018 at 13:08

Here running a 128GB SAMSUNG eMMC from an STM32F769I-DISCO

15.61 MBps Write, 22.50 MBps Read

Core=216000000, 216 MHz

CPUID 411FC270 DEVID 451 REVID 1000

Cortex M7 r1p0

STM32F76xxx or F77xxx

C0000018 20013910 00000000

10110221 12000011 00000040

FPU-D Single-precision and Double-precision

HCLK=216000000, 216.00 MHz

APB1= 54000000, 54.00 MHz

APB2=108000000, 108.00 MHz

PLL P:216000000 Q:108000000 R: 72000000

PLL48CLK 108000000, 108.00 MHz

FatFs Testing (68300)

SystemCoreClock: 216000000

APB1= 54000000

APB2=108000000

Mounting FatFs

BSP_SD_MspInit

00200000 2097152 1.00 GB GetCardCSD

0E8F6000 116.48 GB 122.14 GB EXTCSD

PLL1_P_CK 216000000, 216.00 MHz

PLL1_Q_CK 108000000, 108.00 MHz

PLL1_R_CK 72000000, 72.00 MHz

SDMMC_CK 0, 54.00 MHz

HAL_SD_GetCardInfo 244277248 244277248

CardInfo 244277248 512 512

READ 0 1

00000000 : EB 76 90 45 58 46 41 54-20 20 20 00 00 00 00 00 .v.EXFAT .....

00000010 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000020 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000030 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000040 : 00 00 00 00 00 00 00 00-00 60 8F 0E 00 00 00 00 .........`......

00000050 : 00 08 00 00 00 1E 00 00-00 28 00 00 38 8F 0E 00 .........(..8...

00000060 : 04 00 00 00 C2 5E F7 E4-00 01 00 00 09 08 01 80 .....^..........

00000070 : 00 00 00 00 00 00 00 00-33 C9 8E D1 BC F0 7B 8E ........3.....{.

00000080 : D9 A0 FB 7D B4 7D 8B F0-AC 98 40 74 0C 48 74 0E ...}.}....@t.Ht.

00000090 : B4 0E BB 07 00 CD 10 EB-EF A0 FD 7D EB E6 CD 16 ...........}....

000000A0 : CD 19 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

000000B0 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

000000C0 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

000000D0 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

000000E0 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

000000F0 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000100 : 0D 0A 52 65 6D 6F 76 65-20 64 69 73 6B 73 20 6F ..Remove disks o

00000110 : 72 20 6F 74 68 65 72 20-6D 65 64 69 61 2E FF 0D r other media...

00000120 : 0A 44 69 73 6B 20 65 72-72 6F 72 FF 0D 0A 50 72 .Disk error...Pr

00000130 : 65 73 73 20 61 6E 79 20-6B 65 79 20 74 6F 20 72 ess any key to r

00000140 : 65 73 74 61 72 74 0D 0A-00 00 00 00 00 00 00 00 estart..........

00000150 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000160 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000170 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000180 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

00000190 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

000001A0 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

000001B0 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 FF FF ................

000001C0 : FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF ................

000001D0 : FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF ................

000001E0 : FF FF FF FF FF FF FF FF-FF FF FF FF FF FF FF FF ................

000001F0 : FF FF FF FF FF FF FF FF-FF FF FF 00 1F 2C 55 AA .............,U.

EXFAT

122.1 GB total drive space

232.1 MB available

121.9 GB used

---- 32768000 /SPEEDTST.003

D--- 0 /TRILO

---- 78 /STM32.TXT

---- 32768000 /COUNTER.004

0E8F6000 116.48 GB 122.14 GB

182

CRC32 A534026F Memory Image

32768000 Bytes, 453357874 Cycles

15.61 MBps Write (FatFs)

2099 ms run time

15.61 MBps (Sanity Check)

CRC32 A534026F COUNTER.004

9.42 MBps Crc (FatFs)

3479 ms

9.42 MBps SysTick Sanity

32768000 Bytes, 450635554 Cycles

15.71 MBps Write (FatFs)

2086 ms run time

15.71 MBps (Sanity Check)

CRC32 A534026F COUNTER.004

9.50 MBps Crc (FatFs)

3449 ms

9.50 MBps SysTick Sanity

COUNTER.004

32768000 Bytes, 313841835 Cycles

22.55 MBps Read (FatFs)

1453 ms

22.55 MBps SysTick Sanity

32768000 Bytes, 314532393 Cycles

22.50 MBps Read (FatFs)

1456 ms

22.51 MBps SysTick Sanity

20000A10 20000A20 16384 /TRILO/TRILO.003

CRC32 13363AF4 PKZIP ECC9C50B /TRILO/TRILO.003

20000A10 20000A20 30720 /TRILO/TRILO.003

CRC32 13363AF4 PKZIP ECC9C50B /TRILO/TRILO.003

20000A10 20000A20 32768 /TRILO/TRILO.003

CRC32 13363AF4 PKZIP ECC9C50B /TRILO/TRILO.003

20000A10 20000A20 65536 /TRILO/TRILO.003

CRC32 13363AF4 PKZIP ECC9C50B /TRILO/TRILO.003

Done!

PLL P:216000000 Q:108000000 R: 72000000

PLL48CLK 108000000, 108.00 MHz

SDCLK2 54000000, 54.00 MHz

00000900

Infinite Loop...
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Posted on June 18, 2018 at 13:49

I've worked with 16GB, 32GB and 128GB successfully, and worked with a couple of people to get 8GB Sandisk eMMC functioning.

The 4 and 8GB parts should work materially the same, but tend to be at the bottom end of the scale. As costs drop I suspect some of the smaller devices will decline in availability. The form factor permits a transition to next available sizes.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Posted on June 18, 2018 at 13:56

That's great to know. The ODROID module you mentioned is cool. I shall use this to test my program on the kit. But, finally I would like to make a PCB with STM32F769I interfaced to eMMC. Can I get any reference design for this purpose?

Posted on June 18, 2018 at 14:15

The adapter for uSD looks like this

0690X0000060Bi8QAE.png

The module itself is very simple, also see attached PDF (open thread in thread view rather than inbox view to see attachment)

Integration into a design should be a trivial exercise.

________________

Attachments :

EMMC_BD_0.3.pdf : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006HxTm&d=%2Fa%2F0X0000000ayj%2Fgt9h6YjcaMmWPhuh2UlzrR6OLFIfLni6cuCADYi5ntg&asPdf=false
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..