SEGGER emLoad

The embedded bootstrap loader for firmware updates

Getting updates into a system in the field always requires additional consideration for such things as the mechanics of the process and the memory requirements. emLoad is designed to reduce both the effort and the memory required for firmware updates.

emLoad is SEGGER's embedded bootstrap loader for embedded systems. It facilitates the process of updating firmware. This is a crucial part of the lifecycle management of a product. emLoad offers the flexibility to add new features in the field, fix bugs, and address security vulnerabilities after a system has been deployed. It comes with numerous options for the end system user's convenience.


Key features

emLoad offers a variety of benefits, including fast and reliable program transfer, easy integration into existing systems, a user-friendly interface and highly flexible configuration.

In-place updates

emLoad enables fast transfer of firmware images without the need to allocate persistent storage space on the device itself. This is particularly advantageous for devices with limited storage capacity as it is the case for embedded systems. emLoad installs the new firmware without the need to store the complete image in the device memory.

Low memory footprint

emLoad ensures that there is sufficient space for both the bootloader and the updated firmware. This is particularly beneficial for microcontrollers with limited memory, as it optimizes resource usage, improves performance, reduces costs, and enhances the overall efficiency and scalability of the embedded device.

Security mechanisms

emLoad can be enhanced with security features that are essential for ensuring the overall integrity and confidentiality of the entire embedded system. These include encryption and decryption capabilities to validate the authenticity of firmware updates and to determine whether a given firmware update was provided by the manufacturer and has not been tampered with.


Use cases

emLoad is an essential component in the reliable operation and longevity of embedded devices. It enables the efficient and secure initialization, updating, and customization of any embedded system.

Automatic firmware updates for customer devices

emLoad can be used to automatically update the firmware of consumer devices, such as headphones, that are connected to an Internet-enabled PC via USB. Thanks to the implemented cyclic redundancy checks (CRC), emLoad is able to verify the integrity of the firmware. If changes are detected, emLoad initiates the installation of the update while the device handles the update process internally. This process is designed to be user-friendly and minimally disruptive.

Secure firmware updates in industrial environments

emLoad can bootload devices that have limited or no access to the Internet. This is particularly useful in scenarios where closed networks and/or security concerns dictate a more controlled update process, such as industrial systems with long operating lives. emLoad can also be configured to include security and authentication modules in order to facilitate the secure and controlled deployment of firmware updates while ensuring the reliability of the industrial equipment.

Over-the-air firmware updates for IoT devices

emLoad can be integrated into comprehensive ecosystems that support firmware updates over the air and are conform with the Cyber Resilience Act (CRA) adopted by the European Commission. OTA updates for digital products such as IoT devices enable the remote deployment of new firmware without requiring physical access to the device (e.g. via FTP server). Especially in hard-to-reach locations, OTA updates offer flexibility in adapting devices to evolving standards, protocols, or industry regulations during ongoing operation.


How emLoad works

emLoad enables efficient and smooth firmware updates for embedded systems. Written in ANSI-C, emLoad is fully portable and runs on virtually any target. It establishes a connection between the host system and the target device to enable firmware transfers. It also supports a variety of communication protocols, such as UART or USB, and offers secure data transfers. Users have the flexibility to customize configurations, and adjust the transfer speed and other parameters to suit their needs.

Technical specifications

emLoad with its interface components comes with all Windows tools necessary to prepare the software/firmware update as well as the bootstrap loader for the target application itself.

Product overview
Core module
emLoad-BASEThe emLoad-BASE software package includes a reference implementation on a standard SEGGER hardware. Implementations on custom hardware or eval boards can be done by the customer or as a paid service by SEGGER.
Interface modules
UARTThe UART interface component includes the source code package with a serial update interface (RS-232, RS-485) and a 6-month update/support period.
SD cardThe emFile-SDCard interface component includes the source code package with an SD card update interface (MMC/SD card) and a 6-month update/support period.
USB connection to PCThe emUSB-Device HID interface component includes the source code package with a USB HID update interface (USB to PC) and a 6-month update/support period.
USB stickThe emUSB-Host MSD interface component includes the source code package with a USBH MSD update interface (USB stick) and a 6-month update/support period.
NFCThe emLoad-NTAG interface component includes the source code package and a 6-month update/support period.
Add-ons
EncryptionThe emCrypt add-on for emLoad allows the encryption of the generated firmware update using AES256.
RSA signatureThe emSecure-RSA add-on for emLoad allows the authentication of the generated firmware update using RSA algorithms.
ECDSA signatureThe emSecure-ECDSA add-on for emLoad allows the authentication of the generated firmware update using ECDSA algorithms.

Tecnologix offre supporto gestito direttamente dal Team di sviluppo.
Non esitare a metterti in contatto con i nostri esperti.
Basta chiedere qui

Technical Support

Tecnologix offers support which is directly handled by development team. Do not hesitate to get in touch with our experts.

Just ask here