OpenBLT logo

OpenBLT

Free

an open source and portable bootloader for microcontrollers.

FreeFree tier
Type
Open Source
Company
Feaser

About OpenBLT

OpenBLT is an open source bootloader designed for microcontrollers, enabling firmware updates on embedded products. It is portable to any 8-bit, 16-bit, or 32-bit microcontroller and currently supports STM32, Infineon XMC, NXP S12, and TI TM4C/LM3S targets. Communication interfaces include RS232, CAN, CAN FD, USB, TCP/IP, and Modbus RTU. The bootloader also supports firmware updates directly from an SD card. OpenBLT ships with the MicroBoot PC tool for GUI-based firmware updates, BootCommander for command-line operations, and LibOpenBLT, a shared library for developing custom update tools. All host tools are cross-platform (Windows and Linux). The download package includes preconfigured demo programs for popular low-cost development boards. OpenBLT is dual-licensed under the GNU GPL (free) and a commercial license for closed-source projects. Development is sponsored by Feaser, which also offers integration services and add-on modules.

Key Features

Portable to any 8-bit, 16-bit, or 32-bit microcontroller
Support for STM32, Infineon XMC, NXP S12, TI TM4C and LM3S
Communication interfaces: RS232, CAN, CAN FD, USB, TCP/IP, Modbus RTU
Firmware updates directly from SD card
Includes MicroBoot PC tool for GUI-based firmware updates
Includes BootCommander command-line firmware update tool
LibOpenBLT shared library for building custom host tools
Cross-platform host tools (Windows and GNU/Linux)
Preconfigured demo programs for popular development boards
Dual licensing: GNU GPL (free) and commercial license

Pros & Cons

Pros
  • Open source with fully customizable bootloader code
  • Supports a wide range of popular microcontrollers
  • Multiple communication interfaces for flexible firmware updates
  • Includes both GUI and command-line tools, plus a library for custom tools
  • Cross-platform host tools (Windows and Linux)
  • Dual licensing allows use in closed-source commercial products
  • Active maintenance with frequent updates via SVN and GitHub mirror
Cons
  • Requires embedded systems knowledge to integrate and customize
  • Not a plug-and-play solution; user must port to their specific microcontroller
  • Commercial license required if using in closed-source products without GPL compliance
  • Documentation and support primarily community-driven unless a commercial contract is purchased

Best For

In-field firmware updates for microcontroller-based productsOver-the-air (OTA) updates using TCP/IP communicationAutomated firmware updates in industrial environments via CAN or Modbus RTURapid prototyping and bootloader testing with low-cost development boardsCustom firmware update solutions using LibOpenBLT host library

FAQ

What microcontrollers are supported by OpenBLT?
OpenBLT currently supports ST STM32, Infineon XMC, NXP S12, and TI TM4C and LM3S microcontrollers. It can be ported to any 8-bit, 16-bit, or 32-bit microcontroller.
What communication interfaces does OpenBLT support for firmware updates?
By default, OpenBLT supports RS232, CAN, CAN FD, USB, TCP/IP, and Modbus RTU. Firmware updates from an SD card are also supported.
Is OpenBLT free to use?
OpenBLT is offered under a dual licensing model. The default license is the GNU GPL, which is free. A commercial license can be purchased for integration into closed-source projects.
What tools are included for performing firmware updates?
OpenBLT includes MicroBoot (a GUI tool), BootCommander (a command-line tool), and LibOpenBLT (a shared library for building custom host tools). All are cross-platform (Windows and GNU/Linux).
How can I get started with OpenBLT?
The download package includes preconfigured demo programs for popular low-cost development boards. Additional documentation is available via the FAQ, Wiki, and YouTube tutorials. The source code is hosted on SourceForge with a Git mirror on GitHub.