2 stable releases
1.1.0 | Feb 11, 2022 |
---|---|
1.0.0 | Jul 8, 2021 |
#1555 in Embedded development
32 downloads per month
Used in loadstone
195KB
4.5K
SLoC
Blue HAL
Embedded Hardware Abstraction Layer developed at Bluefruit Software. Implementations are mostly only coupled to ARM Cortex-M.
blue_hal
contains most drivers used in the Loadstone secure bootloader project.
Connection to the Rust embedded ecosystem
blue_hal
started primarily as an in-house learning project, so there's some
amount of duplication between the drivers contained in this repository and
some of the preexisting embedded-hal implementations, specially around the
early stm32 drivers.
The drivers in blue_hal
don't directly implement the embedded-hal interfaces. Instead, blue_hal
offers its own set of abstractions which made sense during the development of
Loadstone
. The plan is to support embedded-hal
directly in the future.
Structure
src/hal
contains all abstract interfaces.src/hal/doubles
is a test only module that contains test doubles (fakes, mocks, etc) for most drivers.src/drivers
contains concrete driver implementations. These are nested by specificity, with the MCU family or chip vendor always referenced in the module structure.src/utilities
contains general purpose code applicable to multiple drivers.
Dependencies
~4–22MB
~580K SLoC