Cargo Features

[dependencies]
esp32s3-hal = { version = "0.15.1", default-features = false, features = ["async", "debug", "defmt", "embedded-io", "eh1", "log", "rt", "ufmt", "vectored", "embassy", "embassy-executor-interrupt", "embassy-executor-thread", "embassy-integrated-timers", "embassy-time-systick", "embassy-time-timg0", "psram", "psram-2m", "psram-4m", "psram-8m", "opsram-2m", "opsram-4m", "opsram-8m", "opsram-16m", "psram-80mhz", "r0"] }
default = embassy-integrated-timers, rt, vectored

These default features are set whenever esp32s3-hal is added without default-features = false somewhere in the dependency tree.

async

Enables async of esp-hal-common

esp-hal-common:

Support for asynchronous operation, implementing traits from embedded-hal-async and embedded-io-async

debug

Enables debug of esp-hal-common

esp-hal-common:

Enable the impl-register-debug feature for the selected PAC

defmt

Enables defmt-espflash of esp-println and defmt of esp-hal-common

esp-hal-common:

Enable support for defmt, for esp-hal-common and also for all our dependencies

embedded-io

Enables embedded-io of esp-hal-common

eh1

Enables eh1 of esp-hal-common

esp-hal-common:

Trait implementation features:

  • Implement the embedded-hal@1.0.0-rc.x traits (and friends)
  • Implement the embedded-io traits where able
  • Implement the ufmt_write::Write trait where able

log

Enables log of esp-hal-common and esp-println

esp-hal-common:

Enable logging

rt default

Enables rt-xtensa of esp-hal-common

ufmt

Enables ufmt of esp-hal-common

vectored default

Enables vectored of esp-hal-common

embassy

Embassy support

Enables embassy of esp-hal-common

embassy-executor-interrupt

Enables embassy-executor-interrupt of esp-hal-common

embassy-executor-thread

Enables embassy-executor-thread of esp-hal-common

embassy-integrated-timers default

Enables embassy-integrated-timers of esp-hal-common

embassy-time-systick

Enables embassy-time-systick of esp-hal-common and tick-hz-16_000_000 of embassy-time

embassy-time:

16.0MHz Tick Rate

embassy-time-timg0

Enables embassy-time-timg0 of esp-hal-common and tick-hz-1_000_000 of embassy-time

embassy-time:

1.0MHz Tick Rate

psram opsram-16m? opsram-2m? opsram-4m? opsram-8m? psram-2m? psram-4m? psram-8m?

PSRAM support

psram-2m = psram

Enables psram-2m of esp-hal-common

esp-hal-common:

PSRAM support

psram-4m = psram

Enables psram-4m of esp-hal-common

psram-8m = psram

Enables psram-8m of esp-hal-common

opsram-2m = psram

Octal RAM support

Enables opsram-2m of esp-hal-common

opsram-4m = psram

Enables opsram-4m of esp-hal-common

opsram-8m = psram

Enables opsram-8m of esp-hal-common

opsram-16m = psram

Enables opsram-16m of esp-hal-common

psram-80mhz

PSRAM 80Mhz frequency support

Enables psram-80mhz of esp-hal-common

Features from optional dependencies

r0 implicit feature

Enables r0

r0:

Initialization code ('crt0') written in Rust