omnitiles/
lib.rs

1// SPDX-License-Identifier: MIT
2// © 2025–2026 Christopher Liu
3
4//! # OmniTiles Firmware
5//!
6//! This crate contains all firmware components for the OmniTiles robotics platform, written in
7//! Rust, targeting an STM32F777 MCU.
8//!
9//! ## Crate Structure
10//!
11//! | Module | Purpose |
12//! | ------ | -------- |
13//! | [`hw`] | MCU-level wrappers around USART, SPI, CAN, timers, etc. |
14//! | [`drivers`] | Device-level drivers (e.g., DRV8873, GDZ468) |
15//! | [`control`]   | Control algorithms (PID, high-level control) |
16//! | [`protocol`]  | Command message IDs and frame parser |
17//!
18//! ## Getting Started
19//!
20//! Build docs:
21//!
22//! ```bash
23//! cargo doc --no-deps --open
24//! ```
25//!
26//! Flash the board:
27//!
28//! ```bash
29//! cargo run --release
30//! ```
31//!
32//! ## License
33//!
34//! Licensed under the **MIT License**.
35//! See the `LICENSE` file in the repository root for full terms.
36//!
37//! © 2025–2026 Christopher Liu
38
39#![no_std]
40
41pub mod control;
42pub mod drivers;
43pub mod hw;
44pub mod protocol;