Expand description
oveRTOS Rust SDK — safe wrappers for the oveRTOS embedded RTOS framework.
Provides RAII types for threads, mutexes, semaphores, queues, timers, etc.
and the app! macro that generates all FFI boilerplate so application code
can be written in pure safe Rust.
Re-exports§
pub use error::Error;pub use error::Result;pub use error::WAIT_FOREVER;pub use eventgroup::EventGroup;pub use eventgroup::WaitFlags;pub use eventgroup::EG_CLEAR_ON_EXIT;Deprecated pub use eventgroup::EG_WAIT_ALL;Deprecated pub use priority::Priority;pub use queue::Queue;pub use sync::CondVar;pub use sync::Event;pub use sync::Mutex;pub use sync::MutexGuard;pub use sync::RecursiveMutex;pub use sync::RecursiveMutexGuard;pub use sync::Semaphore;pub use thread::Thread;pub use thread::ThreadState;pub use thread::ThreadStats;pub use thread::MemStats;pub use thread::ThreadInfo;pub use static_cell::StaticCell;pub use static_cell::StaticMut;pub use timer::Timer;pub use fmt::FmtBuf;pub use stream::Stream;pub use watchdog::Watchdog;pub use workqueue::Work;pub use workqueue::Workqueue;
Modules§
- audio
- Audio graph engine for oveRTOS.
- board
- Board initialization and identification for oveRTOS.
- bsp
- Backward-compatible BSP module — delegates to board, gpio, led modules.
- console
- Low-level console I/O for oveRTOS.
- error
- oveRTOS error types and the
Resultalias. - eventgroup
- Event group (bitfield synchronization) for oveRTOS.
- ffi
- Raw FFI bindings re-exported for advanced use cases.
- fmt
- Stack-allocated formatting buffer for
no_stdenvironments. - fs
- Filesystem abstraction for oveRTOS.
- gpio
- GPIO control for oveRTOS.
- i2c
- I2C bus master driver.
- infer
- ML inference primitives for oveRTOS.
- led
- LED control for oveRTOS boards.
- lvgl
- Safe LVGL v9 wrappers for the oveRTOS Rust SDK.
- net
- Networking primitives for oveRTOS.
- net_
http - HTTP/1.1 client with RAII response management.
- net_
httpd - Embedded HTTP server with REST-style routing.
- net_
mqtt - MQTT 3.1.1 client with safe callback.
- net_
sntp - SNTP time synchronization client.
- net_tls
- TLS/SSL session wrapper (mbedTLS).
- nvs
- Non-Volatile Storage (NVS) subsystem for oveRTOS.
- pm
- Power management framework for oveRTOS.
- priority
- Thread priority levels for oveRTOS.
- queue
- Type-safe FIFO queue for oveRTOS.
- shell
- Interactive shell subsystem for oveRTOS.
- spi
- SPI bus master driver.
- static_
cell - Init-once container for
staticdeclarations. - stream
- Byte-stream buffer for oveRTOS.
- sync
- Synchronization primitives for oveRTOS.
- thread
- RTOS thread management for oveRTOS.
- time
- Time and delay utilities for oveRTOS.
- timer
- Software timer for oveRTOS.
- uart
- UART serial bus driver.
- watchdog
- Hardware watchdog timer for oveRTOS.
- workqueue
- Work queue and deferred work items for oveRTOS.
Macros§
- condvar
- Create a
CondVarthat works in both heap and zero-heap modes. - event
- Create an
Eventthat works in both heap and zero-heap modes. - eventgroup
- Create an
EventGroupthat works in both heap and zero-heap modes. - log_err
- Log an error message with
[E]prefix and automatic newline. - log_fmt
- Format arguments into a stack buffer and log via
log(). - log_inf
- Log an informational message with
[I]prefix and automatic newline. - log_wrn
- Log a warning message with
[W]prefix and automatic newline. - main
- Generate the
ove_mainentry point from a Rust closure or function. - model_
data - Declare a safe accessor for TFLite model data generated by
convert.py. - mutex
- Create a
Mutexthat works in both heap and zero-heap modes. - queue
- Create a
Queuethat works in both heap and zero-heap modes. - recursive_
mutex - Create a
RecursiveMutexthat works in both heap and zero-heap modes. - semaphore
- Create a
Semaphorethat works in both heap and zero-heap modes. - shared
- Declare a
staticwrapped inStaticCellfor cross-thread shared state. - shared_
mut - Declare a
staticwrapped inStaticMutfor single-owner mutable state. - stream
- Create a
Streamthat works in both heap and zero-heap modes. - thread
- Create a
Threadthat works in both heap and zero-heap modes. - timer
- Create a
Timerthat works in both heap and zero-heap modes. - watchdog
- Create a
Watchdogthat works in both heap and zero-heap modes. - work
- Create a
Workitem that works in both heap and zero-heap modes. - workqueue
- Create a
Workqueuethat works in both heap and zero-heap modes.