diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 789c9c9de..5fa8e60db 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -53,7 +53,7 @@ jobs: strategy: matrix: # keep MSRV in sync in ci.yaml and Cargo.toml - toolchain: [stable, '1.66.1'] + toolchain: [stable, '1.74.1'] features: [''] continue-on-error: [false] include: diff --git a/CHANGELOG.md b/CHANGELOG.md index 54adc74ca..b5909f1c5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,16 +16,14 @@ Booster console. ### Changed -* Broker is no longer configured at compile time, but is maintained in device memory -* MSRV bumped to v1.66 -* The static IP of stabilizer can no longer be configured at compilation time, but now uses device -memory storage instead. It is now configured via the USB port. +* Broker and static IP/DHCP are no longer configured at compile time, + but is maintained in device flash and can be changed via the USB port. +* MSRV bumped to v1.74.1 * The IIR (biquad) filter used for PID action has changed its serialization format. See also the `iir_coefficients` Python CLI implementation. -* Bumped MSRV 1.66.0 -> 1.66.1 ### Fixed -* Fixed an issue where the device would rarely not enumerate on Windows +* Fixed an issue where the device would sometimes not enumerate on Windows ## [0.9.0](https://github.com/quartiq/stabilizer/compare/v0.8.1...v0.9.0) @@ -38,10 +36,10 @@ memory storage instead. It is now configured via the USB port. * `idsp` crate update to 0.10: `lockin` now uses a double second order lowpass. * The `batch_size` field in the the UDP stream frame now contains the number of batches not the number of samples per batch. It has been renamed to `batches`. - * All MQTT clients upgraded and APIs updated. - * MQTT broker may now be specified via DNS hostnames - * `hitl/streaming.py` no longer requires a prefix - * Streaming now supports UDP multicast addresses +* All MQTT clients upgraded and APIs updated. +* MQTT broker may now be specified via DNS hostnames +* `hitl/streaming.py` no longer requires a prefix +* Streaming now supports UDP multicast addresses ## [v0.8.1](https://github.com/quartiq/stabilizer/compare/v0.8.0...v0.8.1) - 2022-11-14 diff --git a/Cargo.lock b/Cargo.lock index 150837fef..95d629370 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -12,36 +12,6 @@ dependencies = [ "embedded-hal 0.2.7", ] -[[package]] -name = "aligned" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a785a543aea40f5e4e2e93bb2655d31bc21bb391fff65697150973e383f16bb" -dependencies = [ - "as-slice", -] - -[[package]] -name = "as-slice" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45403b49e3954a4b8428a0ac21a4b7afadccf92bfd96273f1a58cd4812496ae0" -dependencies = [ - "generic-array 0.12.4", - "generic-array 0.13.3", - "generic-array 0.14.7", - "stable_deref_trait", -] - -[[package]] -name = "atomic-polyfill" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3ff7eb3f316534d83a8a2c3d1674ace8a5a71198eba31e2e2b597833f699b28" -dependencies = [ - "critical-section", -] - [[package]] name = "atomic-polyfill" version = "1.0.3" @@ -53,9 +23,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" [[package]] name = "bare-metal" @@ -104,9 +74,9 @@ checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" [[package]] name = "built" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d17f4d6e4dc36d1a02fbedc2753a096848e7c1b0772f7654eab8e2c927dd53" +checksum = "41bfbdb21256b87a8b5e80fab81a8eed158178e812fd7ba451907518b2742f16" dependencies = [ "git2", ] @@ -131,9 +101,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.0.83" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +checksum = "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41" dependencies = [ "jobserver", "libc", @@ -151,19 +121,6 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15" -[[package]] -name = "cortex-m" -version = "0.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9075300b07c6a56263b9b582c214d0ff037b00d45ec9fde1cc711490c56f1bb9" -dependencies = [ - "aligned", - "bare-metal 0.2.5", - "bitfield", - "cortex-m 0.7.7", - "volatile-register", -] - [[package]] name = "cortex-m" version = "0.7.7" @@ -277,7 +234,7 @@ checksum = "03cdc46ec28bd728e67540c528013c6a10eb69a02eb31078a1bda695438cbfb8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -334,39 +291,11 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" -[[package]] -name = "generic-array" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd" -dependencies = [ - "typenum", -] - -[[package]] -name = "generic-array" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f797e67af32588215eaaab8327027ee8e71b9dd0b2b26996aedf20c030fce309" -dependencies = [ - "typenum", -] - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", -] - [[package]] name = "git2" -version = "0.18.1" +version = "0.18.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf97ba92db08df386e10c8ede66a2a0369bd277090afd8710e19e38de9ec0cd" +checksum = "232e6a7bfe35766bf715e55a88b39a700596c0ccfd88cd3680b4cdb40d66ef70" dependencies = [ "bitflags 2.5.0", "libc", @@ -405,7 +334,7 @@ version = "0.7.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cdc6457c0eb62c71aac4bc17216026d8410337c4126773b9c5daba343f17964f" dependencies = [ - "atomic-polyfill 1.0.3", + "atomic-polyfill", "hash32 0.2.1", "rustc_version 0.4.0", "serde", @@ -440,16 +369,16 @@ version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "99b7ec7ce4a9fa0c4801301dc2dfc836bc98ea06e8e7f04372c86cfcd171a80e" dependencies = [ - "num-complex 0.4.4", + "num-complex 0.4.5", "num-traits", "serde", ] [[package]] name = "indexmap" -version = "2.2.5" +version = "2.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4" +checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" dependencies = [ "equivalent", "hashbrown", @@ -457,24 +386,24 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "jobserver" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d" +checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6" dependencies = [ "libc", ] [[package]] name = "libc" -version = "0.2.152" +version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" +checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" [[package]] name = "libgit2-sys" @@ -496,9 +425,9 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" [[package]] name = "libz-sys" -version = "1.1.14" +version = "1.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "295c17e837573c8c821dbaeb3cceb3d745ad082f7572191409e69cbc1b3fd050" +checksum = "5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9" dependencies = [ "cc", "libc", @@ -557,27 +486,35 @@ source = "git+https://github.com/rust-embedded-community/menu?rev=7ba884993fea57 [[package]] name = "miniconf" version = "0.9.0" -source = "git+https://github.com/quartiq/miniconf#d6ef3973008ae818f21e1fbd2f8cd1c1d79dfe58" +source = "git+https://github.com/quartiq/miniconf#af999890beddf1fc920ae6706a3861288000cab9" dependencies = [ - "embedded-io", - "heapless 0.8.0", "itoa", - "log", "miniconf_derive", - "minimq", "serde", "serde-json-core", - "smlang", ] [[package]] name = "miniconf_derive" version = "0.9.0" -source = "git+https://github.com/quartiq/miniconf#d6ef3973008ae818f21e1fbd2f8cd1c1d79dfe58" +source = "git+https://github.com/quartiq/miniconf#af999890beddf1fc920ae6706a3861288000cab9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", +] + +[[package]] +name = "miniconf_mqtt" +version = "0.9.0" +source = "git+https://github.com/quartiq/miniconf#af999890beddf1fc920ae6706a3861288000cab9" +dependencies = [ + "embedded-io", + "heapless 0.8.0", + "log", + "miniconf", + "minimq", + "smlang", ] [[package]] @@ -613,9 +550,9 @@ checksum = "b4bb1638d419e12f8b1c43d9e639abd0d1424285bdea2f76aa231e233c63cd3a" [[package]] name = "nanorand" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "729eb334247daa1803e0a094d0a5c55711b85571179f5ec6e53eccfdf7008958" +checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3" [[package]] name = "nb" @@ -662,9 +599,9 @@ dependencies = [ [[package]] name = "num-complex" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" +checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6" dependencies = [ "num-traits", "serde", @@ -672,19 +609,18 @@ dependencies = [ [[package]] name = "num-integer" -version = "0.1.45" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" dependencies = [ - "autocfg", "num-traits", ] [[package]] name = "num-iter" -version = "0.1.43" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" +checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9" dependencies = [ "autocfg", "num-integer", @@ -749,7 +685,7 @@ checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -758,7 +694,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32bb382689ecd2c4d2d4df9fd56700ba8d43b7b31cca11018cc0e6f8aef39fd5" dependencies = [ - "cortex-m 0.7.7", + "cortex-m", ] [[package]] @@ -775,9 +711,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pin-project-lite" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" +checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" [[package]] name = "pin-utils" @@ -787,9 +723,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69d3587f8a9e599cc7ec2c00e331f71c4e69a5f9a4b8a6efd5b07466b9736f9a" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] name = "portable-atomic" @@ -834,9 +770,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.76" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c" +checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e" dependencies = [ "unicode-ident", ] @@ -871,9 +807,9 @@ version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c443db16326376bdd64377da268f6616d5f804aba8ce799bac7d1f7f244e9d51" dependencies = [ - "atomic-polyfill 1.0.3", + "atomic-polyfill", "bare-metal 1.0.0", - "cortex-m 0.7.7", + "cortex-m", "critical-section", "rtic-core", "rtic-macros", @@ -904,7 +840,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -919,9 +855,9 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "058c2397dbd5bb4c5650a0e368c3920953e458805ff5097a0511b8147b3619d7" dependencies = [ - "atomic-polyfill 1.0.3", + "atomic-polyfill", "cfg-if", - "cortex-m 0.7.7", + "cortex-m", "embedded-hal 1.0.0", "fugit", "rtic-time", @@ -954,7 +890,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "065d6058bb1204f51a562a67209e1817cf714759d5cf845aa45c75fa7b0b9d9b" dependencies = [ - "cortex-m 0.7.7", + "cortex-m", "ufmt-write", ] @@ -973,14 +909,14 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.21", + "semver 1.0.22", ] [[package]] name = "ryu" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" [[package]] name = "scopeguard" @@ -999,9 +935,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" +checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" [[package]] name = "semver-parser" @@ -1011,9 +947,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "sequential-storage" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8310c2ffc46948ef95f0848385c53fbfeed16ea98d82fb11cce51d4e11acc003" +checksum = "cc9294c2c7c725835fa69d5a144a29078159360bdc53593e5e977abf8d200f46" dependencies = [ "embedded-storage", ] @@ -1046,7 +982,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.58", ] [[package]] @@ -1060,26 +996,14 @@ dependencies = [ "yafnv", ] -[[package]] -name = "shared-bus" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f8438a40b91c8b9531c664e9680c55b92bd78cd6809a8b45b4512b1e5765f2" -dependencies = [ - "atomic-polyfill 0.1.11", - "cortex-m 0.6.7", - "embedded-hal 0.2.7", - "nb 0.1.3", -] - [[package]] name = "shared-bus" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6b8d3f0e34309c22ca4a9a27d24fa493e31573485f3493802b75b9d706756a6" dependencies = [ - "atomic-polyfill 1.0.3", - "cortex-m 0.7.7", + "atomic-polyfill", + "cortex-m", "embedded-hal 0.2.7", "nb 1.1.0", ] @@ -1106,28 +1030,27 @@ dependencies = [ [[package]] name = "smoltcp" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d2e3a36ac8fea7b94e666dfa3871063d6e0a5c9d5d4fec9a1a6b7b6760f0229" +checksum = "5a1a996951e50b5971a2c8c0fa05a381480d70a933064245c4a223ddc87ccc97" dependencies = [ "bitflags 1.3.2", "byteorder", "cfg-if", - "heapless 0.7.17", + "heapless 0.8.0", "managed", ] [[package]] name = "smoltcp-nal" version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd2ed2f8e7643a170506863ed0f52ad1dc5762abdcff27de825dde14fc8025f" +source = "git+https://github.com/quartiq/smoltcp-nal.git?branch=main#3e3373ef65f28a5f28c48c42bd8d4d370408e1f9" dependencies = [ "embedded-nal", "embedded-time", "heapless 0.7.17", "nanorand", - "shared-bus 0.2.5", + "shared-bus", "smoltcp", ] @@ -1148,7 +1071,7 @@ dependencies = [ "bbqueue", "bit_field", "built", - "cortex-m 0.7.7", + "cortex-m", "cortex-m-rt", "embedded-hal 0.2.7", "embedded-io", @@ -1161,6 +1084,7 @@ dependencies = [ "log", "mcp230xx", "miniconf", + "miniconf_mqtt", "minimq", "mono-clock", "mutex-trait", @@ -1178,7 +1102,7 @@ dependencies = [ "serde", "serde-json-core", "serial-settings", - "shared-bus 0.3.1", + "shared-bus", "smoltcp-nal", "spin", "stm32h7xx-hal", @@ -1201,19 +1125,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "362f288cd8341e9209587b889c385f323e82fc237b60c272868965bb879bb9b1" dependencies = [ "bare-metal 1.0.0", - "cortex-m 0.7.7", + "cortex-m", "cortex-m-rt", "vcell", ] [[package]] name = "stm32h7xx-hal" -version = "0.15.1" -source = "git+https://github.com/stm32-rs/stm32h7xx-hal.git?branch=master#03b8dcf0fd5dcce324e557830838eff729cfeecb" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bd869329be25440b24e2b3583a1c016151b4a54bc36d96d82af7fcd9d010b98" dependencies = [ "bare-metal 1.0.0", "cast", - "cortex-m 0.7.7", + "cortex-m", "embedded-dma", "embedded-hal 0.2.7", "embedded-storage", @@ -1239,9 +1164,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.48" +version = "2.0.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687" dependencies = [ "proc-macro2", "quote", @@ -1254,7 +1179,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e948d523b316939545d8b21a48c27aef150ce25321b9f95ff7978647a806a6fe" dependencies = [ - "cortex-m 0.7.7", + "cortex-m", "embedded-hal 0.2.7", "usb-device", "vcell", @@ -1266,7 +1191,7 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67fb822d5c615a0ae3a4795ee5b1d06381c7faf488d861c0a4fa8e6a88d5ff84" dependencies = [ - "cortex-m 0.7.7", + "cortex-m", "fugit", "rtic-monotonic", ] @@ -1297,12 +1222,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" -[[package]] -name = "typenum" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" - [[package]] name = "ufmt-write" version = "0.1.0" @@ -1311,9 +1230,9 @@ checksum = "e87a2ed6b42ec5e28cc3b94c09982969e9227600b2e3dcbc1db927a84c06bd69" [[package]] name = "unicode-bidi" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" [[package]] name = "unicode-ident" @@ -1323,9 +1242,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" dependencies = [ "tinyvec", ] diff --git a/Cargo.toml b/Cargo.toml index 14c251c38..7d2482c75 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,8 +16,7 @@ readme = "README.md" documentation = "https://docs.rs/stabilizer/" edition = "2021" # keep MSRV in sync in ci.yaml and Cargo.toml -rust-version = "1.66.1" -build = "build.rs" +rust-version = "1.74.1" exclude = [ ".gitignore", "doc/", @@ -71,8 +70,9 @@ usb-device = "0.3.2" usbd-serial = "0.2" # Keep this synced with the miniconf version in py/setup.py miniconf = "0.9" +miniconf_mqtt = "0.9" tca9539 = "0.2" -smoltcp-nal = { version = "0.4.1", features = ["shared-stack"]} +smoltcp-nal = { version = "0.4", features = ["shared-stack"], git = "https://github.com/quartiq/smoltcp-nal.git", branch = "main" } bbqueue = "0.5" postcard = "1" bit_field = "0.10.2" @@ -81,9 +81,9 @@ bit_field = "0.10.2" built = { version = "0.7", features = ["git2"], default-features = false } [dependencies.stm32h7xx-hal] -version = "0.15.1" -git = "https://github.com/stm32-rs/stm32h7xx-hal.git" -branch = "master" +version = "0.16.0" +#git = "https://github.com/stm32-rs/stm32h7xx-hal.git" +#branch = "master" features = ["stm32h743v", "rt", "ethernet", "xspi", "usb_hs"] [patch.crates-io.usbd-serial] @@ -93,6 +93,9 @@ rev = "ccff77578925942e40e0a2c7b6d397ad164fdedb" [patch.crates-io.miniconf] git = "https://github.com/quartiq/miniconf" +[patch.crates-io.miniconf_mqtt] +git = "https://github.com/quartiq/miniconf" + [features] nightly = [] pounder_v1_0 = [] diff --git a/src/net/mod.rs b/src/net/mod.rs index 76d51463b..18d551255 100644 --- a/src/net/mod.rs +++ b/src/net/mod.rs @@ -25,6 +25,7 @@ use telemetry::TelemetryClient; use core::fmt::Write; use heapless::String; use miniconf::JsonCoreSlash; +use miniconf_mqtt::minimq; use serde::Serialize; use smoltcp_nal::embedded_nal::SocketAddr; @@ -62,12 +63,12 @@ where for<'de> S: Default + JsonCoreSlash<'de, Y> + Clone, T: Serialize, { - pub miniconf: miniconf::MqttClient< + pub miniconf: miniconf_mqtt::MqttClient< 'static, S, NetworkReference, SystemTimer, - miniconf::minimq::broker::NamedBroker, + minimq::broker::NamedBroker, Y, >, pub processor: NetworkProcessor, @@ -114,21 +115,18 @@ where cortex_m::singleton!(: MqttStorage = MqttStorage::default()) .unwrap(); - let named_broker = miniconf::minimq::broker::NamedBroker::new( + let named_broker = minimq::broker::NamedBroker::new( &net_settings.broker, stack_manager.acquire_stack(), ) .unwrap(); - let settings = miniconf::MqttClient::new( + let settings = miniconf_mqtt::MqttClient::new( stack_manager.acquire_stack(), &prefix, clock, - miniconf::minimq::ConfigBuilder::new( - named_broker, - &mut store.settings, - ) - .client_id(&get_client_id(&net_settings.id, "settings")) - .unwrap(), + minimq::ConfigBuilder::new(named_broker, &mut store.settings) + .client_id(&get_client_id(&net_settings.id, "settings")) + .unwrap(), ) .unwrap();