A fork of pulp-os for the xteink4 adding custom apps
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

add: basic button polling

hansmrtn 8dd15162 450c54b1

+1520 -12
+1414
Cargo.lock
··· 1 + # This file is automatically @generated by Cargo. 2 + # It is not intended for manual editing. 3 + version = 4 4 + 5 + [[package]] 6 + name = "allocator-api2" 7 + version = "0.3.1" 8 + source = "registry+https://github.com/rust-lang/crates.io-index" 9 + checksum = "c583acf993cf4245c4acb0a2cc2ab1f9cc097de73411bb6d3647ff6af2b1013d" 10 + 11 + [[package]] 12 + name = "autocfg" 13 + version = "1.5.0" 14 + source = "registry+https://github.com/rust-lang/crates.io-index" 15 + checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" 16 + 17 + [[package]] 18 + name = "base64" 19 + version = "0.13.1" 20 + source = "registry+https://github.com/rust-lang/crates.io-index" 21 + checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" 22 + 23 + [[package]] 24 + name = "bitfield" 25 + version = "0.19.4" 26 + source = "registry+https://github.com/rust-lang/crates.io-index" 27 + checksum = "21ba6517c6b0f2bf08be60e187ab64b038438f22dd755614d8fe4d4098c46419" 28 + dependencies = [ 29 + "bitfield-macros", 30 + ] 31 + 32 + [[package]] 33 + name = "bitfield-macros" 34 + version = "0.19.4" 35 + source = "registry+https://github.com/rust-lang/crates.io-index" 36 + checksum = "f48d6ace212fdf1b45fd6b566bb40808415344642b76c3224c07c8df9da81e97" 37 + dependencies = [ 38 + "proc-macro2", 39 + "quote", 40 + "syn 2.0.117", 41 + ] 42 + 43 + [[package]] 44 + name = "bitflags" 45 + version = "2.11.0" 46 + source = "registry+https://github.com/rust-lang/crates.io-index" 47 + checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" 48 + 49 + [[package]] 50 + name = "bytemuck" 51 + version = "1.25.0" 52 + source = "registry+https://github.com/rust-lang/crates.io-index" 53 + checksum = "c8efb64bd706a16a1bdde310ae86b351e4d21550d98d056f22f8a7f7a2183fec" 54 + 55 + [[package]] 56 + name = "byteorder" 57 + version = "1.5.0" 58 + source = "registry+https://github.com/rust-lang/crates.io-index" 59 + checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" 60 + 61 + [[package]] 62 + name = "cfg-if" 63 + version = "1.0.4" 64 + source = "registry+https://github.com/rust-lang/crates.io-index" 65 + checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" 66 + 67 + [[package]] 68 + name = "const-default" 69 + version = "1.0.0" 70 + source = "registry+https://github.com/rust-lang/crates.io-index" 71 + checksum = "0b396d1f76d455557e1218ec8066ae14bba60b4b36ecd55577ba979f5db7ecaa" 72 + 73 + [[package]] 74 + name = "critical-section" 75 + version = "1.2.0" 76 + source = "registry+https://github.com/rust-lang/crates.io-index" 77 + checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" 78 + 79 + [[package]] 80 + name = "crypto-common" 81 + version = "0.1.7" 82 + source = "registry+https://github.com/rust-lang/crates.io-index" 83 + checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" 84 + dependencies = [ 85 + "generic-array", 86 + "typenum", 87 + ] 88 + 89 + [[package]] 90 + name = "darling" 91 + version = "0.20.11" 92 + source = "registry+https://github.com/rust-lang/crates.io-index" 93 + checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" 94 + dependencies = [ 95 + "darling_core 0.20.11", 96 + "darling_macro 0.20.11", 97 + ] 98 + 99 + [[package]] 100 + name = "darling" 101 + version = "0.21.3" 102 + source = "registry+https://github.com/rust-lang/crates.io-index" 103 + checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" 104 + dependencies = [ 105 + "darling_core 0.21.3", 106 + "darling_macro 0.21.3", 107 + ] 108 + 109 + [[package]] 110 + name = "darling" 111 + version = "0.23.0" 112 + source = "registry+https://github.com/rust-lang/crates.io-index" 113 + checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" 114 + dependencies = [ 115 + "darling_core 0.23.0", 116 + "darling_macro 0.23.0", 117 + ] 118 + 119 + [[package]] 120 + name = "darling_core" 121 + version = "0.20.11" 122 + source = "registry+https://github.com/rust-lang/crates.io-index" 123 + checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" 124 + dependencies = [ 125 + "fnv", 126 + "ident_case", 127 + "proc-macro2", 128 + "quote", 129 + "strsim", 130 + "syn 2.0.117", 131 + ] 132 + 133 + [[package]] 134 + name = "darling_core" 135 + version = "0.21.3" 136 + source = "registry+https://github.com/rust-lang/crates.io-index" 137 + checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" 138 + dependencies = [ 139 + "fnv", 140 + "ident_case", 141 + "proc-macro2", 142 + "quote", 143 + "syn 2.0.117", 144 + ] 145 + 146 + [[package]] 147 + name = "darling_core" 148 + version = "0.23.0" 149 + source = "registry+https://github.com/rust-lang/crates.io-index" 150 + checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" 151 + dependencies = [ 152 + "ident_case", 153 + "proc-macro2", 154 + "quote", 155 + "strsim", 156 + "syn 2.0.117", 157 + ] 158 + 159 + [[package]] 160 + name = "darling_macro" 161 + version = "0.20.11" 162 + source = "registry+https://github.com/rust-lang/crates.io-index" 163 + checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" 164 + dependencies = [ 165 + "darling_core 0.20.11", 166 + "quote", 167 + "syn 2.0.117", 168 + ] 169 + 170 + [[package]] 171 + name = "darling_macro" 172 + version = "0.21.3" 173 + source = "registry+https://github.com/rust-lang/crates.io-index" 174 + checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" 175 + dependencies = [ 176 + "darling_core 0.21.3", 177 + "quote", 178 + "syn 2.0.117", 179 + ] 180 + 181 + [[package]] 182 + name = "darling_macro" 183 + version = "0.23.0" 184 + source = "registry+https://github.com/rust-lang/crates.io-index" 185 + checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" 186 + dependencies = [ 187 + "darling_core 0.23.0", 188 + "quote", 189 + "syn 2.0.117", 190 + ] 191 + 192 + [[package]] 193 + name = "delegate" 194 + version = "0.13.5" 195 + source = "registry+https://github.com/rust-lang/crates.io-index" 196 + checksum = "780eb241654bf097afb00fc5f054a09b687dad862e485fdcf8399bb056565370" 197 + dependencies = [ 198 + "proc-macro2", 199 + "quote", 200 + "syn 2.0.117", 201 + ] 202 + 203 + [[package]] 204 + name = "digest" 205 + version = "0.10.7" 206 + source = "registry+https://github.com/rust-lang/crates.io-index" 207 + checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 208 + dependencies = [ 209 + "crypto-common", 210 + ] 211 + 212 + [[package]] 213 + name = "document-features" 214 + version = "0.2.12" 215 + source = "registry+https://github.com/rust-lang/crates.io-index" 216 + checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" 217 + dependencies = [ 218 + "litrs", 219 + ] 220 + 221 + [[package]] 222 + name = "embassy-embedded-hal" 223 + version = "0.5.0" 224 + source = "registry+https://github.com/rust-lang/crates.io-index" 225 + checksum = "554e3e840696f54b4c9afcf28a0f24da431c927f4151040020416e7393d6d0d8" 226 + dependencies = [ 227 + "embassy-futures", 228 + "embassy-hal-internal", 229 + "embassy-sync 0.7.2", 230 + "embedded-hal 0.2.7", 231 + "embedded-hal 1.0.0", 232 + "embedded-hal-async", 233 + "embedded-storage", 234 + "embedded-storage-async", 235 + "nb 1.1.0", 236 + ] 237 + 238 + [[package]] 239 + name = "embassy-executor" 240 + version = "0.9.1" 241 + source = "registry+https://github.com/rust-lang/crates.io-index" 242 + checksum = "06070468370195e0e86f241c8e5004356d696590a678d47d6676795b2e439c6b" 243 + dependencies = [ 244 + "critical-section", 245 + "document-features", 246 + "embassy-executor-macros", 247 + "embassy-executor-timer-queue", 248 + "log", 249 + ] 250 + 251 + [[package]] 252 + name = "embassy-executor-macros" 253 + version = "0.7.0" 254 + source = "registry+https://github.com/rust-lang/crates.io-index" 255 + checksum = "dfdddc3a04226828316bf31393b6903ee162238576b1584ee2669af215d55472" 256 + dependencies = [ 257 + "darling 0.20.11", 258 + "proc-macro2", 259 + "quote", 260 + "syn 2.0.117", 261 + ] 262 + 263 + [[package]] 264 + name = "embassy-executor-timer-queue" 265 + version = "0.1.0" 266 + source = "registry+https://github.com/rust-lang/crates.io-index" 267 + checksum = "2fc328bf943af66b80b98755db9106bf7e7471b0cf47dc8559cd9a6be504cc9c" 268 + 269 + [[package]] 270 + name = "embassy-futures" 271 + version = "0.1.2" 272 + source = "registry+https://github.com/rust-lang/crates.io-index" 273 + checksum = "dc2d050bdc5c21e0862a89256ed8029ae6c290a93aecefc73084b3002cdebb01" 274 + 275 + [[package]] 276 + name = "embassy-hal-internal" 277 + version = "0.3.0" 278 + source = "registry+https://github.com/rust-lang/crates.io-index" 279 + checksum = "95285007a91b619dc9f26ea8f55452aa6c60f7115a4edc05085cd2bd3127cd7a" 280 + dependencies = [ 281 + "num-traits", 282 + ] 283 + 284 + [[package]] 285 + name = "embassy-sync" 286 + version = "0.6.2" 287 + source = "registry+https://github.com/rust-lang/crates.io-index" 288 + checksum = "8d2c8cdff05a7a51ba0087489ea44b0b1d97a296ca6b1d6d1a33ea7423d34049" 289 + dependencies = [ 290 + "cfg-if", 291 + "critical-section", 292 + "embedded-io-async 0.6.1", 293 + "futures-sink", 294 + "futures-util", 295 + "heapless 0.8.0", 296 + ] 297 + 298 + [[package]] 299 + name = "embassy-sync" 300 + version = "0.7.2" 301 + source = "registry+https://github.com/rust-lang/crates.io-index" 302 + checksum = "73974a3edbd0bd286759b3d483540f0ebef705919a5f56f4fc7709066f71689b" 303 + dependencies = [ 304 + "cfg-if", 305 + "critical-section", 306 + "embedded-io-async 0.6.1", 307 + "futures-core", 308 + "futures-sink", 309 + "heapless 0.8.0", 310 + ] 311 + 312 + [[package]] 313 + name = "embassy-time" 314 + version = "0.5.0" 315 + source = "registry+https://github.com/rust-lang/crates.io-index" 316 + checksum = "f4fa65b9284d974dad7a23bb72835c4ec85c0b540d86af7fc4098c88cff51d65" 317 + dependencies = [ 318 + "cfg-if", 319 + "critical-section", 320 + "document-features", 321 + "embassy-time-driver", 322 + "embedded-hal 0.2.7", 323 + "embedded-hal 1.0.0", 324 + "embedded-hal-async", 325 + "futures-core", 326 + "log", 327 + ] 328 + 329 + [[package]] 330 + name = "embassy-time-driver" 331 + version = "0.2.1" 332 + source = "registry+https://github.com/rust-lang/crates.io-index" 333 + checksum = "a0a244c7dc22c8d0289379c8d8830cae06bb93d8f990194d0de5efb3b5ae7ba6" 334 + dependencies = [ 335 + "document-features", 336 + ] 337 + 338 + [[package]] 339 + name = "embassy-time-queue-utils" 340 + version = "0.3.0" 341 + source = "registry+https://github.com/rust-lang/crates.io-index" 342 + checksum = "80e2ee86063bd028a420a5fb5898c18c87a8898026da1d4c852af2c443d0a454" 343 + dependencies = [ 344 + "embassy-executor-timer-queue", 345 + "heapless 0.8.0", 346 + ] 347 + 348 + [[package]] 349 + name = "embedded-can" 350 + version = "0.4.1" 351 + source = "registry+https://github.com/rust-lang/crates.io-index" 352 + checksum = "e9d2e857f87ac832df68fa498d18ddc679175cf3d2e4aa893988e5601baf9438" 353 + dependencies = [ 354 + "nb 1.1.0", 355 + ] 356 + 357 + [[package]] 358 + name = "embedded-hal" 359 + version = "0.2.7" 360 + source = "registry+https://github.com/rust-lang/crates.io-index" 361 + checksum = "35949884794ad573cf46071e41c9b60efb0cb311e3ca01f7af807af1debc66ff" 362 + dependencies = [ 363 + "nb 0.1.3", 364 + "void", 365 + ] 366 + 367 + [[package]] 368 + name = "embedded-hal" 369 + version = "1.0.0" 370 + source = "registry+https://github.com/rust-lang/crates.io-index" 371 + checksum = "361a90feb7004eca4019fb28352a9465666b24f840f5c3cddf0ff13920590b89" 372 + 373 + [[package]] 374 + name = "embedded-hal-async" 375 + version = "1.0.0" 376 + source = "registry+https://github.com/rust-lang/crates.io-index" 377 + checksum = "0c4c685bbef7fe13c3c6dd4da26841ed3980ef33e841cddfa15ce8a8fb3f1884" 378 + dependencies = [ 379 + "embedded-hal 1.0.0", 380 + ] 381 + 382 + [[package]] 383 + name = "embedded-io" 384 + version = "0.6.1" 385 + source = "registry+https://github.com/rust-lang/crates.io-index" 386 + checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d" 387 + 388 + [[package]] 389 + name = "embedded-io" 390 + version = "0.7.1" 391 + source = "registry+https://github.com/rust-lang/crates.io-index" 392 + checksum = "9eb1aa714776b75c7e67e1da744b81a129b3ff919c8712b5e1b32252c1f07cc7" 393 + 394 + [[package]] 395 + name = "embedded-io-async" 396 + version = "0.6.1" 397 + source = "registry+https://github.com/rust-lang/crates.io-index" 398 + checksum = "3ff09972d4073aa8c299395be75161d582e7629cd663171d62af73c8d50dba3f" 399 + dependencies = [ 400 + "embedded-io 0.6.1", 401 + ] 402 + 403 + [[package]] 404 + name = "embedded-io-async" 405 + version = "0.7.0" 406 + source = "registry+https://github.com/rust-lang/crates.io-index" 407 + checksum = "2564b9f813c544241430e147d8bc454815ef9ac998878d30cc3055449f7fd4c0" 408 + dependencies = [ 409 + "embedded-io 0.7.1", 410 + ] 411 + 412 + [[package]] 413 + name = "embedded-storage" 414 + version = "0.3.1" 415 + source = "registry+https://github.com/rust-lang/crates.io-index" 416 + checksum = "a21dea9854beb860f3062d10228ce9b976da520a73474aed3171ec276bc0c032" 417 + 418 + [[package]] 419 + name = "embedded-storage-async" 420 + version = "0.4.1" 421 + source = "registry+https://github.com/rust-lang/crates.io-index" 422 + checksum = "1763775e2323b7d5f0aa6090657f5e21cfa02ede71f5dc40eead06d64dcd15cc" 423 + dependencies = [ 424 + "embedded-storage", 425 + ] 426 + 427 + [[package]] 428 + name = "enumset" 429 + version = "1.1.10" 430 + source = "registry+https://github.com/rust-lang/crates.io-index" 431 + checksum = "25b07a8dfbbbfc0064c0a6bdf9edcf966de6b1c33ce344bdeca3b41615452634" 432 + dependencies = [ 433 + "enumset_derive", 434 + ] 435 + 436 + [[package]] 437 + name = "enumset_derive" 438 + version = "0.14.0" 439 + source = "registry+https://github.com/rust-lang/crates.io-index" 440 + checksum = "f43e744e4ea338060faee68ed933e46e722fb7f3617e722a5772d7e856d8b3ce" 441 + dependencies = [ 442 + "darling 0.21.3", 443 + "proc-macro2", 444 + "quote", 445 + "syn 2.0.117", 446 + ] 447 + 448 + [[package]] 449 + name = "equivalent" 450 + version = "1.0.2" 451 + source = "registry+https://github.com/rust-lang/crates.io-index" 452 + checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" 453 + 454 + [[package]] 455 + name = "esp-alloc" 456 + version = "0.9.0" 457 + source = "registry+https://github.com/rust-lang/crates.io-index" 458 + checksum = "641e43d6a60244429117ef2fa7a47182120c7561336ea01f6fb08d634f46bae1" 459 + dependencies = [ 460 + "allocator-api2", 461 + "cfg-if", 462 + "document-features", 463 + "enumset", 464 + "esp-config", 465 + "esp-sync", 466 + "linked_list_allocator", 467 + "rlsf", 468 + ] 469 + 470 + [[package]] 471 + name = "esp-backtrace" 472 + version = "0.18.1" 473 + source = "registry+https://github.com/rust-lang/crates.io-index" 474 + checksum = "3318413fb566c7227387f67736cf70cd74d80a11f2bb31c7b95a9eb48d079669" 475 + dependencies = [ 476 + "cfg-if", 477 + "document-features", 478 + "esp-config", 479 + "esp-metadata-generated", 480 + "esp-println", 481 + "heapless 0.9.2", 482 + "riscv", 483 + "xtensa-lx", 484 + ] 485 + 486 + [[package]] 487 + name = "esp-bootloader-esp-idf" 488 + version = "0.4.0" 489 + source = "registry+https://github.com/rust-lang/crates.io-index" 490 + checksum = "02a56964ab5479ac20c9cf76fa3b0d3f2233b20b5d8554e81ef5d65f63c20567" 491 + dependencies = [ 492 + "cfg-if", 493 + "document-features", 494 + "embedded-storage", 495 + "esp-config", 496 + "esp-hal-procmacros", 497 + "esp-metadata-generated", 498 + "esp-rom-sys", 499 + "jiff", 500 + "log", 501 + "strum", 502 + ] 503 + 504 + [[package]] 505 + name = "esp-config" 506 + version = "0.6.1" 507 + source = "registry+https://github.com/rust-lang/crates.io-index" 508 + checksum = "102871054f8dd98202177b9890cb4b71d0c6fe1f1413b7a379a8e0841fc2473c" 509 + dependencies = [ 510 + "document-features", 511 + "esp-metadata-generated", 512 + "serde", 513 + "serde_yaml", 514 + "somni-expr", 515 + ] 516 + 517 + [[package]] 518 + name = "esp-hal" 519 + version = "1.0.0" 520 + source = "registry+https://github.com/rust-lang/crates.io-index" 521 + checksum = "54786287c0a61ca0f78cb0c338a39427551d1be229103b4444591796c579e093" 522 + dependencies = [ 523 + "bitfield", 524 + "bitflags", 525 + "bytemuck", 526 + "cfg-if", 527 + "critical-section", 528 + "delegate", 529 + "digest", 530 + "document-features", 531 + "embassy-embedded-hal", 532 + "embassy-futures", 533 + "embassy-sync 0.7.2", 534 + "embedded-can", 535 + "embedded-hal 1.0.0", 536 + "embedded-hal-async", 537 + "embedded-io 0.6.1", 538 + "embedded-io 0.7.1", 539 + "embedded-io-async 0.6.1", 540 + "embedded-io-async 0.7.0", 541 + "enumset", 542 + "esp-config", 543 + "esp-hal-procmacros", 544 + "esp-metadata-generated", 545 + "esp-riscv-rt", 546 + "esp-rom-sys", 547 + "esp-sync", 548 + "esp32", 549 + "esp32c2", 550 + "esp32c3", 551 + "esp32c6", 552 + "esp32h2", 553 + "esp32s2", 554 + "esp32s3", 555 + "fugit", 556 + "instability", 557 + "log", 558 + "nb 1.1.0", 559 + "paste", 560 + "portable-atomic", 561 + "rand_core 0.6.4", 562 + "rand_core 0.9.5", 563 + "riscv", 564 + "strum", 565 + "ufmt-write", 566 + "xtensa-lx", 567 + "xtensa-lx-rt", 568 + ] 569 + 570 + [[package]] 571 + name = "esp-hal-procmacros" 572 + version = "0.21.0" 573 + source = "registry+https://github.com/rust-lang/crates.io-index" 574 + checksum = "3e025a7a7a0affdb4ff913b5c4494aef96ee03d085bf83c27453ae3a71d50da6" 575 + dependencies = [ 576 + "document-features", 577 + "proc-macro-crate", 578 + "proc-macro2", 579 + "quote", 580 + "syn 2.0.117", 581 + "termcolor", 582 + ] 583 + 584 + [[package]] 585 + name = "esp-metadata-generated" 586 + version = "0.3.0" 587 + source = "registry+https://github.com/rust-lang/crates.io-index" 588 + checksum = "9a93e39c8ad8d390d248dc7b9f4b59a873f313bf535218b8e2351356972399e3" 589 + 590 + [[package]] 591 + name = "esp-println" 592 + version = "0.16.1" 593 + source = "registry+https://github.com/rust-lang/crates.io-index" 594 + checksum = "5a30e6c9fbcc01c348d46706fef8131c7775ab84c254a3cd65d0cd3f6414d592" 595 + dependencies = [ 596 + "document-features", 597 + "esp-metadata-generated", 598 + "esp-sync", 599 + "log", 600 + "portable-atomic", 601 + ] 602 + 603 + [[package]] 604 + name = "esp-radio-rtos-driver" 605 + version = "0.2.0" 606 + source = "registry+https://github.com/rust-lang/crates.io-index" 607 + checksum = "543bc31d1851afd062357e7810c1a9633f282fd3993583499a841ab497cbca6c" 608 + 609 + [[package]] 610 + name = "esp-riscv-rt" 611 + version = "0.13.0" 612 + source = "registry+https://github.com/rust-lang/crates.io-index" 613 + checksum = "502744a5b1e7268d27fd2a4e56ad45efe42ead517d6c517a6961540de949b0ee" 614 + dependencies = [ 615 + "document-features", 616 + "riscv", 617 + "riscv-rt", 618 + ] 619 + 620 + [[package]] 621 + name = "esp-rom-sys" 622 + version = "0.1.3" 623 + source = "registry+https://github.com/rust-lang/crates.io-index" 624 + checksum = "cd66cccc6dd2d13e9f33668a57717ab14a6d217180ec112e6be533de93e7ecbf" 625 + dependencies = [ 626 + "cfg-if", 627 + "document-features", 628 + "esp-metadata-generated", 629 + ] 630 + 631 + [[package]] 632 + name = "esp-rtos" 633 + version = "0.2.0" 634 + source = "registry+https://github.com/rust-lang/crates.io-index" 635 + checksum = "162ec711c8d06e79c67b75d01595539e86b0aac209643af98ca87a12250428b3" 636 + dependencies = [ 637 + "allocator-api2", 638 + "cfg-if", 639 + "document-features", 640 + "embassy-executor", 641 + "embassy-sync 0.7.2", 642 + "embassy-time-driver", 643 + "embassy-time-queue-utils", 644 + "esp-alloc", 645 + "esp-config", 646 + "esp-hal", 647 + "esp-hal-procmacros", 648 + "esp-metadata-generated", 649 + "esp-radio-rtos-driver", 650 + "esp-sync", 651 + "log", 652 + "portable-atomic", 653 + ] 654 + 655 + [[package]] 656 + name = "esp-sync" 657 + version = "0.1.1" 658 + source = "registry+https://github.com/rust-lang/crates.io-index" 659 + checksum = "d44974639b4e88914f83fe60d2832c00276657d7d857628fdfc966cc7302e8a8" 660 + dependencies = [ 661 + "cfg-if", 662 + "document-features", 663 + "embassy-sync 0.6.2", 664 + "embassy-sync 0.7.2", 665 + "esp-metadata-generated", 666 + "riscv", 667 + "xtensa-lx", 668 + ] 669 + 670 + [[package]] 671 + name = "esp32" 672 + version = "0.39.0" 673 + source = "registry+https://github.com/rust-lang/crates.io-index" 674 + checksum = "b76170a463d18f888a1ad258031901036fd827a9ef126733053ba5f8739fb0c8" 675 + dependencies = [ 676 + "critical-section", 677 + "vcell", 678 + ] 679 + 680 + [[package]] 681 + name = "esp32c2" 682 + version = "0.28.0" 683 + source = "registry+https://github.com/rust-lang/crates.io-index" 684 + checksum = "e62cf8932966b8d445b6f1832977b468178f0a84effb2e9fda89f60c24d45aa3" 685 + dependencies = [ 686 + "critical-section", 687 + "vcell", 688 + ] 689 + 690 + [[package]] 691 + name = "esp32c3" 692 + version = "0.31.0" 693 + source = "registry+https://github.com/rust-lang/crates.io-index" 694 + checksum = "356af3771d0d6536c735bf71136594f4d1cbb506abf6e0c51a6639e9bf4e7988" 695 + dependencies = [ 696 + "critical-section", 697 + "vcell", 698 + ] 699 + 700 + [[package]] 701 + name = "esp32c6" 702 + version = "0.22.0" 703 + source = "registry+https://github.com/rust-lang/crates.io-index" 704 + checksum = "8f5e511df672d79cd63365c92045135e01ba952b6bddd25b660baff5e1110f6b" 705 + dependencies = [ 706 + "critical-section", 707 + "vcell", 708 + ] 709 + 710 + [[package]] 711 + name = "esp32h2" 712 + version = "0.18.0" 713 + source = "registry+https://github.com/rust-lang/crates.io-index" 714 + checksum = "ed4a50bbd1380931e095e0973b9b12f782a9c481f2edf1f7c42e7eb4ff736d6d" 715 + dependencies = [ 716 + "critical-section", 717 + "vcell", 718 + ] 719 + 720 + [[package]] 721 + name = "esp32s2" 722 + version = "0.30.0" 723 + source = "registry+https://github.com/rust-lang/crates.io-index" 724 + checksum = "98574d4c577fbe888fe3e6df7fc80d25a05624d9998f7d7de1500ae21fcca78f" 725 + dependencies = [ 726 + "critical-section", 727 + "vcell", 728 + ] 729 + 730 + [[package]] 731 + name = "esp32s3" 732 + version = "0.34.0" 733 + source = "registry+https://github.com/rust-lang/crates.io-index" 734 + checksum = "1810d8ee4845ef87542af981e38eb80ab531d0ef1061e1486014ab7af74c337a" 735 + dependencies = [ 736 + "critical-section", 737 + "vcell", 738 + ] 739 + 740 + [[package]] 741 + name = "fnv" 742 + version = "1.0.7" 743 + source = "registry+https://github.com/rust-lang/crates.io-index" 744 + checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 745 + 746 + [[package]] 747 + name = "fugit" 748 + version = "0.3.9" 749 + source = "registry+https://github.com/rust-lang/crates.io-index" 750 + checksum = "4e639847d312d9a82d2e75b0edcc1e934efcc64e6cb7aa94f0b1fbec0bc231d6" 751 + dependencies = [ 752 + "gcd", 753 + ] 754 + 755 + [[package]] 756 + name = "futures-core" 757 + version = "0.3.32" 758 + source = "registry+https://github.com/rust-lang/crates.io-index" 759 + checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" 760 + 761 + [[package]] 762 + name = "futures-sink" 763 + version = "0.3.32" 764 + source = "registry+https://github.com/rust-lang/crates.io-index" 765 + checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" 766 + 767 + [[package]] 768 + name = "futures-task" 769 + version = "0.3.32" 770 + source = "registry+https://github.com/rust-lang/crates.io-index" 771 + checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" 772 + 773 + [[package]] 774 + name = "futures-util" 775 + version = "0.3.32" 776 + source = "registry+https://github.com/rust-lang/crates.io-index" 777 + checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" 778 + dependencies = [ 779 + "futures-core", 780 + "futures-task", 781 + "pin-project-lite", 782 + ] 783 + 784 + [[package]] 785 + name = "gcd" 786 + version = "2.3.0" 787 + source = "registry+https://github.com/rust-lang/crates.io-index" 788 + checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" 789 + 790 + [[package]] 791 + name = "generic-array" 792 + version = "0.14.7" 793 + source = "registry+https://github.com/rust-lang/crates.io-index" 794 + checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" 795 + dependencies = [ 796 + "typenum", 797 + "version_check", 798 + ] 799 + 800 + [[package]] 801 + name = "hash32" 802 + version = "0.3.1" 803 + source = "registry+https://github.com/rust-lang/crates.io-index" 804 + checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" 805 + dependencies = [ 806 + "byteorder", 807 + ] 808 + 809 + [[package]] 810 + name = "hashbrown" 811 + version = "0.16.1" 812 + source = "registry+https://github.com/rust-lang/crates.io-index" 813 + checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" 814 + 815 + [[package]] 816 + name = "heapless" 817 + version = "0.8.0" 818 + source = "registry+https://github.com/rust-lang/crates.io-index" 819 + checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" 820 + dependencies = [ 821 + "hash32", 822 + "stable_deref_trait", 823 + ] 824 + 825 + [[package]] 826 + name = "heapless" 827 + version = "0.9.2" 828 + source = "registry+https://github.com/rust-lang/crates.io-index" 829 + checksum = "2af2455f757db2b292a9b1768c4b70186d443bcb3b316252d6b540aec1cd89ed" 830 + dependencies = [ 831 + "hash32", 832 + "stable_deref_trait", 833 + ] 834 + 835 + [[package]] 836 + name = "heck" 837 + version = "0.5.0" 838 + source = "registry+https://github.com/rust-lang/crates.io-index" 839 + checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" 840 + 841 + [[package]] 842 + name = "ident_case" 843 + version = "1.0.1" 844 + source = "registry+https://github.com/rust-lang/crates.io-index" 845 + checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 846 + 847 + [[package]] 848 + name = "indexmap" 849 + version = "2.13.0" 850 + source = "registry+https://github.com/rust-lang/crates.io-index" 851 + checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" 852 + dependencies = [ 853 + "equivalent", 854 + "hashbrown", 855 + ] 856 + 857 + [[package]] 858 + name = "indoc" 859 + version = "2.0.7" 860 + source = "registry+https://github.com/rust-lang/crates.io-index" 861 + checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706" 862 + dependencies = [ 863 + "rustversion", 864 + ] 865 + 866 + [[package]] 867 + name = "instability" 868 + version = "0.3.11" 869 + source = "registry+https://github.com/rust-lang/crates.io-index" 870 + checksum = "357b7205c6cd18dd2c86ed312d1e70add149aea98e7ef72b9fdf0270e555c11d" 871 + dependencies = [ 872 + "darling 0.23.0", 873 + "indoc", 874 + "proc-macro2", 875 + "quote", 876 + "syn 2.0.117", 877 + ] 878 + 879 + [[package]] 880 + name = "itoa" 881 + version = "1.0.17" 882 + source = "registry+https://github.com/rust-lang/crates.io-index" 883 + checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" 884 + 885 + [[package]] 886 + name = "jiff" 887 + version = "0.2.20" 888 + source = "registry+https://github.com/rust-lang/crates.io-index" 889 + checksum = "c867c356cc096b33f4981825ab281ecba3db0acefe60329f044c1789d94c6543" 890 + dependencies = [ 891 + "jiff-static", 892 + "log", 893 + "portable-atomic", 894 + "portable-atomic-util", 895 + "serde_core", 896 + ] 897 + 898 + [[package]] 899 + name = "jiff-static" 900 + version = "0.2.20" 901 + source = "registry+https://github.com/rust-lang/crates.io-index" 902 + checksum = "f7946b4325269738f270bb55b3c19ab5c5040525f83fd625259422a9d25d9be5" 903 + dependencies = [ 904 + "proc-macro2", 905 + "quote", 906 + "syn 2.0.117", 907 + ] 908 + 909 + [[package]] 910 + name = "libc" 911 + version = "0.2.182" 912 + source = "registry+https://github.com/rust-lang/crates.io-index" 913 + checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" 914 + 915 + [[package]] 916 + name = "linked_list_allocator" 917 + version = "0.10.5" 918 + source = "registry+https://github.com/rust-lang/crates.io-index" 919 + checksum = "9afa463f5405ee81cdb9cc2baf37e08ec7e4c8209442b5d72c04cfb2cd6e6286" 920 + 921 + [[package]] 922 + name = "litrs" 923 + version = "1.0.0" 924 + source = "registry+https://github.com/rust-lang/crates.io-index" 925 + checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" 926 + 927 + [[package]] 928 + name = "log" 929 + version = "0.4.29" 930 + source = "registry+https://github.com/rust-lang/crates.io-index" 931 + checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" 932 + 933 + [[package]] 934 + name = "memchr" 935 + version = "2.8.0" 936 + source = "registry+https://github.com/rust-lang/crates.io-index" 937 + checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" 938 + 939 + [[package]] 940 + name = "nb" 941 + version = "0.1.3" 942 + source = "registry+https://github.com/rust-lang/crates.io-index" 943 + checksum = "801d31da0513b6ec5214e9bf433a77966320625a37860f910be265be6e18d06f" 944 + dependencies = [ 945 + "nb 1.1.0", 946 + ] 947 + 948 + [[package]] 949 + name = "nb" 950 + version = "1.1.0" 951 + source = "registry+https://github.com/rust-lang/crates.io-index" 952 + checksum = "8d5439c4ad607c3c23abf66de8c8bf57ba8adcd1f129e699851a6e43935d339d" 953 + 954 + [[package]] 955 + name = "num-traits" 956 + version = "0.2.19" 957 + source = "registry+https://github.com/rust-lang/crates.io-index" 958 + checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" 959 + dependencies = [ 960 + "autocfg", 961 + ] 962 + 963 + [[package]] 964 + name = "paste" 965 + version = "1.0.15" 966 + source = "registry+https://github.com/rust-lang/crates.io-index" 967 + checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" 968 + 969 + [[package]] 970 + name = "pin-project-lite" 971 + version = "0.2.16" 972 + source = "registry+https://github.com/rust-lang/crates.io-index" 973 + checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" 974 + 975 + [[package]] 976 + name = "portable-atomic" 977 + version = "1.13.1" 978 + source = "registry+https://github.com/rust-lang/crates.io-index" 979 + checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" 980 + 981 + [[package]] 982 + name = "portable-atomic-util" 983 + version = "0.2.5" 984 + source = "registry+https://github.com/rust-lang/crates.io-index" 985 + checksum = "7a9db96d7fa8782dd8c15ce32ffe8680bbd1e978a43bf51a34d39483540495f5" 986 + dependencies = [ 987 + "portable-atomic", 988 + ] 989 + 990 + [[package]] 991 + name = "proc-macro-crate" 992 + version = "3.4.0" 993 + source = "registry+https://github.com/rust-lang/crates.io-index" 994 + checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" 995 + dependencies = [ 996 + "toml_edit", 997 + ] 998 + 999 + [[package]] 1000 + name = "proc-macro2" 1001 + version = "1.0.106" 1002 + source = "registry+https://github.com/rust-lang/crates.io-index" 1003 + checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" 1004 + dependencies = [ 1005 + "unicode-ident", 1006 + ] 1007 + 1008 + [[package]] 1009 + name = "pulp-os" 1010 + version = "0.1.0" 1011 + dependencies = [ 1012 + "critical-section", 1013 + "embassy-executor", 1014 + "embassy-time", 1015 + "esp-alloc", 1016 + "esp-backtrace", 1017 + "esp-bootloader-esp-idf", 1018 + "esp-hal", 1019 + "esp-println", 1020 + "esp-rtos", 1021 + "log", 1022 + "static_cell", 1023 + ] 1024 + 1025 + [[package]] 1026 + name = "quote" 1027 + version = "1.0.44" 1028 + source = "registry+https://github.com/rust-lang/crates.io-index" 1029 + checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" 1030 + dependencies = [ 1031 + "proc-macro2", 1032 + ] 1033 + 1034 + [[package]] 1035 + name = "rand_core" 1036 + version = "0.6.4" 1037 + source = "registry+https://github.com/rust-lang/crates.io-index" 1038 + checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 1039 + 1040 + [[package]] 1041 + name = "rand_core" 1042 + version = "0.9.5" 1043 + source = "registry+https://github.com/rust-lang/crates.io-index" 1044 + checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" 1045 + 1046 + [[package]] 1047 + name = "riscv" 1048 + version = "0.15.0" 1049 + source = "registry+https://github.com/rust-lang/crates.io-index" 1050 + checksum = "b05cfa3f7b30c84536a9025150d44d26b8e1cc20ddf436448d74cd9591eefb25" 1051 + dependencies = [ 1052 + "critical-section", 1053 + "embedded-hal 1.0.0", 1054 + "paste", 1055 + "riscv-macros", 1056 + "riscv-pac", 1057 + ] 1058 + 1059 + [[package]] 1060 + name = "riscv-macros" 1061 + version = "0.3.0" 1062 + source = "registry+https://github.com/rust-lang/crates.io-index" 1063 + checksum = "7d323d13972c1b104aa036bc692cd08b822c8bbf23d79a27c526095856499799" 1064 + dependencies = [ 1065 + "proc-macro2", 1066 + "quote", 1067 + "syn 2.0.117", 1068 + ] 1069 + 1070 + [[package]] 1071 + name = "riscv-pac" 1072 + version = "0.2.0" 1073 + source = "registry+https://github.com/rust-lang/crates.io-index" 1074 + checksum = "8188909339ccc0c68cfb5a04648313f09621e8b87dc03095454f1a11f6c5d436" 1075 + 1076 + [[package]] 1077 + name = "riscv-rt" 1078 + version = "0.16.0" 1079 + source = "registry+https://github.com/rust-lang/crates.io-index" 1080 + checksum = "3d07b9f3a0eff773fc4df11f44ada4fa302e529bff4b7fe7e6a4b98a65ce9174" 1081 + dependencies = [ 1082 + "riscv", 1083 + "riscv-pac", 1084 + "riscv-rt-macros", 1085 + "riscv-target-parser", 1086 + ] 1087 + 1088 + [[package]] 1089 + name = "riscv-rt-macros" 1090 + version = "0.6.1" 1091 + source = "registry+https://github.com/rust-lang/crates.io-index" 1092 + checksum = "def519ddeeb5e43c2b4fc3952c27b3a86782fc05192f322b2309125cd85b1fc3" 1093 + dependencies = [ 1094 + "proc-macro2", 1095 + "quote", 1096 + "syn 2.0.117", 1097 + ] 1098 + 1099 + [[package]] 1100 + name = "riscv-target-parser" 1101 + version = "0.1.3" 1102 + source = "registry+https://github.com/rust-lang/crates.io-index" 1103 + checksum = "b1376b15f3ff160e9b1e8ea564ce427f2f6fcf77528cc0a8bf405cb476f9cea7" 1104 + 1105 + [[package]] 1106 + name = "rlsf" 1107 + version = "0.2.2" 1108 + source = "registry+https://github.com/rust-lang/crates.io-index" 1109 + checksum = "1646a59a9734b8b7a0ac51689388a60fe1625d4b956348e9de07591a1478457a" 1110 + dependencies = [ 1111 + "cfg-if", 1112 + "const-default", 1113 + "libc", 1114 + "rustversion", 1115 + "svgbobdoc", 1116 + ] 1117 + 1118 + [[package]] 1119 + name = "rustversion" 1120 + version = "1.0.22" 1121 + source = "registry+https://github.com/rust-lang/crates.io-index" 1122 + checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" 1123 + 1124 + [[package]] 1125 + name = "ryu" 1126 + version = "1.0.23" 1127 + source = "registry+https://github.com/rust-lang/crates.io-index" 1128 + checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" 1129 + 1130 + [[package]] 1131 + name = "serde" 1132 + version = "1.0.228" 1133 + source = "registry+https://github.com/rust-lang/crates.io-index" 1134 + checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" 1135 + dependencies = [ 1136 + "serde_core", 1137 + "serde_derive", 1138 + ] 1139 + 1140 + [[package]] 1141 + name = "serde_core" 1142 + version = "1.0.228" 1143 + source = "registry+https://github.com/rust-lang/crates.io-index" 1144 + checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" 1145 + dependencies = [ 1146 + "serde_derive", 1147 + ] 1148 + 1149 + [[package]] 1150 + name = "serde_derive" 1151 + version = "1.0.228" 1152 + source = "registry+https://github.com/rust-lang/crates.io-index" 1153 + checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" 1154 + dependencies = [ 1155 + "proc-macro2", 1156 + "quote", 1157 + "syn 2.0.117", 1158 + ] 1159 + 1160 + [[package]] 1161 + name = "serde_yaml" 1162 + version = "0.9.34+deprecated" 1163 + source = "registry+https://github.com/rust-lang/crates.io-index" 1164 + checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" 1165 + dependencies = [ 1166 + "indexmap", 1167 + "itoa", 1168 + "ryu", 1169 + "serde", 1170 + "unsafe-libyaml", 1171 + ] 1172 + 1173 + [[package]] 1174 + name = "somni-expr" 1175 + version = "0.2.0" 1176 + source = "registry+https://github.com/rust-lang/crates.io-index" 1177 + checksum = "3ed9b7648d5e8b2df6c5e49940c54bcdd2b4dd71eafc6e8f1c714eb4581b0f53" 1178 + dependencies = [ 1179 + "somni-parser", 1180 + ] 1181 + 1182 + [[package]] 1183 + name = "somni-parser" 1184 + version = "0.2.2" 1185 + source = "registry+https://github.com/rust-lang/crates.io-index" 1186 + checksum = "a0f368519fc6c85fc1afdb769fb5a51123f6158013e143656e25a3485a0d401c" 1187 + 1188 + [[package]] 1189 + name = "stable_deref_trait" 1190 + version = "1.2.1" 1191 + source = "registry+https://github.com/rust-lang/crates.io-index" 1192 + checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" 1193 + 1194 + [[package]] 1195 + name = "static_cell" 1196 + version = "2.1.1" 1197 + source = "registry+https://github.com/rust-lang/crates.io-index" 1198 + checksum = "0530892bb4fa575ee0da4b86f86c667132a94b74bb72160f58ee5a4afec74c23" 1199 + dependencies = [ 1200 + "portable-atomic", 1201 + ] 1202 + 1203 + [[package]] 1204 + name = "strsim" 1205 + version = "0.11.1" 1206 + source = "registry+https://github.com/rust-lang/crates.io-index" 1207 + checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" 1208 + 1209 + [[package]] 1210 + name = "strum" 1211 + version = "0.27.2" 1212 + source = "registry+https://github.com/rust-lang/crates.io-index" 1213 + checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf" 1214 + dependencies = [ 1215 + "strum_macros", 1216 + ] 1217 + 1218 + [[package]] 1219 + name = "strum_macros" 1220 + version = "0.27.2" 1221 + source = "registry+https://github.com/rust-lang/crates.io-index" 1222 + checksum = "7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7" 1223 + dependencies = [ 1224 + "heck", 1225 + "proc-macro2", 1226 + "quote", 1227 + "syn 2.0.117", 1228 + ] 1229 + 1230 + [[package]] 1231 + name = "svgbobdoc" 1232 + version = "0.3.0" 1233 + source = "registry+https://github.com/rust-lang/crates.io-index" 1234 + checksum = "f2c04b93fc15d79b39c63218f15e3fdffaa4c227830686e3b7c5f41244eb3e50" 1235 + dependencies = [ 1236 + "base64", 1237 + "proc-macro2", 1238 + "quote", 1239 + "syn 1.0.109", 1240 + "unicode-width", 1241 + ] 1242 + 1243 + [[package]] 1244 + name = "syn" 1245 + version = "1.0.109" 1246 + source = "registry+https://github.com/rust-lang/crates.io-index" 1247 + checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 1248 + dependencies = [ 1249 + "proc-macro2", 1250 + "quote", 1251 + "unicode-ident", 1252 + ] 1253 + 1254 + [[package]] 1255 + name = "syn" 1256 + version = "2.0.117" 1257 + source = "registry+https://github.com/rust-lang/crates.io-index" 1258 + checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" 1259 + dependencies = [ 1260 + "proc-macro2", 1261 + "quote", 1262 + "unicode-ident", 1263 + ] 1264 + 1265 + [[package]] 1266 + name = "termcolor" 1267 + version = "1.4.1" 1268 + source = "registry+https://github.com/rust-lang/crates.io-index" 1269 + checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" 1270 + dependencies = [ 1271 + "winapi-util", 1272 + ] 1273 + 1274 + [[package]] 1275 + name = "toml_datetime" 1276 + version = "0.7.5+spec-1.1.0" 1277 + source = "registry+https://github.com/rust-lang/crates.io-index" 1278 + checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" 1279 + dependencies = [ 1280 + "serde_core", 1281 + ] 1282 + 1283 + [[package]] 1284 + name = "toml_edit" 1285 + version = "0.23.10+spec-1.0.0" 1286 + source = "registry+https://github.com/rust-lang/crates.io-index" 1287 + checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" 1288 + dependencies = [ 1289 + "indexmap", 1290 + "toml_datetime", 1291 + "toml_parser", 1292 + "winnow", 1293 + ] 1294 + 1295 + [[package]] 1296 + name = "toml_parser" 1297 + version = "1.0.9+spec-1.1.0" 1298 + source = "registry+https://github.com/rust-lang/crates.io-index" 1299 + checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4" 1300 + dependencies = [ 1301 + "winnow", 1302 + ] 1303 + 1304 + [[package]] 1305 + name = "typenum" 1306 + version = "1.19.0" 1307 + source = "registry+https://github.com/rust-lang/crates.io-index" 1308 + checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" 1309 + 1310 + [[package]] 1311 + name = "ufmt-write" 1312 + version = "0.1.0" 1313 + source = "registry+https://github.com/rust-lang/crates.io-index" 1314 + checksum = "e87a2ed6b42ec5e28cc3b94c09982969e9227600b2e3dcbc1db927a84c06bd69" 1315 + 1316 + [[package]] 1317 + name = "unicode-ident" 1318 + version = "1.0.24" 1319 + source = "registry+https://github.com/rust-lang/crates.io-index" 1320 + checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" 1321 + 1322 + [[package]] 1323 + name = "unicode-width" 1324 + version = "0.1.14" 1325 + source = "registry+https://github.com/rust-lang/crates.io-index" 1326 + checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" 1327 + 1328 + [[package]] 1329 + name = "unsafe-libyaml" 1330 + version = "0.2.11" 1331 + source = "registry+https://github.com/rust-lang/crates.io-index" 1332 + checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" 1333 + 1334 + [[package]] 1335 + name = "vcell" 1336 + version = "0.1.3" 1337 + source = "registry+https://github.com/rust-lang/crates.io-index" 1338 + checksum = "77439c1b53d2303b20d9459b1ade71a83c716e3f9c34f3228c00e6f185d6c002" 1339 + 1340 + [[package]] 1341 + name = "version_check" 1342 + version = "0.9.5" 1343 + source = "registry+https://github.com/rust-lang/crates.io-index" 1344 + checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" 1345 + 1346 + [[package]] 1347 + name = "void" 1348 + version = "1.0.2" 1349 + source = "registry+https://github.com/rust-lang/crates.io-index" 1350 + checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" 1351 + 1352 + [[package]] 1353 + name = "winapi-util" 1354 + version = "0.1.11" 1355 + source = "registry+https://github.com/rust-lang/crates.io-index" 1356 + checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" 1357 + dependencies = [ 1358 + "windows-sys", 1359 + ] 1360 + 1361 + [[package]] 1362 + name = "windows-link" 1363 + version = "0.2.1" 1364 + source = "registry+https://github.com/rust-lang/crates.io-index" 1365 + checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" 1366 + 1367 + [[package]] 1368 + name = "windows-sys" 1369 + version = "0.61.2" 1370 + source = "registry+https://github.com/rust-lang/crates.io-index" 1371 + checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" 1372 + dependencies = [ 1373 + "windows-link", 1374 + ] 1375 + 1376 + [[package]] 1377 + name = "winnow" 1378 + version = "0.7.14" 1379 + source = "registry+https://github.com/rust-lang/crates.io-index" 1380 + checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" 1381 + dependencies = [ 1382 + "memchr", 1383 + ] 1384 + 1385 + [[package]] 1386 + name = "xtensa-lx" 1387 + version = "0.13.0" 1388 + source = "registry+https://github.com/rust-lang/crates.io-index" 1389 + checksum = "e012d667b0aa6d2592ace8ef145a98bff3e76cca7a644f4181ecd7a916ed289b" 1390 + dependencies = [ 1391 + "critical-section", 1392 + ] 1393 + 1394 + [[package]] 1395 + name = "xtensa-lx-rt" 1396 + version = "0.21.0" 1397 + source = "registry+https://github.com/rust-lang/crates.io-index" 1398 + checksum = "8709f037fb123fe7ff146d2bce86f9dc0dfc53045c016bfd9d703317b6502845" 1399 + dependencies = [ 1400 + "document-features", 1401 + "xtensa-lx", 1402 + "xtensa-lx-rt-proc-macros", 1403 + ] 1404 + 1405 + [[package]] 1406 + name = "xtensa-lx-rt-proc-macros" 1407 + version = "0.5.0" 1408 + source = "registry+https://github.com/rust-lang/crates.io-index" 1409 + checksum = "96fb42cd29c42f8744c74276e9f5bee7b06685bbe5b88df891516d72cb320450" 1410 + dependencies = [ 1411 + "proc-macro2", 1412 + "quote", 1413 + "syn 2.0.117", 1414 + ]
+106 -12
src/bin/main.rs
··· 10 10 use embassy_executor::Spawner; 11 11 use embassy_time::{Duration, Timer}; 12 12 use esp_backtrace as _; 13 + use esp_hal::analog::adc::{Adc, AdcCalCurve, AdcConfig, Attenuation}; 13 14 use esp_hal::clock::CpuClock; 15 + use esp_hal::gpio::{Input, InputConfig, Pull}; 16 + use esp_hal::peripherals::ADC1; 14 17 use esp_hal::timer::timg::TimerGroup; 15 18 use log::info; 16 19 17 20 extern crate alloc; 18 21 19 - // This creates a default app-descriptor required by the esp-idf bootloader. 20 - // For more information see: <https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-reference/system/app_image_format.html#application-description> 21 22 esp_bootloader_esp_idf::esp_app_desc!(); 22 23 24 + // ---- Button types ---- 25 + 26 + #[derive(Debug, Clone, Copy, PartialEq)] 27 + pub enum Button { 28 + Right, 29 + Left, 30 + Confirm, 31 + Back, 32 + VolUp, 33 + VolDown, 34 + Power, 35 + } 36 + 37 + impl Button { 38 + pub fn name(self) -> &'static str { 39 + match self { 40 + Button::Right => "Right", 41 + Button::Left => "Left", 42 + Button::Confirm => "Confirm", 43 + Button::Back => "Back", 44 + Button::VolUp => "Vol Up", 45 + Button::VolDown => "Vol Down", 46 + Button::Power => "Power", 47 + } 48 + } 49 + } 50 + 51 + // ---- Calibrated ADC thresholds (millivolts) ---- 52 + // Measured with AdcCalCurve. 53 + // Idle reads ~2851 mV on both channels. 54 + 55 + const TOLERANCE: u16 = 150; 56 + 57 + /// Decode GPIO1 resistor ladder (Right, Left, Confirm, Back) 58 + /// Values ordered low → high. Idle = ~2851. 59 + fn decode_gpio1(mv: u16) -> Option<Button> { 60 + if in_range(mv, 3, 50) { return Some(Button::Right); } 61 + if in_range(mv, 1113, TOLERANCE) { return Some(Button::Left); } 62 + if in_range(mv, 1984, TOLERANCE) { return Some(Button::Confirm); } 63 + if in_range(mv, 2556, TOLERANCE) { return Some(Button::Back); } 64 + None 65 + } 66 + 67 + /// Decode GPIO2 resistor ladder (Vol Down, Vol Up) 68 + /// Values ordered low → high. Idle = ~2851. 69 + fn decode_gpio2(mv: u16) -> Option<Button> { 70 + if in_range(mv, 3, 50) { return Some(Button::VolDown); } 71 + if in_range(mv, 1659, TOLERANCE) { return Some(Button::VolUp); } 72 + None 73 + } 74 + 75 + fn in_range(val: u16, center: u16, tol: u16) -> bool { 76 + val >= center.saturating_sub(tol) && val <= center.saturating_add(tol) 77 + } 78 + 79 + 23 80 #[allow( 24 81 clippy::large_stack_frames, 25 82 reason = "it's not unusual to allocate larger buffers etc. in main" 26 83 )] 27 84 #[esp_rtos::main] 28 85 async fn main(spawner: Spawner) -> ! { 29 - // generator version: 1.2.0 30 - 31 86 esp_println::logger::init_logger_from_env(); 32 - 33 87 let config = esp_hal::Config::default().with_cpu_clock(CpuClock::max()); 34 88 let peripherals = esp_hal::init(config); 35 - 36 89 esp_alloc::heap_allocator!(#[esp_hal::ram(reclaimed)] size: 66320); 37 90 38 91 let timg0 = TimerGroup::new(peripherals.TIMG0); ··· 40 93 esp_hal::interrupt::software::SoftwareInterruptControl::new(peripherals.SW_INTERRUPT); 41 94 esp_rtos::start(timg0.timer0, sw_interrupt.software_interrupt0); 42 95 43 - info!("Embassy initialized!"); 96 + info!("pulp-os booting..."); 44 97 45 - // TODO: Spawn some tasks 98 + // --- ADC setup with calibration --- 99 + let mut adc1_config = AdcConfig::new(); 100 + let mut btn_row1_pin = adc1_config.enable_pin_with_cal::<_, AdcCalCurve<ADC1>>( 101 + peripherals.GPIO1, 102 + Attenuation::_11dB, 103 + ); 104 + let mut btn_row2_pin = adc1_config.enable_pin_with_cal::<_, AdcCalCurve<ADC1>>( 105 + peripherals.GPIO2, 106 + Attenuation::_11dB, 107 + ); 108 + let mut adc1 = Adc::new(peripherals.ADC1, adc1_config).into_async(); 109 + 110 + // Power button: digital, active LOW 111 + let power_btn = Input::new( 112 + peripherals.GPIO3, 113 + InputConfig::default().with_pull(Pull::Up), 114 + ); 115 + 46 116 let _ = spawner; 47 117 118 + let mut last_button: Option<Button> = None; 119 + 48 120 loop { 49 - info!("Hello world!"); 50 - Timer::after(Duration::from_secs(1)).await; 51 - } 121 + // Read current button state 122 + let current = if power_btn.is_low() { 123 + Some(Button::Power) 124 + } else { 125 + let val1: u16 = adc1.read_oneshot(&mut btn_row1_pin).await; 126 + let val2: u16 = adc1.read_oneshot(&mut btn_row2_pin).await; 127 + decode_gpio1(val1).or_else(|| decode_gpio2(val2)) 128 + }; 129 + 130 + // Log transitions only 131 + match (last_button, current) { 132 + (None, Some(btn)) => { 133 + info!("[BTN] {} pressed", btn.name()); 134 + } 135 + (Some(btn), None) => { 136 + info!("[BTN] {} released", btn.name()); 137 + } 138 + (Some(old), Some(new)) if old != new => { 139 + info!("[BTN] {} released", old.name()); 140 + info!("[BTN] {} pressed", new.name()); 141 + } 142 + _ => {} 143 + } 52 144 53 - // for inspiration have a look at the examples at https://github.com/esp-rs/esp-hal/tree/esp-hal-v1.0.0/examples 145 + last_button = current; 146 + Timer::after(Duration::from_millis(50)).await; 147 + } 54 148 }