#hal #io #spi #i2c #delay

dev embedded-hal-mock

A collection of mocked devices that implement the embedded-hal traits

10 releases (6 breaking)

0.7.2 Jun 2, 2020
0.7.1 Jan 3, 2020
0.7.0 May 22, 2019
0.5.0 Jan 7, 2019
0.1.0 Mar 31, 2018

#82 in Embedded development

Download history 479/week @ 2021-04-02 448/week @ 2021-04-09 616/week @ 2021-04-16 428/week @ 2021-04-23 435/week @ 2021-04-30 465/week @ 2021-05-07 437/week @ 2021-05-14 587/week @ 2021-05-21 471/week @ 2021-05-28 465/week @ 2021-06-04 424/week @ 2021-06-11 576/week @ 2021-06-18 497/week @ 2021-06-25 364/week @ 2021-07-02 333/week @ 2021-07-09 261/week @ 2021-07-16

1,971 downloads per month
Used in 92 crates (91 directly)

MIT/Apache

60KB
1K SLoC

embedded-hal-mock

CircleCI Minimum Rust Version Crates.io Version

This is a collection of types that implement the embedded-hal traits.

The implementations never access real hardware. Instead, the hardware is mocked or no-op implementations are used.

The goal of the crate is to be able to test drivers in CI without having access to hardware.

This crate requires Rust 1.31+!

Docs

Status

  • I²C
  • SPI
  • No-op delay
  • Actual delay
  • Serial
  • RNG
  • I/O pins
  • Timers
  • ...

Pull requests for more mock implementations are welcome! :)

no_std

Currently this crate is not no_std. If you think this is important, let me know.

Usage

See docs.

Development Version of embedded-hal

If you would like to use the current development version of embedded-hal (or any other version), so long as they are API compatible you can use a patch field in your Cargo.toml file to override the dependency version.

[patch.crates-io]
embedded-hal = { git = "https://github.com/rust-embedded/embedded-hal" }

License

Licensed under either of

Contributing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~82KB