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>
360 lines
6.1 KiB
TOML
360 lines
6.1 KiB
TOML
# 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"
|
|
name = "embassy-nrf"
|
|
version = "0.2.0"
|
|
build = false
|
|
autobins = false
|
|
autoexamples = false
|
|
autotests = false
|
|
autobenches = false
|
|
description = "Embassy Hardware Abstraction Layer (HAL) for nRF series microcontrollers"
|
|
documentation = "https://docs.embassy.dev/embassy-nrf"
|
|
readme = "README.md"
|
|
keywords = [
|
|
"embedded",
|
|
"async",
|
|
"nordic",
|
|
"nrf",
|
|
"embedded-hal",
|
|
]
|
|
categories = [
|
|
"embedded",
|
|
"hardware-support",
|
|
"no-std",
|
|
"asynchronous",
|
|
]
|
|
license = "MIT OR Apache-2.0"
|
|
repository = "https://github.com/embassy-rs/embassy"
|
|
|
|
[package.metadata.docs.rs]
|
|
features = [
|
|
"nrf52840",
|
|
"time",
|
|
"defmt",
|
|
"unstable-pac",
|
|
"gpiote",
|
|
"time-driver-rtc1",
|
|
]
|
|
rustdoc-args = [
|
|
"--cfg",
|
|
"docsrs",
|
|
]
|
|
|
|
[package.metadata.embassy_docs]
|
|
features = [
|
|
"time",
|
|
"defmt",
|
|
"unstable-pac",
|
|
"gpiote",
|
|
"time-driver-rtc1",
|
|
]
|
|
src_base = "https://github.com/embassy-rs/embassy/blob/embassy-nrf-v$VERSION/embassy-nrf/src/"
|
|
src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-nrf/src/"
|
|
|
|
[[package.metadata.embassy_docs.flavors]]
|
|
regex_feature = "nrf51"
|
|
target = "thumbv6m-none-eabi"
|
|
|
|
[[package.metadata.embassy_docs.flavors]]
|
|
regex_feature = "nrf52.*"
|
|
target = "thumbv7em-none-eabihf"
|
|
|
|
[[package.metadata.embassy_docs.flavors]]
|
|
regex_feature = "nrf53.*"
|
|
target = "thumbv8m.main-none-eabihf"
|
|
|
|
[[package.metadata.embassy_docs.flavors]]
|
|
regex_feature = "nrf91.*"
|
|
target = "thumbv8m.main-none-eabihf"
|
|
|
|
[lib]
|
|
name = "embassy_nrf"
|
|
path = "src/lib.rs"
|
|
|
|
[dependencies.bitflags]
|
|
version = "2.4.2"
|
|
|
|
[dependencies.cfg-if]
|
|
version = "1.0.0"
|
|
|
|
[dependencies.cortex-m]
|
|
version = "0.7.6"
|
|
|
|
[dependencies.cortex-m-rt]
|
|
version = ">=0.6.15,<0.8"
|
|
|
|
[dependencies.critical-section]
|
|
version = "1.1"
|
|
|
|
[dependencies.defmt]
|
|
version = "0.3"
|
|
optional = true
|
|
|
|
[dependencies.document-features]
|
|
version = "0.2.7"
|
|
|
|
[dependencies.embassy-embedded-hal]
|
|
version = "0.2.0"
|
|
|
|
[dependencies.embassy-hal-internal]
|
|
version = "0.2.0"
|
|
features = [
|
|
"cortex-m",
|
|
"prio-bits-3",
|
|
]
|
|
|
|
[dependencies.embassy-sync]
|
|
version = "0.6.0"
|
|
|
|
[dependencies.embassy-time]
|
|
version = "0.3.2"
|
|
optional = true
|
|
|
|
[dependencies.embassy-time-driver]
|
|
version = "0.1"
|
|
optional = true
|
|
|
|
[dependencies.embassy-usb-driver]
|
|
version = "0.1.0"
|
|
|
|
[dependencies.embedded-hal-02]
|
|
version = "0.2.6"
|
|
features = ["unproven"]
|
|
package = "embedded-hal"
|
|
|
|
[dependencies.embedded-hal-1]
|
|
version = "1.0"
|
|
package = "embedded-hal"
|
|
|
|
[dependencies.embedded-hal-async]
|
|
version = "1.0"
|
|
|
|
[dependencies.embedded-io]
|
|
version = "0.6.0"
|
|
|
|
[dependencies.embedded-io-async]
|
|
version = "0.6.1"
|
|
|
|
[dependencies.embedded-storage]
|
|
version = "0.3.1"
|
|
|
|
[dependencies.embedded-storage-async]
|
|
version = "0.4.1"
|
|
|
|
[dependencies.fixed]
|
|
version = "1.10.0"
|
|
|
|
[dependencies.log]
|
|
version = "0.4.14"
|
|
optional = true
|
|
|
|
[dependencies.nrf51-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf52805-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf52810-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf52811-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf52820-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf52832-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf52833-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf52840-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf5340-app-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf5340-net-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf9120-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.nrf9160-pac]
|
|
version = "0.12.0"
|
|
optional = true
|
|
|
|
[dependencies.rand_core]
|
|
version = "0.6.3"
|
|
|
|
[features]
|
|
_dppi = []
|
|
_gpio-p1 = []
|
|
_nrf51 = ["_ppi"]
|
|
_nrf52 = ["_ppi"]
|
|
_nrf52832_anomaly_109 = []
|
|
_nrf5340 = [
|
|
"_gpio-p1",
|
|
"_dppi",
|
|
]
|
|
_nrf5340-app = [
|
|
"_nrf5340",
|
|
"nrf5340-app-pac",
|
|
]
|
|
_nrf5340-net = [
|
|
"_nrf5340",
|
|
"nrf5340-net-pac",
|
|
]
|
|
_nrf91 = []
|
|
_nrf9120 = [
|
|
"nrf9120-pac",
|
|
"_dppi",
|
|
]
|
|
_nrf9160 = [
|
|
"nrf9160-pac",
|
|
"_dppi",
|
|
]
|
|
_ns = []
|
|
_ppi = []
|
|
_s = []
|
|
_time-driver = [
|
|
"dep:embassy-time-driver",
|
|
"embassy-time-driver?/tick-hz-32_768",
|
|
]
|
|
default = ["rt"]
|
|
defmt = [
|
|
"dep:defmt",
|
|
"embassy-hal-internal/defmt",
|
|
"embassy-sync/defmt",
|
|
"embassy-usb-driver/defmt",
|
|
"embassy-embedded-hal/defmt",
|
|
]
|
|
gpiote = []
|
|
nfc-pins-as-gpio = []
|
|
nrf51 = [
|
|
"nrf51-pac",
|
|
"_nrf51",
|
|
]
|
|
nrf52805 = [
|
|
"nrf52805-pac",
|
|
"_nrf52",
|
|
]
|
|
nrf52810 = [
|
|
"nrf52810-pac",
|
|
"_nrf52",
|
|
]
|
|
nrf52811 = [
|
|
"nrf52811-pac",
|
|
"_nrf52",
|
|
]
|
|
nrf52820 = [
|
|
"nrf52820-pac",
|
|
"_nrf52",
|
|
]
|
|
nrf52832 = [
|
|
"nrf52832-pac",
|
|
"_nrf52",
|
|
"_nrf52832_anomaly_109",
|
|
]
|
|
nrf52833 = [
|
|
"nrf52833-pac",
|
|
"_nrf52",
|
|
"_gpio-p1",
|
|
]
|
|
nrf52840 = [
|
|
"nrf52840-pac",
|
|
"_nrf52",
|
|
"_gpio-p1",
|
|
]
|
|
nrf5340-app-ns = [
|
|
"_nrf5340-app",
|
|
"_ns",
|
|
]
|
|
nrf5340-app-s = [
|
|
"_nrf5340-app",
|
|
"_s",
|
|
]
|
|
nrf5340-net = ["_nrf5340-net"]
|
|
nrf9120-ns = [
|
|
"_nrf9120",
|
|
"_ns",
|
|
"_nrf91",
|
|
]
|
|
nrf9120-s = [
|
|
"_nrf9120",
|
|
"_s",
|
|
"_nrf91",
|
|
]
|
|
nrf9151-ns = [
|
|
"_nrf9120",
|
|
"_ns",
|
|
"_nrf91",
|
|
]
|
|
nrf9151-s = [
|
|
"_nrf9120",
|
|
"_s",
|
|
"_nrf91",
|
|
]
|
|
nrf9160-ns = [
|
|
"_nrf9160",
|
|
"_ns",
|
|
"_nrf91",
|
|
]
|
|
nrf9160-s = [
|
|
"_nrf9160",
|
|
"_s",
|
|
"_nrf91",
|
|
]
|
|
nrf9161-ns = [
|
|
"_nrf9120",
|
|
"_ns",
|
|
"_nrf91",
|
|
]
|
|
nrf9161-s = [
|
|
"_nrf9120",
|
|
"_s",
|
|
"_nrf91",
|
|
]
|
|
qspi-multiwrite-flash = []
|
|
reset-pin-as-gpio = []
|
|
rt = [
|
|
"nrf51-pac?/rt",
|
|
"nrf52805-pac?/rt",
|
|
"nrf52810-pac?/rt",
|
|
"nrf52811-pac?/rt",
|
|
"nrf52820-pac?/rt",
|
|
"nrf52832-pac?/rt",
|
|
"nrf52833-pac?/rt",
|
|
"nrf52840-pac?/rt",
|
|
"nrf5340-app-pac?/rt",
|
|
"nrf5340-net-pac?/rt",
|
|
"nrf9160-pac?/rt",
|
|
"nrf9120-pac?/rt",
|
|
]
|
|
time = ["dep:embassy-time"]
|
|
time-driver-rtc1 = ["_time-driver"]
|
|
unstable-pac = []
|