Expand description
The a121-rs
library offers Rust bindings for interfacing with the Acconeer A121 radar sensor,
designed for embedded systems. Unlike traditional networking or sensor libraries, a121-rs
focuses
on providing low-level access to the sensor’s capabilities while abstracting the complexities
into a more Rust-centric API. This library is tailored for real-time applications where direct
control over sensor data acquisition and processing is crucial.
a121-rs
is structured to offer both high-level abstractions for easy integration into applications
and low-level access for fine-tuned control.
§Sensor Modes and Configuration
The core functionality of a121-rs
is exposed through its sensor mode configurations, allowing
users to switch between distance measurement and presence detection(soon). The configuration API,
found in the module config
, enables detailed customization of the
radar’s parameters, such as sweep frequency, power levels, and processing options.
§Data Acquisition and Processing
At the heart of a121-rs
is the data acquisition and processing layer. This layer, accessible
through the radar
module, provides the mechanisms to initiate sensor
sweeps, retrieve raw data, and apply post-processing for noise reduction and signal
enhancement.
§Hardware Abstraction Layer (HAL)
a121-rs
employs an embedded-hal compatible layer, found in the hal
module,
to abstract over the specific hardware interfaces used to communicate with the A121 sensor.
This design allows a121-rs
to be hardware agnostic, supporting a wide range of embedded platforms
by leveraging the embedded-hal ecosystem.
There is still work to be done to make the HAL more flexible and configurable, but the current
implementation is a good starting point for most use cases.
§Examples and Use Cases
The library comes with a set of examples, located in the examples
directory, demonstrating
common use cases and configurations for the A121 sensor. These examples cover basic setups for
different hardware platforms and provide a starting point for integrating the A121 sensor into
your projects.
Modules§
- config
- Configuration for the radar sensor
- hal
- Hardware Abstraction Layer equivalent to the C API
- num
- Number definitions for the radar sensor
- processing
- Processing modules for the radar sensor
- radar
- Main radar module, interfacing with the radar sensor