hubris logo

hubris

Free

A lightweight, memory-protected, message-passing kernel for deeply embedded systems.

FreeFree tier
Type
Open Source
Company
Oxide Computer Company

About hubris

Hubris is a lightweight, memory-protected, message-passing kernel designed for deeply-embedded systems with strong reliability requirements. Developed by Oxide Computer Company, it provides a microcontroller operating environment that emphasizes safety and modularity. The kernel is written in Rust and supports a task-based architecture with drivers, interface definitions via Idol, and a build system for application firmware. Documentation is available in Asciidoc and hosted via GitHub Pages. The project is open source under an MIT-style license.

Key Features

Memory-protected kernel architecture
Message-passing inter-task communication
Designed for deeply-embedded systems with reliability requirements
Modular architecture with tasks, drivers, and reusable libraries
Idol interface definition language for specifying task interfaces
Build system for composing application firmware (app/)
Support for multiple microcontroller families (chips/)
Developer documentation in Asciidoc (doc/)
Test framework for hardware-in-the-loop testing (test/)
Rust-based toolchain with cross-compilation support

Pros & Cons

Pros
  • Open source with permissive license (MIT)
  • Memory protection enhances reliability and security
  • Well-documented developer guides and API references
  • Modular design eases customization and maintenance
  • Active development by Oxide Computer Company with corporate backing
  • Support for multiple hardware platforms (chips/)
Cons
  • Relatively new project with limited community size
  • Primarily developed for Oxide's own hardware (e.g., Gimlet), may require porting effort
  • Requires Rust toolchain and familiarity with embedded Rust
  • Ecosystem of third-party drivers and tasks still maturing

Best For

Firmware for safety-critical embedded systemsIoT devices requiring reliable operationMicrocontroller-based control systemsEmbedded systems with strict memory protection needsResearch and development of reliable embedded OS designs

FAQ

What is Hubris?
Hubris is a microcontroller operating environment designed for deeply-embedded systems with reliability requirements. It provides a lightweight, memory-protected, message-passing kernel.
What license does Hubris use?
Hubris is open source and uses a permissive license (MIT). The license file is included in the repository.
How can I contribute to Hubris?
To submit changes, push them to a branch in a fork and submit a pull request to merge into master. See CONTRIBUTING.md for details.
Where can I find developer documentation for Hubris?
Developer documentation is available in Asciidoc format in the doc/ directory and is rendered via GitHub Pages at https://oxidecomputer.github.io/hubris.
What platforms does Hubris support?
Linux and Windows are currently supported as first-tier development platforms. macOS and Illumos are used informally but not tested in CI.