feat: add display UI with splash screen, dashboard, and RSSI sparkline
Implement full SSD1306 OLED display support: - Splash screen on boot (1.5s) with project name, version, board - Dashboard showing radio state, config, counters, RSSI/SNR - RSSI history sparkline (64-sample ring buffer, 2px-wide bars) - DisplayOn/DisplayOff host commands routed via dedicated channel - Pure render functions against generic DrawTarget (no hardware coupling) - Display on/off control bypasses radio task entirely Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
17624 files changed
+4564928
-38
No files matched your search
Vendored
+104
@@ -0,0 +1,104 @@
|
||||
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
|
||||
#
|
||||
# When uploading crates to the registry Cargo will automatically
|
||||
# "normalize" Cargo.toml files for maximal compatibility
|
||||
# with all versions of Cargo and also rewrite `path` dependencies
|
||||
# to registry (e.g., crates.io) dependencies.
|
||||
#
|
||||
# If you are reading this file be aware that the original Cargo.toml
|
||||
# will likely look very different (and much more reasonable).
|
||||
# See Cargo.toml.orig for the original contents.
|
||||
|
||||
[package]
|
||||
edition = "2021"
|
||||
rust-version = "1.79.0"
|
||||
name = "esp-hal-embassy"
|
||||
version = "0.5.0"
|
||||
build = "build.rs"
|
||||
autolib = false
|
||||
autobins = false
|
||||
autoexamples = false
|
||||
autotests = false
|
||||
autobenches = false
|
||||
description = "Embassy support for esp-hal"
|
||||
readme = "README.md"
|
||||
license = "MIT OR Apache-2.0"
|
||||
repository = "https://github.com/esp-rs/esp-hal"
|
||||
|
||||
[package.metadata.docs.rs]
|
||||
default-target = "riscv32imac-unknown-none-elf"
|
||||
features = ["esp32c6"]
|
||||
|
||||
[lib]
|
||||
name = "esp_hal_embassy"
|
||||
path = "src/lib.rs"
|
||||
|
||||
[dependencies.critical-section]
|
||||
version = "1.2.0"
|
||||
|
||||
[dependencies.defmt]
|
||||
version = "0.3.8"
|
||||
optional = true
|
||||
|
||||
[dependencies.document-features]
|
||||
version = "0.2.10"
|
||||
|
||||
[dependencies.embassy-executor]
|
||||
version = "0.6.3"
|
||||
optional = true
|
||||
|
||||
[dependencies.embassy-time-driver]
|
||||
version = "0.1.0"
|
||||
features = ["tick-hz-1_000_000"]
|
||||
|
||||
[dependencies.esp-hal]
|
||||
version = "0.22.0"
|
||||
|
||||
[dependencies.log]
|
||||
version = "0.4.22"
|
||||
optional = true
|
||||
|
||||
[dependencies.macros]
|
||||
version = "0.15.0"
|
||||
features = ["embassy"]
|
||||
package = "esp-hal-procmacros"
|
||||
|
||||
[dependencies.portable-atomic]
|
||||
version = "1.9.0"
|
||||
|
||||
[dependencies.static_cell]
|
||||
version = "2.1.0"
|
||||
|
||||
[build-dependencies.esp-build]
|
||||
version = "0.1.0"
|
||||
|
||||
[build-dependencies.esp-config]
|
||||
version = "0.2.0"
|
||||
features = ["build"]
|
||||
|
||||
[build-dependencies.esp-metadata]
|
||||
version = "0.4.0"
|
||||
|
||||
[features]
|
||||
default = ["executors"]
|
||||
defmt = [
|
||||
"dep:defmt",
|
||||
"embassy-executor?/defmt",
|
||||
"esp-hal/defmt",
|
||||
]
|
||||
esp32 = ["esp-hal/esp32"]
|
||||
esp32c2 = ["esp-hal/esp32c2"]
|
||||
esp32c3 = ["esp-hal/esp32c3"]
|
||||
esp32c6 = ["esp-hal/esp32c6"]
|
||||
esp32h2 = ["esp-hal/esp32h2"]
|
||||
esp32s2 = ["esp-hal/esp32s2"]
|
||||
esp32s3 = ["esp-hal/esp32s3"]
|
||||
executors = [
|
||||
"dep:embassy-executor",
|
||||
"esp-hal/__esp_hal_embassy",
|
||||
]
|
||||
integrated-timers = ["embassy-executor?/integrated-timers"]
|
||||
log = ["dep:log"]
|
||||
|
||||
[lints.rust]
|
||||
unexpected_cfgs = "allow"
|
||||
Reference in new issue
Block a user