[package] name = "lorawan-device" version = "0.12.2" authors = ["Louis Thiery ", "Ulf Lilleengen "] edition = "2021" rust-version = "1.75" categories = [ "embedded", "hardware-support", "no-std", ] license = "MIT" readme = "README.md" description = "A Rust LoRaWAN device stack implementation" repository = "https://github.com/lora-rs/lora-rs" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [dependencies] lora-modulation = { path = "../lora-modulation", version = ">=0.1.2", default-features = false } lorawan = { path = "../lorawan-encoding", version = "0.9", default-features = false } heapless = "0.7" generic-array = "0.14" defmt = { version = "0.3", optional = true } fastrand = { version = "2", default-features = false } futures = { version = "0.3", default-features = false } rand_core = { version = "0.6", default-features = false } serde = { version = "1", default-features = false, features = ["derive"], optional = true } seq-macro = "0.3.5" document-features = "0.2.8" embassy-time = { version = "0.3.0", optional = true } [dev-dependencies] tokio = { version = "1", features = ["rt", "macros", "time", "sync"]} rand = { version = "0", features = ["getrandom"] } lazy_static = "1" [features] default = ["all-regions"] all-regions = ["region-as923-1", "region-as923-2", "region-as923-3", "region-as923-4", "region-au915", "region-eu433", "region-eu868", "region-in865", "region-us915"] ## Use pure Rust implementations of [`AES`](https://docs.rs/aes/latest/aes/) and [`CMAC`](https://docs.rs/cmac/latest/cmac/) for the LoRaWAN crypto layer. default-crypto = ["lorawan/default-crypto"] ## Use [`defmt`](https://docs.rs/defmt/latest/defmt/) for logging. defmt = ["dep:defmt", "lorawan/defmt", "lora-modulation/defmt"] ## Provide an `async_device::Timer` impl based on `embassy-time`. embassy-time = ["dep:embassy-time"] ## Enable [`serde`](https://docs.rs/serde/latest/serde/) serialization/deserialization for data structures. serde = ["dep:serde", "lorawan/serde"] ## Enable support for AS923-1 region (by default all regions are enabled). region-as923-1 = [] ## Enable support for AS923-2 region (by default all regions are enabled). region-as923-2 = [] ## Enable support for AS923-3 region (by default all regions are enabled). region-as923-3 = [] ## Enable support for AS923-4 region (by default all regions are enabled). region-as923-4 = [] ## Enable support for AU915 region (by default all regions are enabled). region-au915 = [] ## Enable support for EU433 region (by default all regions are enabled). region-eu433 = [] ## Enable support for EU868 region (by default all regions are enabled). region-eu868 = [] ## Enable support for IN865 region (by default all regions are enabled). region-in865 = [] ## Enable support for US915 region (by default all regions are enabled). region-us915 = []