|
HardFOC Vortex V1 HAL
Unified HAL API for the HardFOC Vortex motor-control platform (ESP32-C6, TMC9660)
|
One error catalog and one aggregated health snapshot for the whole Vortex HAL. More...
#include <array>#include <cstddef>#include <cstdint>Go to the source code of this file.
Classes | |
| struct | ManagerDiagnostics |
| One manager's state in the aggregated snapshot. More... | |
| struct | VortexBoardDiagnostics |
Aggregated board health (Vortex::CollectDiagnostics()). Index order of managers = init order. More... | |
Enumerations | |
| enum class | ManagerError : uint8_t { None = 0 , NotInitialized , DependencyNotReady , BusUnavailable , DeviceNotFound , InitFailed , CommunicationFailed , InvalidParameter , HardwareFault , Unknown } |
| The shared error catalog (manager lane). More... | |
Functions | |
| constexpr const char * | ManagerErrorToString (ManagerError e) noexcept |
| Short text for a ManagerError. | |
Variables | |
| constexpr size_t | kVortexManagerCount = 9 |
| Number of managers the facade owns (NVS, comms, GPIO, LEDs, motors, ADC, IMU, encoders, temperature). | |
One error catalog and one aggregated health snapshot for the whole Vortex HAL.
Each manager keeps its own error enum (CommError, MotorError, hf_gpio_err_t, ...). The facade maps them onto ManagerError, the shared catalog, so a caller can judge the board without knowing nine enums; the raw code travels alongside for the detail. Vortex::CollectDiagnostics() fills VortexBoardDiagnostics from counters the managers already hold: it makes no bus transfer and does not allocate, so it is safe from a periodic health task.
Ownership: value types. Thread safety: filled under the facade's lifecycle lock. MCU-free.
|
strong |
The shared error catalog (manager lane).
|
constexprnoexcept |
Short text for a ManagerError.
|
inlineconstexpr |
Number of managers the facade owns (NVS, comms, GPIO, LEDs, motors, ADC, IMU, encoders, temperature).