Summary
This chapter presented NavHAL, a hardware abstraction layer designed to provide high-level usability while preserving the performance characteristics of direct register access. Through a series of micro-benchmarks, NavHAL was shown to achieve zero-cost abstraction, deterministic execution, and low overhead, making it suitable for real-time embedded applications where both efficiency and predictability are critical. The results demonstrate that NavHAL eliminates the traditional trade-off between abstraction and performance observed in existing frameworks such as STM32 HAL and Arduino.
At present, NavHAL supports Cortex-M4-based microcontrollers, specifically the STM -32F401RE platform, which served as the evaluation target in this work. Ongoing development is focused on rapidly extending support across a broader range of STM32 microcontrollers as part of the Vayu project, with the goal of enabling scalable deployment across diverse embedded systems.
In addition, future work includes extending support to AVR-based platforms to improve accessibility for beginners and educational use cases. By combining performance, portability, and ease of use, NavHAL aims to serve as a unified abstraction layer for both advanced real-time systems and entry-level embedded development.