#spi #embedded-hal #driver #c #wrapper-type


Rust embedded driver helper package

12 unstable releases (3 breaking)

✓ Uses Rust 2018 edition

0.5.8 Jul 11, 2019
0.5.7 Jul 7, 2019
0.5.6 May 31, 2019
0.4.0 May 14, 2019
0.1.0 Apr 25, 2019

#154 in Embedded development

Download history 14/week @ 2019-04-25 14/week @ 2019-05-02 16/week @ 2019-05-09 110/week @ 2019-05-16 25/week @ 2019-05-23 34/week @ 2019-05-30 69/week @ 2019-06-06 3/week @ 2019-06-13 56/week @ 2019-06-20 48/week @ 2019-06-27 134/week @ 2019-07-04

174 downloads per month
Used in 2 crates

MIT license

852 lines


A helper / testing package for rust-embedded SPI traits and implementations, to try out some more interesting approaches prior to proposing additions to embedded-hal. This provides a Transactional SPI interface, as well as a Wrapper type to provide this for an SPI and OutputPin implementation, a Mock helper for testing drivers based on this, and a set of compatibility shims for c FFI use with dependency injected drivers.


GitHub tag Build Status Crates.io Docs.rs

Open Issues


Embedded SPI helper package This defines a higher level Transactional SPI interface, as well as an SPI Transaction enumeration that more closely map to the common uses of SPI peripherals, as well as some other common driver helpers.

An embedded_spi::wrapper::Wrapper type is provided to wrap existing SPI implementations in this embedded_spi::Transactional interface, as well as a set of helpers for C compatibility enabled with the compat feature, and a basic mocking adaptor enabled with the mock feature.


~25K SLoC