Welcome to MicrOS — simple, open, embedded.
This page will help you set up your environment and run MicrOS on its first supported target: LM EVB.
🔹 Prerequisites
Before building MicrOS, install the following tools:
- CMake (≥ 3.20)
- Ninja build system
- ARM GCC toolchain (
arm-none-eabi-gcc) - OpenOCD (for flashing LM EVB)
- QEMU (optional) for emulation
On Ubuntu/Debian:
sudo apt update
sudo apt install cmake ninja-build gcc-arm-none-eabi openocd qemu-system-arm
🔹 Cloning the Repository
git clone https://github.com/microsproject/micros.git
cd micros
🔹 Building for LM EVB
Create a build directory and compile:
rm -rf build/
cmake -S . -B build/ -DMICROS_BOARD=lm/lm3s6965evb -DMICROS_SAMPLE=hello_world
cmake --build build/
This will produce an ELF file hello_world and a binary hello_world.bin
🔹 Running on LM EVB (real hardware) – COMMING SOON
Flash the firmware using OpenOCD:
ninja flash
If successful, you’ll see output on UART:
Hello, World!
This is MicrOS running on SOME hardware platform.
🔹 Running on QEMU (optional)
You can also emulate MicrOS without hardware:
qemu-system-arm -M lm3s6965evb -nographic -kernel build/samples/hello_world/hello_world
Expected output:
Hello, World!
This is MicrOS running on SOME hardware platform.
🔹 Next Steps
Now that you have MicrOS running:
- Explore the source in
kernel/,arch/, anddrivers/. - Try modifying the main loop in
samples/blinky/. - Check out the Blog Posts for deep dives.
🔹 Contribute
MicrOS is open source and welcomes contributors!
- ⭐ Star the repository on GitHub.
- Open issues if you hit problems.
- Submit PRs — even small fixes help.
MicrOS — simple, open, embedded.