AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
esp-hal은 ESP32 마이크로컨트롤러용 no_std 하드웨어 추상화 레이어이다
no_std Hardware Abstraction Layers for ESP32 microcontrollers
개발 도구Rust · Linker ScriptGitHub @esp-rs직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Bare-metal (no_std) hardware abstraction layer for Espressif devices. Currently supports the following devices:
Additionally provides support for programming the low-power RISC-V cores found on the ESP32-C6, ESP32-S2, and ESP32-S3 via the esp-lp-hal package.
For additional information regarding any of the crates in this repository, please refer to the relevant crate's README.md file. If you have any questions, comments, or concerns, please open an issue, or join us on Matrix.
If you are currently using (or considering using) esp-hal in a production environment and have any feedback or require support, please feel free to contact us at [email protected].
[!NOTE]
This repository includes crates that are at various stages of maturity and stability. While many functionalities have already been implemented and are usable for most tasks, certain advanced or less common features may still be under development. Each crate may offer different levels of functionality and guarantees.
For information relating to the development of Rust applications on ESP devices, please first read The Rust on ESP Book.
For information about the HAL and how to use it in your own projects, please refer to the documentation.
When browsing the examples, we recommend viewing the tag for the esp-hal release you are using to ensure compatibility, e.g. esp-hal-v1.0.0, as the main branch is used for development and APIs may have changed in the meantime.
All active development will occur on main.
We will only backport fixes to the latest minor release in a major version. For example, this means we will apply patches (bug fixes) to 1.1.x until 1.2.0 is released, at which point all patches are only backported to the 1.2.x series of releases.
If you are a user of unstable APIs, we will never push breaking changes in a patch release. However, unstable changes will make their way into minor releases. This means that as an unstable user updating from 1.1.x to 1.2.x may introduce breaking changes. If you depend on unstable, we recommend defining your esp-hal dependency as follows:
esp-hal = { version = "~1.1" }
Using the ~ operator will prevent cargo auto updating to minor versions, allowing you to use cargo update without the possibility of breaking your project.
For how releases are prepared, staged as release candidates, and published, see RELEASING.md.
We follow the same policy as the official Rust Embedded working group, please review the policy before contributing with AI tools.
We have a number of living documents to aid contributing to the project, please give these a read before modifying code:
All packages within this repository are licensed under either of:
at your option.
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.