diff --git a/.cargo/config.toml b/.cargo/config.toml index 3d889d9..5cb24eb 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -12,6 +12,9 @@ build-std = ["std", "panic_abort"] [env] # Note: these variables are not used when using pio builder (`cargo build --features pio`) -ESP_IDF_VERSION = "v5.1.1" +# ESP_IDF_VERSION = "v5.1.1" +ESP_IDF_VERSION = "v5.2.2" ESP_IDF_PATH_ISSUES = "warn" # or "ignore" +# Workaround for https://github.com/esp-rs/esp-idf-template/issues/174 +CRATE_CC_NO_DEFAULTS = "1" diff --git a/Cargo.toml b/Cargo.toml index ddee508..d61e789 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,6 @@ version = "0.1.0" authors = ["Luke Else "] edition = "2021" resolver = "2" -rust-version = "1.66" [profile.release] opt-level = "s" @@ -25,14 +24,14 @@ embassy = ["esp-idf-svc/embassy-sync", "esp-idf-svc/critical-section", "esp-idf- [dependencies] -log = { version = "0.4.17", default-features = false } -esp-idf-svc = { version = "0.47.3", default-features = false } -embedded-svc = { version = "0.25", optional = true, default-features = false } +log = { version = "0.4.22", default-features = false } +esp-idf-svc = { version = "0.49.1", default-features = false } +embedded-svc = { version = "0.28", optional = true, default-features = false } embedded-graphics = "0.8.0" -ssd1306 = "0.8.0" -display-interface = "0.4.1" -display-interface-i2c = "0.4.0" -nmea = { version = "0.6.0", default-features = false } +ssd1306 = "0.9.0" +display-interface = "0.5.0" +display-interface-i2c = "0.5.0" +nmea = { version = "0.7.0", default-features = false } [build-dependencies] -embuild = "0.31.2" +embuild = "0.32.0" diff --git a/sdkconfig.defaults b/sdkconfig.defaults index 3ca3b5d..9ea5d73 100644 --- a/sdkconfig.defaults +++ b/sdkconfig.defaults @@ -1,5 +1,5 @@ # Rust often needs a bit of an extra main task stack size compared to C (the default is 3K) -CONFIG_ESP_MAIN_TASK_STACK_SIZE=7000 +CONFIG_ESP_MAIN_TASK_STACK_SIZE=8000 # Use this to set FreeRTOS kernel tick frequency to 1000 Hz (100 Hz by default). # This allows to use 1 ms granuality for thread sleeps (10 ms by default). diff --git a/src/main.rs b/src/main.rs index 9aed2b7..9140758 100644 --- a/src/main.rs +++ b/src/main.rs @@ -65,6 +65,8 @@ fn main() -> Result<(), Error> { let mut display: Display = Display::new(i2c, DisplaySize128x64, DisplayRotation::Rotate0)?; let mut _app_state = appstate::AppState::default(); + + const NO_DATA: &str = "NO\nGPS\nDATA"; loop {