esp-hal/esp32-hal
Scott Mabin 94a07da47b
Fix Async UART (#871)
* Fix Async UART

The uart handler was `writing` to the enable register instead of
`modify`, which meant any wake would see the cleared enabled bit and
think the event had occurred. This wasn't seen before the split of uart
because it was only possible to listen to one thing at a time.

This PR also removes the ReadBufferFull error in favour of returning the
max bytes in the buffer.

The serial examples has been updated to actually have some cross task
communication.

* changelog

* fix dev deps
2023-10-25 10:25:25 -07:00
..
2023-10-25 10:25:25 -07:00
2023-08-23 07:42:56 -07:00

esp32-hal

Crates.io docs.rs Crates.io Matrix

no_std HAL for the ESP32 from Espressif.

Implements a number of the traits defined in embedded-hal.

This device uses the Xtensa ISA, which is not officially supported by the Rust compiler. In order to develop for this device, you must use the Rust compiler fork with Xtensa support, found at esp-rs/rust.

Please refer to the documentation for more information.

Documentation

Resources

Getting Started

Installing the Rust Compiler

We provide a tool, espup, for easily installing the Rust toolchain with Xtensa support:

cargo install espup
espup install

Following installation of the Xtensa toolchain, if you are running a Unix-like operating system (macOS, Linux) then you must additionally export the necessary environment variables:

. $HOME/export-esp.sh

See the Installation chapter of The Rust on ESP Book for more details.

License

Licensed under either of:

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.