STM32 Firmware Optimization for High-Speed Data Logging

Job ID: 40096631

Budget: ₹600 – ₹1,500 INR

Project Description

I am working on a high-speed data logging proof-of-concept using STM32H723VGT6 / STM32H743VIT6.
The current firmware already achieves ~100 Mbps (≈12.5 MB/s) SD card write speed using SDMMC (4-bit) + DMA + FatFS, but it requires optimization, validation, and exFAT support.

The goal is to make the firmware production-ready, reliable, and extensible for future data sources.

Scope of Work
Phase 1 – Optimization & Validation

Optimize existing SDMMC + DMA write pipeline

Ensure throughput reflects actual SD card writes, not RAM/cache

Fix cache coherency (D-Cache), DMA alignment, buffering, and FIFO issues

Improve FatFS sync, error handling, and file integrity

Achieve stable continuous logging at ≥100 Mbps

Phase 2 – CSV Logging with Timestamp

Replace raw/binary logging with CSV-based logging

Each CSV entry must include:

Timestamp (internal RTC preferred; µs/ms timer acceptable)

Data value(s)

CSV formatting must not significantly impact throughput

Implement file rollover:

Size-based or date-wise CSV files

Safe handling of FAT32 & exFAT file size limits

Phase 3 – Data Source Abstraction

Current data source: dummy/random data generator

Future data source: external SPI-based IC (~100 Mbps)

SD write engine must remain unchanged

Provide a clean API to swap data sources later (DMA/ISR-friendly)

Hardware & Tools

MCU: STM32H723VGT6

Board: WEAct Studio STM32H723 (onboard SD slot)

Interface: SDMMC (4-bit mode)

IDE: STM32CubeIDE

File System: FatFS (FAT32 + exFAT)

SD Cards: 128 GB A1 EXFAT BASED XC industrial grade SD card

Deliverables

Optimized STM32CubeIDE project (.ioc + source code)

Reliable exFAT logging on 128 GB SD card

Sustained ≥100 Mbps without FS errors or overruns

CSV log files readable on PC after power-cycle

Short technical report covering:

SD clock & DMA configuration

FatFS/exFAT settings

Performance observations & recommendations

Required Experience

STM32H7 series

SDMMC + DMA multi-block writes

FatFS performance tuning

Cache/DMA coherency handling

exFAT implementation on STM32


This project will be awarded only to freelancers who can demonstrate working exFAT SD card data logging. The current implementation works on FAT32, but the final solution must support exFAT.