Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
esp-hal
The esp-hal package aims to provide a safe, idiomatic Hardware Abstraction Layer (HAL) for the entire family of ESP32 devices from Espressif.
This package implements both blocking and, when able, asynchronous drivers for the various peripherals. At this time the blocking APIs are used by default, with all asynchronous functionality gated behind the async feature. See the package documentation for more information on its features.
Most traits defined by the embedded-hal family of packages are implemented as applicable.
Documentation
Usage
Before using esp-hal, ensure that you have configured your development environment correctly, and the required tooling has been installed.
When starting a new project using esp-hal, we strongly recommend you generate a project skeleton using cargo-generate and esp-template. This will take much of the guesswork out of the process and give you a starting point to build an application from.
Much of the functionality available is feature-gated, so be sure to refer to the documentation to read about all available Cargo features.
Supporting Packages
A number of additional packages are available which add additional functionality beyond the HAL.
Within this repository, the esp-lp-hal package provides support for the (ultra-)low-power RISC-V coprocessors found aboard the ESP32-C6, ESP32-S2, and ESP32-S3.
There is also the esp-wifi package, which provides support for Bluetooth and Wi-Fi.
For additional libraries, you can check the list of repositories in the esp-rs organization.
Examples
Examples demonstrating the use of various peripherals and features of the HAL are available in the examples package.
License
Licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
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.