From c7e0ec45cae66326a0cba1745db7de207ddd1120 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Hlusi=C4=8Dka?= Date: Sat, 28 Feb 2026 16:11:15 +0100 Subject: [PATCH] Use released version of esp-hal; fix repo being dirty on every compilation/check --- firmware/Cargo.lock | 78 ++++++++++++++++++++++-------- firmware/acid-firmware/build.rs | 5 +- firmware/acid-firmware/src/main.rs | 11 ++++- 3 files changed, 68 insertions(+), 26 deletions(-) diff --git a/firmware/Cargo.lock b/firmware/Cargo.lock index 7c2c12b..ad6f971 100644 --- a/firmware/Cargo.lock +++ b/firmware/Cargo.lock @@ -31,7 +31,7 @@ dependencies = [ "esp-bootloader-esp-idf", "esp-hal", "esp-hal-bounce-buffers", - "esp-metadata-generated 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "esp-metadata-generated", "esp-println", "esp-radio", "esp-rtos", @@ -2037,6 +2037,8 @@ checksum = "dea2df4cf52843e0452895c455a1a2cfbb842a1e7329671acf418fdc53ed4c59" [[package]] name = "esp-alloc" version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "641e43d6a60244429117ef2fa7a47182120c7561336ea01f6fb08d634f46bae1" dependencies = [ "allocator-api2 0.3.1", "cfg-if", @@ -2051,11 +2053,13 @@ dependencies = [ [[package]] name = "esp-backtrace" version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3318413fb566c7227387f67736cf70cd74d80a11f2bb31c7b95a9eb48d079669" dependencies = [ "cfg-if", "document-features", "esp-config", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-println", "heapless 0.9.2", "riscv", @@ -2066,13 +2070,15 @@ dependencies = [ [[package]] name = "esp-bootloader-esp-idf" version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02a56964ab5479ac20c9cf76fa3b0d3f2233b20b5d8554e81ef5d65f63c20567" dependencies = [ "cfg-if", "document-features", "embedded-storage", "esp-config", "esp-hal-procmacros", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-rom-sys", "jiff", "log", @@ -2082,9 +2088,11 @@ dependencies = [ [[package]] name = "esp-config" version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "102871054f8dd98202177b9890cb4b71d0c6fe1f1413b7a379a8e0841fc2473c" dependencies = [ "document-features", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "serde", "serde_yaml", "somni-expr", @@ -2093,6 +2101,8 @@ dependencies = [ [[package]] name = "esp-hal" version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54786287c0a61ca0f78cb0c338a39427551d1be229103b4444591796c579e093" dependencies = [ "bitfield 0.19.4", "bitflags 2.10.0", @@ -2117,7 +2127,7 @@ dependencies = [ "enumset", "esp-config", "esp-hal-procmacros", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-riscv-rt", "esp-rom-sys", "esp-sync", @@ -2157,6 +2167,8 @@ dependencies = [ [[package]] name = "esp-hal-procmacros" version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e025a7a7a0affdb4ff913b5c4494aef96ee03d085bf83c27453ae3a71d50da6" dependencies = [ "document-features", "object", @@ -2167,10 +2179,6 @@ dependencies = [ "termcolor", ] -[[package]] -name = "esp-metadata-generated" -version = "0.3.0" - [[package]] name = "esp-metadata-generated" version = "0.3.0" @@ -2180,22 +2188,26 @@ checksum = "9a93e39c8ad8d390d248dc7b9f4b59a873f313bf535218b8e2351356972399e3" [[package]] name = "esp-phy" version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b1facf348e1e251517278fc0f5dc134e95e518251f5796cfbb532ca226a29bf" dependencies = [ "cfg-if", "document-features", "esp-config", "esp-hal", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-sync", - "esp-wifi-sys-esp32s3", + "esp-wifi-sys", ] [[package]] name = "esp-println" version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a30e6c9fbcc01c348d46706fef8131c7775ab84c254a3cd65d0cd3f6414d592" dependencies = [ "document-features", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-sync", "log", "portable-atomic", @@ -2204,6 +2216,8 @@ dependencies = [ [[package]] name = "esp-radio" version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "684c4de2f8907b73c9b891fbda65286a86d34fced4b856f36a7896c211f2f265" dependencies = [ "allocator-api2 0.3.1", "bt-hci", @@ -2217,11 +2231,11 @@ dependencies = [ "esp-config", "esp-hal", "esp-hal-procmacros", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-phy", "esp-radio-rtos-driver", "esp-sync", - "esp-wifi-sys-esp32s3", + "esp-wifi-sys", "heapless 0.9.2", "instability", "num-derive", @@ -2234,10 +2248,14 @@ dependencies = [ [[package]] name = "esp-radio-rtos-driver" version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "543bc31d1851afd062357e7810c1a9633f282fd3993583499a841ab497cbca6c" [[package]] name = "esp-riscv-rt" version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "502744a5b1e7268d27fd2a4e56ad45efe42ead517d6c517a6961540de949b0ee" dependencies = [ "document-features", "riscv", @@ -2247,15 +2265,19 @@ dependencies = [ [[package]] name = "esp-rom-sys" version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd66cccc6dd2d13e9f33668a57717ab14a6d217180ec112e6be533de93e7ecbf" dependencies = [ "cfg-if", "document-features", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", ] [[package]] name = "esp-rtos" version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "162ec711c8d06e79c67b75d01595539e86b0aac209643af98ca87a12250428b3" dependencies = [ "allocator-api2 0.3.1", "cfg-if", @@ -2267,7 +2289,7 @@ dependencies = [ "esp-config", "esp-hal", "esp-hal-procmacros", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-radio-rtos-driver", "esp-sync", "portable-atomic", @@ -2276,12 +2298,14 @@ dependencies = [ [[package]] name = "esp-storage" version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1495fc1f5549bdd840b52d9ceb201746200e1620d2636f46958c11e765623b80" dependencies = [ "document-features", "embedded-storage", "esp-hal", "esp-hal-procmacros", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "esp-rom-sys", "esp-sync", ] @@ -2289,12 +2313,14 @@ dependencies = [ [[package]] name = "esp-sync" version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d44974639b4e88914f83fe60d2832c00276657d7d857628fdfc966cc7302e8a8" dependencies = [ "cfg-if", "document-features", "embassy-sync 0.6.2", "embassy-sync 0.7.2", - "esp-metadata-generated 0.3.0", + "esp-metadata-generated", "log", "riscv", "xtensa-lx", @@ -2314,9 +2340,13 @@ dependencies = [ ] [[package]] -name = "esp-wifi-sys-esp32s3" -version = "0.1.0" -source = "git+https://github.com/esp-rs/esp-wifi-sys?rev=7623c8d#7623c8d746b55cd8d9f7473359069aef381b7d3b" +name = "esp-wifi-sys" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89b6544f6f0cb86169d1f93ba2101a8d50358a040c5043676ed86b793e09b12c" +dependencies = [ + "anyhow", +] [[package]] name = "esp32" @@ -8480,6 +8510,8 @@ checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9" [[package]] name = "xtensa-lx" version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e012d667b0aa6d2592ace8ef145a98bff3e76cca7a644f4181ecd7a916ed289b" dependencies = [ "critical-section", ] @@ -8487,6 +8519,8 @@ dependencies = [ [[package]] name = "xtensa-lx-rt" version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8709f037fb123fe7ff146d2bce86f9dc0dfc53045c016bfd9d703317b6502845" dependencies = [ "document-features", "xtensa-lx", @@ -8496,6 +8530,8 @@ dependencies = [ [[package]] name = "xtensa-lx-rt-proc-macros" version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96fb42cd29c42f8744c74276e9f5bee7b06685bbe5b88df891516d72cb320450" dependencies = [ "proc-macro2", "quote", diff --git a/firmware/acid-firmware/build.rs b/firmware/acid-firmware/build.rs index 3111f6a..b62c5a3 100644 --- a/firmware/acid-firmware/build.rs +++ b/firmware/acid-firmware/build.rs @@ -81,7 +81,6 @@ fn main() { .map_err(|_| NotBuilt { lib_build_dir: lib_build_dir_str.clone(), })?; - let lib_build_dir = lib_build_dir.display(); if !lib_library_path.is_file() { return Err(NotBuilt { @@ -89,9 +88,9 @@ fn main() { }); } - println!("cargo:rustc-link-search=native={lib_build_dir}"); + println!("cargo:rustc-link-search=native={}", lib_build_dir.display()); println!("cargo:rustc-link-lib=static={library}"); - println!("cargo:rerun-if-changed={lib_build_dir}/lib{library}.a"); + println!("cargo:rerun-if-changed={}", lib_library_path.display()); Ok(()) } diff --git a/firmware/acid-firmware/src/main.rs b/firmware/acid-firmware/src/main.rs index 8f529cc..992f754 100644 --- a/firmware/acid-firmware/src/main.rs +++ b/firmware/acid-firmware/src/main.rs @@ -162,7 +162,10 @@ async fn main(_spawner: Spawner) { let timg0 = TimerGroup::new(peripherals.TIMG0); let software_interrupt = SoftwareInterruptControl::new(peripherals.SW_INTERRUPT); - esp_rtos::start(timg0.timer0, software_interrupt.software_interrupt0); + esp_rtos::start( + timg0.timer0, + // software_interrupt.software_interrupt0, + ); // A task executor that is able to handle interrupts, and then return back to executing tasks. static EXECUTOR_CORE_0: StaticCell> = StaticCell::new(); @@ -181,6 +184,7 @@ async fn main(_spawner: Spawner) { // high_priority_task_spawner: interrupt_core_1_spawner, uart_rx, software_interrupt1: software_interrupt.software_interrupt1, + software_interrupt0: software_interrupt.software_interrupt0, RNG: peripherals.RNG, ADC1: peripherals.ADC1, USB0: peripherals.USB0, @@ -237,6 +241,7 @@ async fn main(_spawner: Spawner) { struct MainPeripherals { uart_rx: UartRx<'static, Blocking>, software_interrupt1: SoftwareInterrupt<'static, 1>, + software_interrupt0: SoftwareInterrupt<'static, 0>, RNG: esp_hal::peripherals::RNG<'static>, ADC1: esp_hal::peripherals::ADC1<'static>, USB0: esp_hal::peripherals::USB0<'static>, @@ -404,6 +409,7 @@ async fn main_task(peripherals: MainPeripherals) { peripherals.DMA_CH0, peripherals.SPI2, peripherals.CPU_CTRL, + peripherals.software_interrupt0, peripherals.software_interrupt1, flash_partitions.acid ), @@ -468,6 +474,7 @@ async fn initialize_display_and_renderer( dma_ch0: esp_hal::peripherals::DMA_CH0<'static>, spi2: esp_hal::peripherals::SPI2<'static>, cpu_ctrl: esp_hal::peripherals::CPU_CTRL<'static>, + software_interrupt0: SoftwareInterrupt<'static, 0>, software_interrupt1: SoftwareInterrupt<'static, 1>, partition_acid: Partition, ) { @@ -510,7 +517,7 @@ async fn initialize_display_and_renderer( let second_core_stack = SECOND_CORE_STACK.init(Stack::new()); esp_rtos::start_second_core( cpu_ctrl, - // software_interrupt0, + software_interrupt0, software_interrupt1, second_core_stack, move || {