cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F769I-DISC1 SD Card maximum writing speed to achieve recording audio stream 24 bit 192 khz stereo

MChie.1
Associate

Hi,

I'm trying STM32F769I-DISC1 board with an Sd Card 8 GB Class 4 (4MB/s max) performance, the SD Card is FAT32 with 4096 bytes blocks to fullfill STM32CubeIDE allocation unit values. I build the testing project with the onboard SDMMC2 with RX and TX on DMA as 4 bit wide. I'm using FATFS to write data with f_write() function. With this setup I achieved 800 kB/s but I need 192000 freq * 3 bytes * 2 channel = 1152 kB/s or more. A thing that I don't understand is why if I change PLLSDMC frequency, SD Card will have same performance with 48MHz clock (/8) or 25 MHz clock(/15)... Do you know some tips to increase performance? Thank you very much, the product is great actually permit to record 96kHz * 24 bit * 2 channel audio streams.

1 ACCEPTED SOLUTION

Accepted Solutions
MChie.1
Associate

Hi, thank you. I was trying with a base Kingston 8 GB Class 4 bought at discount price, that gets 0.8 MB/s... trying an anonimous one 8 GB Class 4 now gets 1.8 MB/s. So it was the poor SD Card performance, thx. STM32CubeMX is a must have =)

View solution in original post

2 REPLIES 2

Large aligned blocks tends to be the key. The card ultimately dictates speed.

I tend to unpack the register settings for clock sources, dividers and bus width to verify what I'm actually working with.

Try some SanDisk SDHC/SDXC cards.​

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
MChie.1
Associate

Hi, thank you. I was trying with a base Kingston 8 GB Class 4 bought at discount price, that gets 0.8 MB/s... trying an anonimous one 8 GB Class 4 now gets 1.8 MB/s. So it was the poor SD Card performance, thx. STM32CubeMX is a must have =)