Embedded GUI for STM32 — DMA2D Acceleration, MISRA C, Royalty-Free

Embedded GUI for STM32 — Sparklet is a pure-C widget library that compiles on STM32F4, H7, and U5 MCUs and integrates natively with the DMA2D Chrom-ART hardware accelerator. MISRA C compliant source. No per-unit royalties. A fully supported alternative to TouchGFX for teams that need cross-platform portability or C-only development.

What Is the Best Embedded GUI Library for STM32?

Sparklet is a royalty-free embedded GUI library for STM32 MCUs that integrates natively with STMicroelectronics DMA2D (Chrom-ART) hardware accelerator across the F4, H7, and U5 families. It is written in pure C with MISRA C compliant source — making it suitable for industrial, medical, and automotive STM32 projects where C++ GUI frameworks such as TouchGFX introduce toolchain constraints or code audit complexity.

Sparklet's STM32 HAL routes all blit, fill, and alpha blend operations through DMA2D, freeing the Cortex-M core for application logic. The LTDC (LCD-TFT Display Controller) drives RGB parallel panels directly with hardware double-buffering for tear-free display. For higher-performance STM32H7 applications, the Chrom-ART engine handles full-framebuffer compositing at display rates.

The Flint UI Designer visual design tool generates STM32-targeted C code from a WYSIWYG environment on a Windows PC — the same design file exports to all supported STM32 families and to any of the 8 other supported platforms, so your UI investment is not locked to a single silicon vendor.

STM32 Family Support

STM32H7 — High Performance

STM32H7 Series — Cortex-M7 at 480 MHz with DMA2D and LTDC

The STM32H7 is STMicroelectronics's highest-performance MCU family, with Cortex-M7 cores at up to 480 MHz, hardware double-precision FPU, 1 MB+ on-chip SRAM, and a full DMA2D (Chrom-ART) engine plus LTDC display controller. It is the most capable STM32 target for rich GUI applications demanding smooth 60 fps animation on panels up to WVGA (800×480) resolution.

Sparklet on STM32H7 delivers:

  • DMA2D-accelerated widget blit, fill, and alpha blend — CPU stays focused on application logic.
  • LTDC double-buffer configuration for tear-free display with hardware vsync sync.
  • On-chip SRAM framebuffer placement — no external SDRAM required for 480×272 and 800×480 configurations.
  • External SDRAM framebuffer support for WVGA and higher resolutions via FMC interface.
  • Hardware JPEG decode peripheral (on STM32H7Bx variants) for compressed background image loading.

The STM32H7 is commonly used for industrial HMI control panels, medical device interfaces, building automation controllers, and automotive body HMI where the RH850 or i.MX 8 are over-specified. It is the most common STM32 variant evaluated by teams migrating from TouchGFX — see Sparklet vs TouchGFX for a detailed comparison.

STM32F4 — Mainstream

STM32F4 Series — Cortex-M4 Workhorse with DMA2D and LTDC

The STM32F4 series is the most widely deployed STM32 family in industrial, consumer, and medical embedded systems. Cortex-M4 at 168–180 MHz, on-chip SRAM up to 256 KB, DMA2D (on STM32F4x9 variants), and LTDC for RGB panel driving. The STM32F429 and F469 are the most common GUI-capable F4 parts.

Sparklet on STM32F4 provides:

  • DMA2D integration on F4x9 variants — hardware fill, memory-to-memory blit, and pixel format conversion.
  • Software renderer fallback for lower F4 variants without DMA2D — Sparklet's optimised C renderer delivers usable frame rates at 320×240 to 480×272 on 168 MHz cores.
  • SDRAM framebuffer configuration via FMC for larger display resolutions.
  • Minimal RAM footprint from 16 KB — suited to STM32F4 parts with 128–192 KB on-chip SRAM.

The STM32F4 is particularly cost-effective for medical device displays, industrial HMI panels, and consumer electronics where a mid-range Cortex-M4 is the right balance of performance and BOM cost. FreeRTOS and Azure RTOS (ThreadX) integrations are documented for STM32F4 targets.

STM32U5 — Ultra-Low-Power

STM32U5 Series — Cortex-M33 with Low-Power GUI for IoT and Wearables

The STM32U5 is STMicroelectronics's ultra-low-power MCU family, combining a Cortex-M33 at 160 MHz with TrustZone security, advanced power management (run mode down to 19 µA/MHz), and hardware graphics acceleration on select variants. Designed for battery-powered IoT devices, wearables, and portable medical instruments that require a display without sacrificing battery life.

Sparklet on STM32U5 leverages:

  • Partial rendering (dirty-region update) — Sparklet only redraws changed screen regions, dramatically reducing active display time and DMA2D usage — key for maximising battery life on coin-cell or small Li-Po powered devices.
  • Low-power display blanking API — Sparklet exposes display sleep/wake APIs that coordinate with STM32U5 stop modes for near-zero idle power consumption.
  • TrustZone-compatible codebase — Pure C with no dynamic allocation — compatible with STM32U5 TrustZone secure/non-secure memory partitioning in medical and IoT security contexts.

The STM32U5 is Sparklet's recommended target for wearable display GUI applications on STM32 silicon, and for portable medical instruments requiring IEC 62304 software lifecycle documentation. See low-power embedded GUI for power optimisation techniques.

STM32 Family Capability Comparison

FamilyCoreClockDMA2DLTDCTypical Use
STM32H7 (H743, H750, H7Bx)Cortex-M7480 MHzYes — full Chrom-ARTYes — dual layerIndustrial HMI, medical displays, automotive body HMI
STM32F4 (F429, F469)Cortex-M4180 MHzYes (F4x9 only)YesIndustrial panels, consumer electronics, medical instruments
STM32U5 (U575, U585)Cortex-M33160 MHzYes (select variants)LimitedWearables, IoT displays, portable medical
STM32F7 (F746, F769)Cortex-M7216 MHzYesYes — dual layerMid-range HMI, consumer appliances

Sparklet vs TouchGFX on STM32 — Key Differences

TouchGFX is STMicroelectronics's proprietary GUI framework, bundled free with STM32 MCUs. For many simple STM32 display projects it is a reasonable starting point. However, there are recurring reasons STM32 development teams evaluate Sparklet as a TouchGFX alternative:

C++ Dependency and MISRA C Exclusion

TouchGFX requires a C++ toolchain. Sparklet is written entirely in pure C with MISRA C compliant source. For automotive STM32 projects, medical device projects under IEC 62304, and industrial projects where safety analysis requires MISRA C compliance documentation, Sparklet is the only embedded GUI option that meets this requirement on STM32. See what is MISRA C for a primer on the standard.

STM32 Lock-In vs Cross-Platform Portability

TouchGFX only runs on STM32. If a product family spans STM32 and NXP i.MX RT variants, or the BOM moves from STM32H7 to STM32F4 mid-project, the TouchGFX UI codebase does not migrate. Sparklet's UI code — all screens, widgets, and state machines generated by Flint — compiles unchanged on any of the 9 supported platforms.

DMA2D Integration is Equally Deep

Sparklet's STM32 HAL uses DMA2D (Chrom-ART) identically to TouchGFX for all blit, fill, and alpha blend operations. There is no GPU performance penalty for choosing Sparklet — the hardware accelerator usage is the same. The difference is at the framework level: C vs C++, cross-platform vs STM32-only, MISRA C compliant vs non-compliant.

For a detailed side-by-side comparison, see Sparklet vs TouchGFX and the TouchGFX alternative page.

Why STM32 Teams Choose Sparklet

Four capabilities that differentiate Sparklet from TouchGFX and other STM32 GUI frameworks.
DMA2D

Native DMA2D Chrom-ART Integration

All blit, fill, and alpha blend operations routed through STM32 DMA2D hardware. CPU stays free for application and RTOS tasks throughout the render cycle.

Pure C

Pure C — No C++ Required

Entire widget stack in MISRA C compliant C. No C++ toolchain dependency. Compatible with all STM32 safety and industrial projects that mandate C-only codebases.

Cross Platform

Cross-Platform — Not STM32-Locked

Same Flint design file and C screen code compile on all 9 supported platforms. Move from STM32H7 to NXP RT1170 or Renesas RA8D1 with a HAL swap, not a UI rewrite.

Royalty Free

Royalty-Free Deployment

Developer-seat licensing with zero per-unit royalties. Ship on any STM32 variant in any volume with no additional fees. Same licence covers all supported hardware.

Frequently Asked Questions — Sparklet for STM32

Sparklet is a production-ready embedded GUI library for STM32 MCUs including the F4, H7, and U5 families. It integrates natively with the STM32 DMA2D (Chrom-ART) hardware accelerator and LTDC display controller. The library is written in pure C with MISRA C compliant source, making it suitable for industrial, medical, and automotive STM32 applications.

Evaluate Sparklet on Your STM32 Hardware

Download the Sparklet evaluation binary for STM32F4, H7, or U5. The package includes Flint UI Designer, STM32CubeIDE-compatible BSP source, sample projects demonstrating DMA2D acceleration, and step-by-step integration guides.