Bootloader Overview
The bootloader is the very first program an embedded device will run when it powers up. It will do basic hardware initialization and move on to load the operating system. It can also be used to customize boot behaviour, flash new versions of the firmware/operating system, and more.
A bootloader based on a modern release of u-boot is now available for the Omega2 family of modules.
Better by Miles
It provides many benefits over the much older legacy bootloader:
- Better and faster firmware flashing and recovery options
- Support available for more modern features: enhanced command line utilities, support for scripting, networking
- End-users can customize U-Boot behaviour without rebuilding
- Based on an active, maintainable, and extendable code base
How is it Different from the older legacy Bootloader?
- The U-Boot bootloader is more developer-focused -> relies on command line tools
- Does not feature web-based firmware recovery like the legacy bootloader
- Does not support USB devices by default - U-Boot is compressed and loaded by the U-Boot SPL (Secondary Program Loader) in order to fit in the 192kb u-boot partition on the Omega2 and be compatible with the existing Omega2 firmware
Guides
These guides cover the Omega2’s new U-Boot bootloader. From here on we simply call it U-Boot.
See the guides in this section:
- Upgrading an Omega2 module running the previous bootloader to the new U-Boot bootloader
- How to activate the U-Boot command line
- How to flash firmware using U-Boot and ethernet
- How to flash firmware using U-Boot and serial
Details about the Omega2 U-Boot Support
- Current supported u-boot version: v2025.04
- Compiled binaries can be found at: http://repo.onioniot.com/omega2/bootloader/v2025.04/
- Compiled u-boot fits into existing 192kB u-boot partition on the Omega2 devices
- First boots into u-boot SPL (Secondary Program Loader) that loads a compressed version of the full U-Boot