Introduction
ROHI (Robonomics Open Hardware Interface) is an open ecosystem for IoT firmware built around a common control protocol. Firmware that implements the protocol can be operated by shared clients, whether it was written by the ROHI developers, the community or you.
One App. Any Firmware.
The SDK in this repository is the Rust toolkit behind it: libraries, a reference firmware for
Altruist Urban and the rohi desktop client, for devices powered by the
Robonomics network.
Where to start
| I want to… | Start here |
|---|---|
| understand what ROHI is and what works today | Why ROHI?, Current capabilities |
| operate a ROHI device | Use a Device: Desktop application |
| know whether my hardware is supported | Supported devices |
| write firmware | Build Firmware: Core concepts, Create & customize |
| trust or share a firmware | Verify & Share |
| look something up | the crate rustdoc |
How the documentation is organised
| Place | Responsibility |
|---|---|
| This book | vision, current capabilities, user journeys, tutorials, navigation |
Crate rustdoc (cargo doc --no-deps) | APIs, contracts, ownership, resource constraints, integration examples |
| Source and protocol definitions | authoritative schemas, implementations, tests, platform behaviour |
| Support matrix | hardware compatibility, firmware support, verification levels and evidence |
The book explains how to use and extend ROHI; the crates explain how ROHI works internally. See Documentation style and policy.
The book assumes basic Rust knowledge for the firmware sections. If you are unsure about any language aspects, please refer to the Rust book.
Contributing
ROHI SDK is free and open source. You can find the source code on GitHub, where issues and feature requests can be posted on the issue tracker. The project relies on community contributions to fix bugs and add features - if you’d like to help, please consider opening a pull request.
License
The ROHI SDK source and documentation are released under the Apache v2.0.