- Flasher
- Press releases 2025

SEGGER introduces emApps for embedded systems
SEGGER emApps is a software package for creating and executing apps, which are small programs that can be dynamically loaded and executed in a sandbox environment. Host systems can range from small microcontroller-based embedded systems to full desktop applications.
emApps consists of a PC development environment with a compiler for creating apps, as well as source code for host integration. Also included is a PC-based executor for running, testing, tracing, and even profiling apps on a desktop. Apps can be used to dynamically extend a host’s capabilities or to enable customization by manufacturers, OEMs, and end customers.
emApps’s key features are small code size, high performance, and security. Apps run on a virtual CPU specifically designed by SEGGER for this purpose, and they are executed by a call to the emApps executor, which implements the instruction set. Apps operate in their own memory space, fully sandboxed and isolated from the host program and other apps. Any illegal operations (such as access outside of app memory space) are detected, returning control to the caller. Apps have high code density (starting at less than 100 bytes in size) and deliver very high performance.
Integrating emApps into existing firmware is simple and easy. Code size requirements on the host side are minimal at around 2.5 KB, making emApps suitable for even compact microcontrollers. While the executor is written in C, the software also comes with an assembly optimized version for Arm cores. “Apps are a great enhancement for almost any embedded device,” says Dirk Akemann, Head of Technical Marketing, SEGGER. “We keep finding new use cases. I am convinced that we will see apps in many different types of embedded devices in the future. I encourage developers to give emApps a go. A trial version that allows execution on a PC is available for download.”
With emApps, new functionality can be added to firmware at any time, with no need to alter a validated core system. This enables new features or enhancements to be deployed in the field while maintaining system stability and security. App capabilities are defined by an API table in firmware, giving a firmware developer full control over the exact functionalities available to them. It is even possible to grant different rights (API tables) to different apps running in a system. Multiple apps can be executed simultaneously in a system with multiple CPU cores or an RTOS-based system, and they can have multiple entry points and serve as libraries, similar to DLLs.
For more information, contact info@segger.com, or visit the emApps page.