commit 94284a900fcca2d95727fff0c6adf3972fa6e2d0
parent 18970ca82e7ffc99c87173d7df761280359fa6a8
Author: filipton <filipton12@gmail.com>
Date: Thu, 27 Feb 2025 15:08:46 +0100
feat: update for esp-hal 1.0.0-beta.0 (use ota version 0.3.2 for 0.23.1)
Diffstat:
7 files changed, 155 insertions(+), 150 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
@@ -10,7 +10,7 @@ checksum = "a21dea9854beb860f3062d10228ce9b976da520a73474aed3171ec276bc0c032"
[[package]]
name = "esp-hal-ota"
-version = "0.3.2"
+version = "0.4.0"
dependencies = [
"embedded-storage",
"esp32",
@@ -25,72 +25,72 @@ dependencies = [
[[package]]
name = "esp32"
-version = "0.35.0"
+version = "0.36.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19d3bff1d268a4b8d34b494c0e88466cd59a827bb330189773db299ff525ea13"
+checksum = "3d9b774d7a2c96550a5c25016c2abd33370ebac60e534484b7bca344ecb8a3d6"
dependencies = [
"vcell",
]
[[package]]
name = "esp32c2"
-version = "0.24.0"
+version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0285be5b9dc4018d7f31fefe4c3d17f56461ef3ab46300ea1bf9d760968957f0"
+checksum = "6f7037cfa7c93574b0891062f980a75ae97e9d6c93dcaff3e060b37cf1281c59"
dependencies = [
"vcell",
]
[[package]]
name = "esp32c3"
-version = "0.27.0"
+version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61655d48e45039dfac5ae769581fb50ea7f61dea3227b4b744a1a900d03fbbd4"
+checksum = "df1bbcfa3ab2979171263db80804dabc38bdd45450c7eb775ee3f81d552cf0ba"
dependencies = [
"vcell",
]
[[package]]
name = "esp32c6"
-version = "0.18.0"
+version = "0.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd38a7771b65cb640cc4a79324a6301ba4ac3bf2987caca5d3aa34492238fdb9"
+checksum = "9ff2a4e1d1b0cb2517af20766004b8e8fb4612043f0b0569703cc90d1880ede4"
dependencies = [
"vcell",
]
[[package]]
name = "esp32h2"
-version = "0.14.0"
+version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a05aafc25d8c68ce504d8025750fc37915a2fc7d2605be3d3b51f8886a43411a"
+checksum = "eee7512ae8da61338545804a76c5bc9816a9122abbf2f23d1195e3d45fab79af"
dependencies = [
"vcell",
]
[[package]]
name = "esp32s2"
-version = "0.26.0"
+version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0eb30ae371e72436629a70affedd1e3570829f16a3b718d6ec96508791d9da5e"
+checksum = "a22733ee6f4bb08e3113df6651b2c350f37c44314017476e354ec951a55465e9"
dependencies = [
"vcell",
]
[[package]]
name = "esp32s3"
-version = "0.30.0"
+version = "0.31.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f0ab39d5ae3b61b3a83f5616a03220a7dc9c4d6e4ed16d2da73d50bf8d798d7"
+checksum = "4c6d20f119410092abfbc65e46f9362015a7110023528f0dbe855cab80c38ca8"
dependencies = [
"vcell",
]
[[package]]
name = "log"
-version = "0.4.25"
+version = "0.4.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f"
+checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e"
[[package]]
name = "vcell"
diff --git a/Cargo.toml b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "esp-hal-ota"
-version = "0.3.2"
+version = "0.4.0"
edition = "2021"
license = "MIT"
description = "OTA library for esp-hal"
@@ -10,18 +10,18 @@ repository = "https://github.com/filipton/esp-hal-ota"
[dependencies]
embedded-storage = "0.3.1"
-log = { version = "0.4.22", optional = true }
+log = { version = "0.4.26", optional = true }
-esp32 = { version = "0.35.0", optional = true }
+esp32 = { version = "0.36.0", optional = true }
-esp32s2 = { version = "0.26.0", optional = true }
-esp32s3 = { version = "0.30.0", optional = true }
+esp32s2 = { version = "0.27.0", optional = true }
+esp32s3 = { version = "0.31.0", optional = true }
-esp32c2 = { version = "0.24.0", optional = true }
-esp32c3 = { version = "0.27.0", optional = true }
-esp32c6 = { version = "0.18.0", optional = true }
+esp32c2 = { version = "0.25.0", optional = true }
+esp32c3 = { version = "0.28.0", optional = true }
+esp32c6 = { version = "0.19.0", optional = true }
-esp32h2 = { version = "0.14.0", optional = true }
+esp32h2 = { version = "0.15.0", optional = true }
[features]
default = ["log"]
diff --git a/examples/Cargo.lock b/examples/Cargo.lock
@@ -4,9 +4,9 @@ version = 4
[[package]]
name = "anyhow"
-version = "1.0.95"
+version = "1.0.96"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04"
+checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4"
[[package]]
name = "autocfg"
@@ -25,9 +25,23 @@ dependencies = [
[[package]]
name = "bitfield"
-version = "0.17.0"
+version = "0.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f798d2d157e547aa99aab0967df39edd0b70307312b6f8bd2848e6abe40896e0"
+checksum = "4c7e6caee68becd795bfd65f1a026e4d00d8f0c2bc9be5eb568e1015f9ce3c34"
+dependencies = [
+ "bitfield-macros",
+]
+
+[[package]]
+name = "bitfield-macros"
+version = "0.18.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "331afbb18ce7b644c0b428726d369c5dd37ca0b815d72a459fcc2896c3c8ad32"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
[[package]]
name = "bitflags"
@@ -43,9 +57,9 @@ checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
[[package]]
name = "bt-hci"
-version = "0.2.0"
+version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d69c6b9d78fe4db539449fc8782dd2554fd4baee27f6e6dbf2e4757fcbc36139"
+checksum = "f377753756ec12e76b52d2dd657437be0448cc9736402ffadd0b8b8b9602c8a1"
dependencies = [
"embassy-sync",
"embedded-io",
@@ -74,9 +88,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "chrono"
-version = "0.4.39"
+version = "0.4.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825"
+checksum = "1a7964611d71df112cb1730f2ee67324fcf4d0fc6606acbbe9bfe06df124637c"
dependencies = [
"num-traits",
]
@@ -135,9 +149,9 @@ dependencies = [
[[package]]
name = "document-features"
-version = "0.2.10"
+version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0"
+checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d"
dependencies = [
"litrs",
]
@@ -219,9 +233,9 @@ checksum = "524eb3c489760508f71360112bca70f6e53173e6fe48fc5f0efd0f5ab217751d"
[[package]]
name = "embassy-sync"
-version = "0.6.1"
+version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3899a6e39fa3f54bf8aaf00979f9f9c0145a522f7244810533abbb748be6ce82"
+checksum = "8d2c8cdff05a7a51ba0087489ea44b0b1d97a296ca6b1d6d1a33ea7423d34049"
dependencies = [
"cfg-if",
"critical-section",
@@ -318,16 +332,6 @@ dependencies = [
]
[[package]]
-name = "embedded-hal-nb"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fba4268c14288c828995299e59b12babdbe170f6c6d73731af1b4648142e8605"
-dependencies = [
- "embedded-hal 1.0.0",
- "nb 1.1.0",
-]
-
-[[package]]
name = "embedded-io"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -411,15 +415,15 @@ dependencies = [
[[package]]
name = "equivalent"
-version = "1.0.1"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
+checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
[[package]]
name = "esp-alloc"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "408c0d4c7f51efb256af18641047b0d83b58a485be9edf5a559da796abef0b63"
+checksum = "a78132d362cbf62ce22a1466eb9e98424f6b2d1e476e7a3cb46ca9063c5833f7"
dependencies = [
"cfg-if",
"critical-section",
@@ -430,28 +434,17 @@ dependencies = [
[[package]]
name = "esp-backtrace"
-version = "0.15.0"
+version = "0.15.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c83ca63fd02ca40644ae91ae63362e3a6e7f53458f6c1356decf892343d2418"
+checksum = "e4cd70abe47945c9116972781b5c05277ad855a5f5569fe2afd3e2e61a103cc0"
dependencies = [
- "esp-build 0.2.0",
+ "esp-build",
"esp-println",
"semihosting",
]
[[package]]
name = "esp-build"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b94a4b8d74e7cc7baabcca5b2277b41877e039ad9cd49959d48ef94dac7eab4b"
-dependencies = [
- "quote",
- "syn",
- "termcolor",
-]
-
-[[package]]
-name = "esp-build"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8aa1c8f9954c9506699cf1ca10a2adcc226ff10b6ae3cb9e875cf2c6a0b9a372"
@@ -463,18 +456,18 @@ dependencies = [
[[package]]
name = "esp-config"
-version = "0.3.0"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd428a3b4b2975772f24eabea123d45cf6a5e28020396ed5dcb331ee3a904046"
+checksum = "158dba334d3a2acd8d93873c0ae723ca1037cc78eefe5d6b4c5919b0ca28e38e"
dependencies = [
"document-features",
]
[[package]]
name = "esp-hal"
-version = "0.23.1"
+version = "1.0.0-beta.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a573175c540fd1d21a9cf07b0dee286b5a8f4cfde4b35da0f4f4657de7942c45"
+checksum = "e9efaa9c1324ca20a22086aba2ce47a9bdc5bd65969af8b0cd5e879603b57bef"
dependencies = [
"basic-toml",
"bitfield",
@@ -493,11 +486,10 @@ dependencies = [
"embedded-can",
"embedded-hal 1.0.0",
"embedded-hal-async",
- "embedded-hal-nb",
"embedded-io",
"embedded-io-async",
"enumset",
- "esp-build 0.2.0",
+ "esp-build",
"esp-config",
"esp-hal-procmacros",
"esp-metadata",
@@ -514,7 +506,7 @@ dependencies = [
"rand_core",
"riscv",
"serde",
- "strum",
+ "strum 0.27.1",
"ufmt-write",
"usb-device",
"void",
@@ -524,9 +516,9 @@ dependencies = [
[[package]]
name = "esp-hal-embassy"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cea15ef146c7689fede0c3a7d765e07b1eb22ef462f1203a137dacc615b031a"
+checksum = "b27f41110117a9bf2be385b42535c686b301c8ce3b5ea0a07567e200a63a2239"
dependencies = [
"critical-section",
"document-features",
@@ -535,7 +527,7 @@ dependencies = [
"embassy-time",
"embassy-time-driver",
"embassy-time-queue-utils",
- "esp-build 0.2.0",
+ "esp-build",
"esp-config",
"esp-hal",
"esp-hal-procmacros",
@@ -546,7 +538,7 @@ dependencies = [
[[package]]
name = "esp-hal-ota"
-version = "0.3.2"
+version = "0.4.0"
dependencies = [
"embedded-storage",
"esp32",
@@ -577,9 +569,9 @@ dependencies = [
[[package]]
name = "esp-hal-procmacros"
-version = "0.16.0"
+version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4a3297005c2b31cd00e2ba50037edc9bddf99da3afe1c97a2d1b0165a312eab"
+checksum = "1bd340a20a7d546570af58fd9e2aae17466a42572680d8e70d35fc7c475c4ed8"
dependencies = [
"darling",
"document-features",
@@ -594,33 +586,33 @@ dependencies = [
[[package]]
name = "esp-metadata"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb15c17e50f4cccb0d88305c19eae2d5533d750f0a05b6a05f1c99864974758e"
+checksum = "30b4bffc22b7b1222c9467f0cb90eb49dcb63de810ecb3300e4b3bbc4ac2423e"
dependencies = [
"anyhow",
"basic-toml",
"serde",
- "strum",
+ "strum 0.26.3",
]
[[package]]
name = "esp-println"
-version = "0.13.0"
+version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "645e54eb592ca0a3d60213b1695e2a5fc0b51ca6d693c08d6983857224a629ed"
+checksum = "960703930f9f3c899ddedd122ea27a09d6a612c22323157e524af5b18876448e"
dependencies = [
"critical-section",
- "esp-build 0.2.0",
+ "esp-build",
"log",
"portable-atomic",
]
[[package]]
name = "esp-riscv-rt"
-version = "0.9.1"
+version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94aca65db6157aa5f42d9df6595b21462f28207ca4230b799aa3620352ef6a72"
+checksum = "ec69987b3d7c48b65f8fb829220832a101478d766c518ae836720d040608d5dd"
dependencies = [
"document-features",
"riscv",
@@ -629,13 +621,13 @@ dependencies = [
[[package]]
name = "esp-storage"
-version = "0.4.0"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "661aebceb62e0caadd7e6bddd88b2d891c3b08cea4eb5afe96ef697674ccda5c"
+checksum = "1e98b5069bd1482fb85f9236f8ea6cd1b5b6b5a1c3c3fb8c938c97ccfbbb051b"
dependencies = [
"critical-section",
"embedded-storage",
- "esp-build 0.1.0",
+ "esp-build",
]
[[package]]
@@ -653,9 +645,9 @@ dependencies = [
[[package]]
name = "esp-wifi"
-version = "0.12.0"
+version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "321b112db6629693fae49644b1ba28e8b917b58829533e9cdd0400183af1877d"
+checksum = "cd7d7ea0e2c374343a375758861e13cf618db619436bcb386dfe5529ef31e9d5"
dependencies = [
"bt-hci",
"cfg-if",
@@ -667,12 +659,11 @@ dependencies = [
"embedded-io-async",
"enumset",
"esp-alloc",
- "esp-build 0.2.0",
+ "esp-build",
"esp-config",
"esp-hal",
"esp-metadata",
"esp-wifi-sys",
- "fugit",
"heapless",
"libm",
"num-derive",
@@ -680,7 +671,6 @@ dependencies = [
"portable-atomic",
"portable_atomic_enum",
"rand_core",
- "smoltcp",
"xtensa-lx-rt",
]
@@ -695,9 +685,9 @@ dependencies = [
[[package]]
name = "esp32"
-version = "0.35.0"
+version = "0.36.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19d3bff1d268a4b8d34b494c0e88466cd59a827bb330189773db299ff525ea13"
+checksum = "3d9b774d7a2c96550a5c25016c2abd33370ebac60e534484b7bca344ecb8a3d6"
dependencies = [
"critical-section",
"vcell",
@@ -705,9 +695,9 @@ dependencies = [
[[package]]
name = "esp32c3"
-version = "0.27.0"
+version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61655d48e45039dfac5ae769581fb50ea7f61dea3227b4b744a1a900d03fbbd4"
+checksum = "df1bbcfa3ab2979171263db80804dabc38bdd45450c7eb775ee3f81d552cf0ba"
dependencies = [
"critical-section",
"vcell",
@@ -715,9 +705,9 @@ dependencies = [
[[package]]
name = "esp32s3"
-version = "0.30.0"
+version = "0.31.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f0ab39d5ae3b61b3a83f5616a03220a7dc9c4d6e4ed16d2da73d50bf8d798d7"
+checksum = "4c6d20f119410092abfbc65e46f9362015a7110023528f0dbe855cab80c38ca8"
dependencies = [
"critical-section",
"vcell",
@@ -824,9 +814,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
[[package]]
name = "indexmap"
-version = "2.7.0"
+version = "2.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f"
+checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652"
dependencies = [
"equivalent",
"hashbrown",
@@ -884,9 +874,9 @@ dependencies = [
[[package]]
name = "log"
-version = "0.4.25"
+version = "0.4.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f"
+checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e"
[[package]]
name = "managed"
@@ -902,9 +892,9 @@ checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
[[package]]
name = "minijinja"
-version = "2.6.0"
+version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "212b4cab3aad057bc6e611814472905546c533295723b9e26a31c7feb19a8e65"
+checksum = "cff7b8df5e85e30b87c2b0b3f58ba3a87b68e133738bf512a7713769326dbca9"
dependencies = [
"serde",
]
@@ -973,9 +963,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]]
name = "portable-atomic"
-version = "1.10.0"
+version = "1.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6"
+checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e"
[[package]]
name = "portable_atomic_enum"
@@ -1097,9 +1087,9 @@ checksum = "8188909339ccc0c68cfb5a04648313f09621e8b87dc03095454f1a11f6c5d436"
[[package]]
name = "riscv-rt-macros"
-version = "0.2.2"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30f19a85fe107b65031e0ba8ec60c34c2494069fe910d6c297f5e7cb5a6f76d0"
+checksum = "fc71814687c45ba4cd1e47a54e03a2dbc62ca3667098fbae9cc6b423956758fa"
dependencies = [
"proc-macro2",
"quote",
@@ -1120,24 +1110,24 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
[[package]]
name = "semihosting"
-version = "0.1.18"
+version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d00d0037a88d97379cc27d815a471350923a1dc5880d5325c49695edcdc0d37"
+checksum = "407ec8d274cd77556e9c2bef886df91eb3447b4059e603d6fb19f85e6452e275"
[[package]]
name = "serde"
-version = "1.0.217"
+version = "1.0.218"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70"
+checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.217"
+version = "1.0.218"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0"
+checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b"
dependencies = [
"proc-macro2",
"quote",
@@ -1193,7 +1183,16 @@ version = "0.26.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06"
dependencies = [
- "strum_macros",
+ "strum_macros 0.26.4",
+]
+
+[[package]]
+name = "strum"
+version = "0.27.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32"
+dependencies = [
+ "strum_macros 0.27.1",
]
[[package]]
@@ -1210,10 +1209,23 @@ dependencies = [
]
[[package]]
+name = "strum_macros"
+version = "0.27.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "rustversion",
+ "syn",
+]
+
+[[package]]
name = "syn"
-version = "2.0.96"
+version = "2.0.98"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80"
+checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1"
dependencies = [
"proc-macro2",
"quote",
@@ -1231,9 +1243,9 @@ dependencies = [
[[package]]
name = "toml"
-version = "0.8.19"
+version = "0.8.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e"
+checksum = "cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148"
dependencies = [
"serde",
"serde_spanned",
@@ -1252,9 +1264,9 @@ dependencies = [
[[package]]
name = "toml_edit"
-version = "0.22.22"
+version = "0.22.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5"
+checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474"
dependencies = [
"indexmap",
"serde",
@@ -1271,9 +1283,9 @@ checksum = "e87a2ed6b42ec5e28cc3b94c09982969e9227600b2e3dcbc1db927a84c06bd69"
[[package]]
name = "unicode-ident"
-version = "1.0.14"
+version = "1.0.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
+checksum = "00e2473a93778eb0bad35909dff6a10d28e63f792f16ed15e404fca9d5eeedbe"
[[package]]
name = "usb-device"
@@ -1381,9 +1393,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]]
name = "winnow"
-version = "0.6.24"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a"
+checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1"
dependencies = [
"memchr",
]
@@ -1410,7 +1422,7 @@ dependencies = [
"minijinja",
"r0",
"serde",
- "strum",
+ "strum 0.26.3",
"toml",
"xtensa-lx",
"xtensa-lx-rt-proc-macros",
diff --git a/examples/Cargo.toml b/examples/Cargo.toml
@@ -6,20 +6,20 @@ edition = "2021"
license = "MIT OR Apache-2.0"
[dependencies]
-esp-backtrace = { version = "0.15.0", features = [ "exception-handler", "panic-handler", "println" ] }
-esp-hal = { version = "0.23.1", features = [] }
-esp-println = { version = "0.13.0", features = ["log"] }
-log = { version = "0.4.22" }
-esp-wifi = { version = "0.12.0", features = [ "utils", "wifi", "ble" ] }
-esp-hal-embassy = { version = "0.6.0", features = [] }
+esp-backtrace = { version = "0.15.1", features = [ "exception-handler", "panic-handler", "println" ] }
+esp-hal = { version = "1.0.0-beta.0", features = ["unstable"] }
+esp-println = { version = "0.13.1", features = ["log"] }
+log = { version = "0.4.26" }
+esp-wifi = { version = "0.13.0", features = [ "wifi", "ble" ] }
+esp-hal-embassy = { version = "0.7.0", features = [] }
embassy-executor = { version = "0.7.0", package = "embassy-executor", features = ["arch-riscv32", "task-arena-size-10240"] }
embassy-net = { version = "0.6.0", features = ["tcp", "udp", "dhcpv4", "medium-ethernet"] }
embassy-time = { version = "0.4.0" }
-esp-storage = { version = "0.4.0", features = [] }
+esp-storage = { version = "0.5.0", features = [] }
esp-hal-ota = { path = "/home/pilif/projects/esp-hal-ota", features = [] }
static_cell = { version = "2.1.0", features = ["nightly"] }
#xtensa-lx-rt = { version = "0.17.2", optional = true, features = ["esp32s3", "float-save-restore"] }
-esp-alloc = "0.6.0"
+esp-alloc = "0.7.0"
[build-dependencies]
dotenvy = "0.15.7"
diff --git a/examples/src/main.rs b/examples/src/main.rs
@@ -12,10 +12,7 @@ use esp_hal::timer::timg::TimerGroup;
use esp_hal_ota::Ota;
use esp_storage::FlashStorage;
use esp_wifi::{
- wifi::{
- ClientConfiguration, Configuration, WifiController, WifiDevice, WifiEvent, WifiStaDevice,
- WifiState,
- },
+ wifi::{ClientConfiguration, Configuration, WifiController, WifiDevice, WifiEvent, WifiState},
EspWifiController,
};
@@ -41,7 +38,7 @@ macro_rules! mk_static {
async fn main(spawner: Spawner) {
#[cfg(not(feature = "esp32"))]
{
- esp_alloc::heap_allocator!(150 * 1024);
+ esp_alloc::heap_allocator!(size: 150 * 1024);
}
#[cfg(feature = "esp32")]
@@ -85,14 +82,13 @@ async fn main(spawner: Spawner) {
esp_hal_embassy::init(timg0.timer0);
let wifi = peripherals.WIFI;
- let (wifi_interface, controller) =
- esp_wifi::wifi::new_with_mode(&init, wifi, WifiStaDevice).unwrap();
+ let (controller, interfaces) = esp_wifi::wifi::new(&init, wifi).unwrap();
let config = Config::dhcpv4(Default::default());
let seed = 69420;
let (stack, runner) = embassy_net::new(
- wifi_interface,
+ interfaces.sta,
config,
{
static STATIC_CELL: static_cell::StaticCell<StackResources<3>> =
@@ -175,8 +171,7 @@ async fn main(spawner: Spawner) {
log::info!("Ota OK! Rebooting in 1s!");
Timer::after_millis(1000).await;
- esp_hal::reset::software_reset();
- break;
+ esp_hal::system::software_reset();
}
Err(e) => {
log::error!("Ota write error: {e:?}");
@@ -238,7 +233,7 @@ async fn connection(mut controller: WifiController<'static>, stack: Stack<'stati
}
#[embassy_executor::task]
-async fn net_task(mut runner: Runner<'static, WifiDevice<'static, WifiStaDevice>>) {
+async fn net_task(mut runner: Runner<'static, WifiDevice<'static>>) {
runner.run().await
}
diff --git a/simple-ota-server/firmware.bin b/simple-ota-server/firmware.bin
Binary files differ.
diff --git a/src/lib.rs b/src/lib.rs
@@ -17,8 +17,6 @@ const PART_SIZE: u32 = 0xc00;
const FIRST_OTA_PART_SUBTYPE: u8 = 0x10;
const OTA_VERIFY_READ_SIZE: usize = 256;
-// NOTE: I need to use generics, because after adding esp-storage dependency to
-// this project its not compiling LULE
pub struct Ota<S>
where
S: ReadStorage + Storage,