From d3e915575f59fd59078f45abba1b433b3e2d7cc8 Mon Sep 17 00:00:00 2001 From: Dreaded_X Date: Sat, 11 Jan 2025 06:00:16 +0100 Subject: [PATCH] Moved types into seperate library --- Cargo.lock | 10 ++++++++++ Cargo.toml | 12 +++++++++--- air_filter_types/Cargo.toml | 9 +++++++++ {src => air_filter_types/src}/lib.rs | 0 src/main.rs | 2 +- 5 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 air_filter_types/Cargo.toml rename {src => air_filter_types/src}/lib.rs (100%) diff --git a/Cargo.lock b/Cargo.lock index 2f474d5..1858c10 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -15,6 +15,7 @@ dependencies = [ name = "air_filter" version = "0.4.2" dependencies = [ + "air_filter_types", "bme280", "cfg-if", "const_format", @@ -49,6 +50,15 @@ dependencies = [ "updater", ] +[[package]] +name = "air_filter_types" +version = "0.1.0" +dependencies = [ + "bme280", + "defmt", + "serde", +] + [[package]] name = "arrayvec" version = "0.7.6" diff --git a/Cargo.toml b/Cargo.toml index 4b76341..f26bbc8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,10 +3,16 @@ name = "air_filter" version = "0.4.2" edition = "2021" +[workspace.dependencies] +defmt = "0.3" +bme280 = { version = "0.5.0", features = ["async", "defmt"] } +serde = { version = "1.0", default-features = false, features = ["derive"] } + [dependencies] +air_filter_types = { path = "./air_filter_types/" } cortex-m = { version = "0.7", features = ["inline-asm"] } cortex-m-rt = "0.7" -defmt = "0.3" +defmt = { workspace = true } defmt-rtt = "0.4" embassy-embedded-hal = { version = "0.3.0", features = ["defmt"] } embassy-executor = { version = "0.7", features = [ @@ -58,7 +64,7 @@ rust-mqtt = { version = "0.3", features = [ ], default-features = false } const_format = "0.2" git-version = "0.3" -serde = { version = "1.0", default-features = false, features = ["derive"] } +serde = { workspace = true } heapless = { version = "0.8", features = ["defmt-03", "serde"] } nourl = { version = "0.1", features = ["defmt"] } # Embassy hardcodes a max of 6 dns servers, if there are more it crashes. This is a workaround @@ -69,7 +75,7 @@ smoltcp = { version = "0.12", default-features = false, features = [ ] } updater = { git = "https://git.huizinga.dev/Dreaded_X/iot_tools", tag = "v0.2.0" } portable-atomic = { version = "1.6", features = ["critical-section"] } -bme280 = { version = "0.5.0", features = ["async", "defmt"] } +bme280 = { workspace = true } picoserve = { version = "0.13.3", features = ["defmt", "embassy"] } embedded-storage = "0.3" diff --git a/air_filter_types/Cargo.toml b/air_filter_types/Cargo.toml new file mode 100644 index 0000000..e0f4e79 --- /dev/null +++ b/air_filter_types/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "air_filter_types" +version = "0.1.0" +edition = "2024" + +[dependencies] +bme280 = { workspace = true } +defmt = { workspace = true } +serde = { workspace = true } diff --git a/src/lib.rs b/air_filter_types/src/lib.rs similarity index 100% rename from src/lib.rs rename to air_filter_types/src/lib.rs diff --git a/src/main.rs b/src/main.rs index fea7337..95fc0c5 100644 --- a/src/main.rs +++ b/src/main.rs @@ -42,7 +42,7 @@ use updater::firmware_router; use {defmt_rtt as _, panic_probe as _}; -use air_filter::{FanSpeed, FanState, SensorData, SetFanSpeed}; +use air_filter_types::{FanSpeed, FanState, SensorData, SetFanSpeed}; bind_interrupts!(struct Irqs { PIO0_IRQ_0 => pio::InterruptHandler;