Tutorials
Step-by-step guides that teach robotics concepts by building real, runnable applications with HORUS. Each tutorial builds a complete working application. Follow them in order — each one builds on concepts from the previous.
Rust Learning Path
| # | Tutorial | What You'll Build | What You'll Learn |
|---|---|---|---|
| 1 | Quick Start | Temperature sensor + monitor | Node, Topic, Scheduler basics |
| 2 | Sensor Pipeline | 3-node sensor → filter → display | Multi-node architecture, message flow |
| 3 | IMU Sensor Node | IMU data publisher at 100Hz | Custom data types, .hz(), sensor patterns |
| 4 | Motor Controller | Velocity → position controller | Subscribing, state management, safe shutdown |
| 5 | Full Robot Integration | 4-node robot system | Multi-rate scheduling, data fusion, monitoring |
| 6 | Custom Message Types | Battery monitor with custom messages | message! macro, manual derives, GenericMessage |
| 7 | Hardware Drivers | Servo bus + custom conveyor driver | horus.toml [hardware], NodeParams, register_driver! |
| 8 | Real-Time Control | Hard-RT motor + lidar + planner | .rate(), .budget(), .on_miss(), .failure_policy(), .compute() |
| 9 | Debug with Record & Replay | Record a bug, replay, fix with mixed replay | .with_recording(), replay_from(), inject, diff |
| 10 | Choosing Configuration | Progressive config levels | Rate, budget, deadline, safety |
| 11 | Common Mistakes | — | 13 pitfalls and how to avoid them |
Python Tutorials
The same progression, using the Python API:
| # | Tutorial | What You'll Build |
|---|---|---|
| 1 | Quick Start (Python) | Temperature sensor + monitor |
| 2 | IMU Sensor Node (Python) | IMU data publisher at 100Hz |
| 3 | Motor Controller (Python) | Velocity → position controller with safe shutdown |
| 4 | Full Robot System (Python) | 4-node robot with multi-rate scheduling |
| 5 | Custom Messages (Python) | Typed messages, dicts, dataclasses |
| 6 | Hardware & Real-Time (Python) | Drivers, budgets, deadlines, production config |
Prerequisites
- HORUS installed (Installation Guide)
- Basic Rust or Python knowledge (Choosing a Language)
See Also
- Getting Started — Install HORUS first
- Recipes — Production-ready copy-paste patterns
- Core Concepts — Conceptual foundations