Embedded GUI Platform Integration & Porting

Deploy Sparklet on your custom hardware, new MCU, or proprietary display controller. Embien's engineers handle every layer — BSP bring-up, display driver development, touch controller integration, and GPU acceleration hooks — and deliver a fully validated, documented HAL.

What Is Embedded GUI Platform Porting?

Embedded GUI platform porting is the process of adapting a GUI framework to run on a specific hardware target — a new MCU, a custom PCB with a non-standard display, a proprietary OS or RTOS combination, or a hardware accelerator that requires bespoke driver integration. The goal is to isolate all platform-specific code into a clean Hardware Abstraction Layer (HAL) so that application-level UI code remains unchanged across hardware generations.

Sparklet's architecture is built around a well-defined HAL boundary. The HAL covers display driver (framebuffer flush, DMA configuration, hardware layer management), touch controller driver (raw input translation, gesture detection), system timer and tick integration, and optional GPU or 2D accelerator hooks. Everything above the HAL — widgets, animations, state machines, application screens — is hardware-independent and requires no modification when the HAL is ported to a new target.

Embien provides this service as part of its embedded GUI development services portfolio. The typical output is a working Sparklet build on the customer's target hardware, a documented and commented HAL source, and a sample project demonstrating rendering and touch input.

Platform Porting Delivery Process

Five structured steps from hardware assessment to validated handover — each producing a concrete, reviewable artefact.
Hardware Assessment

Step 1 — Hardware Assessment

Embien's engineer reviews schematic, display controller datasheet, touch IC datasheet, memory map, and SDK/BSP package to scope the porting work and identify non-standard interfaces. A fixed-price quote is issued at this stage.

HAL Skeleton

Step 2 — HAL Skeleton Creation

A documented HAL source template is created for the target platform with all required function stubs and clear comments describing what each implementation must do. Shared with the customer at the start of implementation for transparency.

Driver Integration

Step 3 — Display & Touch Driver Integration

Display driver bring-up proceeds through solid-colour fill test, Sparklet test pattern, and full rendering pipeline validation. Touch driver integration follows — multi-touch, gesture detection, and coordinate calibration verified against the physical display.

GPU Acceleration

Step 4 — GPU Acceleration & Tuning

If the platform has a 2D or 3D hardware accelerator (STM32 DMA2D, Renesas D/AVE2D, NXP PXP, Mali), GDI-level hooks are implemented and benchmarked. Frame rate, CPU utilisation, and memory bandwidth are profiled with a representative UI workload.

Validation & Handover

Step 5 — Validation & Handover

Functional validation against the agreed performance targets. Delivery of: documented HAL source, sample project (multi-screen Flint build on hardware), build system configuration (CMake/Makefile), and a performance benchmark report. A one-hour handover session covers HAL structure and platform caveats.

Three Porting Scenarios

Scope and timeline vary by how far the target hardware deviates from Sparklet's existing supported platforms.

New MCU — Full HAL Implementation

A platform not yet in Sparklet's supported list — a new Arm Cortex-M or Cortex-A device, a RISC-V MCU, or a proprietary SoC. Requires full HAL implementation:

  • Display driver: framebuffer flush, DMA, LCD timing, hardware layers
  • Touch controller driver: I2C/SPI raw read, coordinate normalisation, multi-touch
  • System timer and RTOS tick integration
  • Build system configuration for customer toolchain (GCC ARM, IAR, Keil MDK)
  • Optional: GPU/2D accelerator hook implementation at GDI level

Typical engagement: 1–2 weeks. Requires hardware and SDK access from the customer.

What Embien Delivers — Platform Porting Package

DeliverableDescriptionIncluded
Documented HAL SourceClean, commented C source for display driver, touch driver, timer, and GPU hooks. Licensed to the customer.All scenarios
Working Sample ProjectMulti-screen Flint project compiled and running on target hardware, demonstrating rendering, touch, and animation.All scenarios
Build System ConfigurationCMake or Makefile for the target toolchain (GCC ARM, IAR, Keil MDK, or customer-specified). CI-ready where required.All scenarios
Performance Benchmark ReportFrame rate at representative UI workload, CPU utilisation, memory footprint, GPU throughput comparison.All scenarios
Handover SessionOne-hour video call covering HAL architecture, platform caveats, and development workflow recommendations.All scenarios
GPU Acceleration LayerGDI-level hooks for hardware 2D/3D accelerators with before/after benchmark data.GPU scenarios only

What Embien Delivers

Every platform porting engagement produces a complete, documented, and validated software package.
Frame Rate

Target Frame Rate Achieved

Every porting engagement includes frame rate measurement and tuning against the agreed target — typically 30 or 60 fps. Embien does not hand over a port that misses the performance specification.

Clean HAL

Clean HAL Boundary

All platform-specific code is confined to the HAL. Application-level Sparklet code requires zero changes when future hardware generations require a new port.

Source Ownership

Full Source Code Ownership

HAL source is delivered with no binary blobs or proprietary library dependencies. The customer's team can modify, extend, and maintain the HAL independently after handover.

Multi-Platform

Multi-Platform Reuse

Sparklet ports Embien develops for customers are added to Embien's internal platform knowledge base, accelerating future porting work for related hardware variants at reduced cost.

Frequently Asked Questions

Sparklet's HAL architecture isolates all hardware-specific code into a well-defined interface. Porting involves implementing the HAL functions for the display driver (framebuffer flush, DMA, hardware layers), touch controller driver, and system timer. Optionally, 2D/3D GPU hooks are implemented at the GDI level for hardware-accelerated rendering. Embien implements the full HAL, validates on hardware, and delivers documented source.

Need Sparklet on Your Hardware?

Share your target MCU, display controller, and memory configuration. Embien's team will scope the porting work and get Sparklet running on your hardware.