MicroEJ Binary Loader: Dynamic App Deployment on Any MCU/MPU

Deploy Applications Dynamically on Any Embedded Devices

MicroEJ Binary Loader enables manufacturers to to install, update, and stream application binaries over-the-air with a deployment strategy tailored to their device constraints and infrastructure.

 

Three Deployment Modes: A Progressive Approach

The three modes reflect increasing levels of optimization, trading device-side footprint against deployment infrastructure complexity. Manufacturers choose the mode that best matches their hardware constraints and operational setup.

1. Static Linkage – Application Bundled in Firmware (Default Mode)

 
INCLUDED BY MEJ32 IP

The application is compiled and linked together with the VEE container and the OS into a single firmware image. There is no dynamic loading: the app ships as part of the firmware binary. This approach requires no infrastructure changes and carries no additional runtime overhead. Any app update, however, requires a full firmware rebuild and reflash.


2. Memory Optimized Dynamic Mode – Minimal Footprint, Streaming Execution

 
Advantages

  • Minimal binary footprint
  • No temporary RAM memory on device
  • Streaming installation to target memory
  • Execution in place
  • Ideal for small MCUs and low-bandwidth networks


INCLUDED IN TRUSTAPP IP

This mode produces the smallest possible dynamically loaded binary. All linking information is resolved on the server side before delivery: the binary is generated by the deployment infrastructure and tailored precisely to the target device’s kernel, then streamed directly to the device. On receipt, the application executes in place — no local adaptation step, no temporary memory required.

Additionally, the same binary can be loaded in any compatible kernel for maintenance mode, relieving device makers from deploying a new binary each time.

3. Portable Dynamic Mode – Portable Binary

 
Advantages

  • No server-side build pipeline required
  • Self-contained binary
  • Works offline at install
  • Portable across heterogeneous fleets


OPTIONAL COMMERCIAL LIBRARY

In this mode, the application is fully portable across any VEE instance with compatible APIs, regardless of the underlying kernel version or hardware.

The resulting binary is larger but self-contained: it carries all the information needed for installation without requiring network connectivity at install time. A lightweight adaptation step runs locally on the device, requiring temporary RAM memory for finalizing the app linking to the VEE kernel present on that specific device.

Choosing the Right Mode

The right deployment mode depends on your device’s memory budget, network topology, and the infrastructure complexity your team can support.

When device cost is the primary constraint, the memory-optimized dynamic mode is the natural choice. It keeps firmware updates (maintenance, bug fixes, CVEs) independent from app updates, reducing operational overhead on ultra-constrained devices.

As soon as memory allows, the portable dynamic mode (portable app binary) is worth considering: the simpler infrastructure offsets the additional footprint.

Part of MicroEJ Enterprise Libraries

Binary Loader is available as a commercially licensed Enterprise Library, designed to integrate with MICROEJ VEE and complement the TrustAPP secure multi-sandboxing IP.

Pairs with TrustAPP

Combine Binary Loader with TrustAPP to manage the full application lifecycle (load, start, stop, uninstall) with security isolation and resource control per application.
▷ More info about TrustApp IP.

Ready to Modernize Your Software Development Process?

MICROEJ VEE is the only platform that brings smartphone-like development to resource-constrained embedded devices, with a rich set of software IPs to accelerate your product delivery.
Licensing is flexible: software libraries can be bundled at a discounted rate to fit your project’s budget.
Explore Licensing Options