

Manufacturers are increasingly expected to deliver “smartphone-like” visuals – but many devices rely on microcontrollers with limited compute, memory, and battery.
MicroEJ brings video to MCU-based products through a compact, software-only video decoder for MCUs, optimized for ARM Cortex-M devices and designed to run without a hardware video accelerator.
On the Actions ATS3085S/E (ARM Cortex-M33 @ 192 MHz), the solution reaches up to ~25 FPS on a 466×466 display (16 BPP) with a typical ~2 MB / 4-second clip.
With MicroEJ’s Video Decoder for MCU, manufacturers can:
Upgrade UI experience with smooth motion (loops, backgrounds, transitions, animated widgets)
Avoid a hardware video decoder, keeping the platform simpler and more cost-effective
Stay on an MCU architecture instead of moving to a higher-end MPU just for visuals
Control power consumption, key for wearables and battery-powered devices
Use very small memory footprints, enabling motion even on constrained hardware
Result: more engaging UIs, controlled BOM, and smooth playback on cost-effective hardware.
In this demo, see how MicroEJ’s VEE Wear enables responsive, high-performance wearable user interfaces on the ATS3085S/E, combining:
Wearable UI/UX samples (fitness tracking, timers, weather, training metrics)
Smooth motion powered by MicroEJ’s high performance Video Decoder for MCU
Watch face experiences via Facer integration (catalog browsing + sync)
MicroUI Video Decoder is a compact, software-only implementation optimized for Cortex-M devices.
No hardware decoder required
Frame interleaving support
Low footprint
ROM: 5.7 KB
RAM: ~11 KB (implementation footprint; demo measurements may vary depending on heap usage)
SoC / CPU: Actions ATS3085S/E – ARM Cortex-M33 @ 192 MHz
Display resolution: 466 × 466
Stored in external NOR flash memory
Loop playback with constant refresh rate
Decoded in 16 BPP (RGB565)
| Illustration | ![]() |
![]() |
![]() |
|---|---|---|---|
| File Size | 5.3MB | 2.7MB | 2.3MB |
| Resolution | 468×468 | 468×468 | 468×468 |
| Duration | 10s | 5s | 4s |
| FPS on Device (increased by 10% and capped) | 27.8fps | 27fps | 27fps |
| Average duration to decode 1 frame | 10.6ms | 16ms | 9.5ms |
| Average CPU Load | 62% | 75% | 54% |
Want to bring richer motion and smoother UI effects to your MCU-based product?
Contact MicroEJ to learn how our Video Decoder for MCU can fit your platform and UI roadmap.