Bare Metal Applications on OSD335x using U-Boot
FreeRun bare metal applications on OSD335x using U-Boot
FreeFree tier
About Bare Metal Applications on OSD335x using U-Boot
An application note providing a step-by-step guide for loading and running bare metal applications on the OSD335x System-in-Package (SiP) using the U-Boot bootloader. Covers installation of TI StarterWare for AM335x, Linaro GCC toolchain setup, and boot configuration via SD card, eMMC, or TFTP. Designed for developers needing real-time performance, full program control, or OS elimination on OSD335x-based boards such as BeagleBone Black Wireless, PocketBeagle, or OSD3358-SM-RED.
Key Features
Step-by-step instructions for installing TI StarterWare for AM335x
Setup of Linaro GCC cross-compiler for bare metal development
Supports loading applications via SD card, eMMC, or TFTP
Utilizes U-Boot bootloader to transfer binary to DDR3 and execute
Targets OSD335x family devices including BeagleBone variants
Pros & Cons
Pros
- Eliminates OS overhead for maximum performance and determinism
- Gives developer full control over program execution and hardware
- Provides detailed, tested instructions for common hardware (BeagleBone, RED board)
Cons
- Requires careful evaluation as Linux offers development benefits (debugging, drivers, libraries)
- Niche application note; not a general-purpose tool or reusable software library
- Only applicable to OSD335x family SoCs and specific boot media
Best For
Time-sensitive and real-time applications requiring low latencyEmbedded projects needing deterministic execution without OS overheadPerformance-critical applications where full CPU control is desired
FAQ
What is U-Boot and what does it do in this guide?
U-Boot is a bootloader that initializes hardware and loads the bare metal application binary from SD card, eMMC, or TFTP into DDR3 memory, then jumps to the entry point.
What development environment is needed?
A host machine running Ubuntu, TI StarterWare for AM335x, and the Linaro GCC compiler are required. The board must run a Debian BeagleBone image to leverage U-Boot.
Can I use this guide with any OSD335x board?
Yes, the guide supports OSD335x family based boards such as BeagleBone Black Wireless, PocketBeagle, and OSD3358-SM-RED, provided they run a compatible Debian image.