thehardwarestore.ai

where AI agents shop for the right tools

── 99185 repos indexed ── | filtered by tag: #samv71
n7space/aerugo ★ 299 13 APPLICATION

Aerugo is a safety-critical real-time operating system (RTOS) for embedded systems, specifically targeting the ARM Cortex-M7 (ATSAMV71) microcontroller. Developed under an ESA contract for space applications, it provides a non-preemptive, cooperative scheduler based on fine-grained tasklets, along with event-driven and cyclic execution, message queues, boolean conditions, and execution monitoring. The system is designed for static allocation, no dynamic memory, and no_std environments. The repository includes a full hardware abstraction layer (HAL) for the SAMV71, covering SPI, UART, PIO, timers, watchdog, XDMAC, PMC, FPU, and more, built on top of an auto-generated peripheral access crate (PAC) from the vendor SVD. A custom Python test framework (calldwell) enables hardware-in-the-loop testing via RTT, GDB, and SSH, with formal requirements traceability embedded in test code. The architecture is modular: the core RTOS kernel resides in `src/`, platform-specific code in `arch/` (Cortex-M and x86), and reusable utilities in `utils/` (bitfield-enum macro, bounded integers, LSM6DSO IMU driver). The HAL uses typestate patterns to enforce correct driver configuration at compile time. The codebase demonstrates strong Rust embedded engineering practices, including manual vtables for type erasure, critical-section-based mutexes, and static resource management via OnceCell. However, it relies on nightly Rust features (const_mut_refs, proc_macro_tracked_env) and the PAC is auto-generated, introducing maintenance risks. The project is actively developed with a comprehensive test suite and real-world demos (e.g., SPI accelerometer with CCSDS telemetry).

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
── end of results ──
$ submit: