[package] name = "esp32s2-hal" version = "0.13.0" authors = [ "Jesse Braham ", "Björn Quentin ", ] edition = "2021" rust-version = "1.67.0" description = "HAL for ESP32-S2 microcontrollers" repository = "https://github.com/esp-rs/esp-hal" license = "MIT OR Apache-2.0" keywords = [ "embedded", "embedded-hal", "esp", "esp32s2", "no-std", ] categories = [ "embedded", "hardware-support", "no-std", ] [dependencies] esp-hal-common = { version = "0.13.0", features = ["esp32s2"], path = "../esp-hal-common" } embassy-time = { version = "0.2.0", optional = true } [dev-dependencies] aes = "0.8.3" critical-section = "1.1.2" crypto-bigint = { version = "0.5.3", default-features = false } embassy-executor = { version = "0.4.0", features = ["nightly"] } embassy-sync = "0.5.0" embedded-graphics = "0.8.1" embedded-hal-1 = { version = "=1.0.0-rc.2", package = "embedded-hal" } embedded-hal-async = "=1.0.0-rc.2" embedded-io-async = "0.6.0" embedded-hal-bus = "0.1.0-rc.2" esp-alloc = "0.3.0" esp-backtrace = { version = "0.9.0", features = ["esp32s2", "panic-handler", "print-uart", "exception-handler"] } esp-hal-smartled = { version = "0.6.0", features = ["esp32s2"], path = "../esp-hal-smartled" } esp-println = { version = "0.7.0", features = ["esp32s2"] } heapless = { version = "0.8", features = ["portable-atomic"] } # xtensa targets are not auto detected to need atomic emulation in the futures-* crates. # see https://github.com/rust-lang/futures-rs/pull/2805 as to how to remove this dep for good futures-util = { version = "0.3.17", default-features = false, features = ["portable-atomic"] } hmac = { version = "0.12.1", default-features = false } lis3dh-async = "0.8.0" sha2 = { version = "0.10.8", default-features = false } smart-leds = "0.3.0" ssd1306 = "0.8.4" static_cell = { version = "2.0.0", features = ["nightly"] } usb-device = "0.3.1" usbd-serial = "0.2.0" [features] default = ["rt", "vectored", "embassy-integrated-timers"] async = ["esp-hal-common/async"] debug = ["esp-hal-common/debug"] defmt = ["esp-hal-common/defmt", "esp-println/defmt"] eh1 = ["esp-hal-common/eh1"] log = ["esp-hal-common/log", "esp-println/log"] rt = [] ufmt = ["esp-hal-common/ufmt"] vectored = ["esp-hal-common/vectored"] # Embassy support embassy = ["esp-hal-common/embassy"] embassy-time-systick = ["esp-hal-common/embassy-time-systick", "embassy-time/tick-hz-80_000_000"] embassy-time-timg0 = ["esp-hal-common/embassy-time-timg0", "embassy-time/tick-hz-1_000_000"] embassy-executor-interrupt = ["esp-hal-common/embassy-executor-interrupt"] embassy-executor-thread = ["esp-hal-common/embassy-executor-thread"] # prefer integrated timers, but allow using the generic queue if needed embassy-integrated-timers = ["esp-hal-common/embassy-integrated-timers"] embassy-generic-queue-8 = ["esp-hal-common/embassy-generic-queue-8"] embassy-generic-queue-16 = ["esp-hal-common/embassy-generic-queue-16"] embassy-generic-queue-32 = ["esp-hal-common/embassy-generic-queue-32"] embassy-generic-queue-64 = ["esp-hal-common/embassy-generic-queue-64"] embassy-generic-queue-128 = ["esp-hal-common/embassy-generic-queue-128"] # PSRAM support psram = [] psram-2m = ["esp-hal-common/psram-2m", "psram"] psram-4m = ["esp-hal-common/psram-4m", "psram"] psram-8m = ["esp-hal-common/psram-8m", "psram"] [profile.release] debug = true [[example]] name = "spi_eh1_loopback" required-features = ["eh1"] [[example]] name = "spi_eh1_device_loopback" required-features = ["eh1"] [[example]] name = "embassy_hello_world" required-features = ["embassy", "embassy-executor-thread"] [[example]] name = "embassy_multiprio" required-features = ["embassy", "embassy-executor-interrupt"] [[example]] name = "embassy_wait" required-features = ["embassy", "embassy-executor-thread", "async"] [[example]] name = "embassy_spi" required-features = ["embassy", "embassy-executor-thread", "async"] [[example]] name = "psram" required-features = ["psram-2m"] [[example]] name = "embassy_serial" required-features = ["embassy", "embassy-executor-thread", "async"] [[example]] name = "embassy_i2c" required-features = ["embassy", "embassy-executor-thread", "async"] [[example]] name = "embassy_rmt_tx" required-features = ["embassy", "async"] [[example]] name = "embassy_rmt_rx" required-features = ["embassy", "async"] [[example]] name = "embassy_i2s_sound" required-features = ["embassy", "async"] [[example]] name = "embassy_i2s_read" required-features = ["embassy", "async"]