This Course starts with discussion on design goals and constraints set for MuBoot boot-loader (primarily for CONSOLE), then dives into each of the goals after introducing what is a console.
More details for the learners:
Before you register, please pay attention to what is covered. First and foremost, this course is NOT a complete boot-loader, instead the basic (fundamental) part of boot-loader which is the console readiness. This course is limited to the design, discussion and implementation of console on MuBoot loader. Since there are lot of well developed boot-loader like UBOOT, etc why would someone be interested in this MuBoot, its new and being developed with Embedded Rust & targeted specifically for RISC-V targets.
Its in very early development. What you can learn in this course?
MuBoot a real bare-metal boot-loader for a RISC-V board in pure Embedded Rust, mastering the low-level concepts that professional firmware engineers use every day.
And yes—by the end, you would see MuBoot run on real hardware, with:
- A working boot prompt
- A live UART console (MuBoot>)
- Command processing
- LED boot-status signaling
- Clock initialization
- Memory-mapped register control
This isn’t just theory but designed and built to run on real hardware.
Key takeaways:
- bare-metal Rust
- RISC-V bring-up
- memory-mapped I/O
- UART driver development
- bootloader architecture
- hardware abstraction patterns
This course is built continuously on previous two courses: Embedded Rust on RISC-V Part-1 & Introduction to RISC-V and RISC-V assembly programming.






