Skip to content

Failed to build for ESP Wrover Kit #79

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
artisdom opened this issue Mar 19, 2025 · 9 comments
Open

Failed to build for ESP Wrover Kit #79

artisdom opened this issue Mar 19, 2025 · 9 comments

Comments

@artisdom
Copy link

Had a quick search with the error,
error[E0787]: the `asm!` macro is not allowed in naked functions

Found this:
PacktPublishing/Asynchronous-Programming-in-Rust#31
rust-lang/rust#128651

looks like the "asm!" macro is not allowed in naked functions, and need to be updated to use "naked_asm!" macro.

Guessing the fix would include updating the "esp-display-interface-spi-dma" package, so it can use newer version of "esp-hal" to avoid this error ?

https://github.com/esp-rs/xtensa-lx-rt
https://github.com/esp-rs/xtensa-lx
https://github.com/esp-rs/esp-hal/
https://github.com/georgik/esp-display-interface-spi-dma

$ cd esp32
$ cargo run --release --features esp32-wrover-kit
    Updating crates.io index
  Downloaded compiler_builtins v0.1.138
  Downloaded object v0.36.5
  Downloaded 2 crates (528.5 KB) in 0.63s
   Compiling compiler_builtins v0.1.138
   Compiling core v0.0.0 (C:\Users\Ted\.rustup\toolchains\esp\lib\rustlib\src\rust\library\core)
   Compiling proc-macro2 v1.0.94
   Compiling unicode-ident v1.0.18
   Compiling serde v1.0.219
   Compiling windows_x86_64_msvc v0.52.6
   Compiling autocfg v1.4.0
   Compiling rustversion v1.0.20
   Compiling heck v0.5.0
   Compiling anyhow v1.0.97
   Compiling fnv v1.0.7
   Compiling strsim v0.11.1
   Compiling ident_case v1.0.1
   Compiling hashbrown v0.15.2
   Compiling az v1.2.1
   Compiling heapless v0.8.0
   Compiling equivalent v1.0.2
   Compiling winnow v0.7.4
   Compiling xtensa-lx v0.9.0
   Compiling typenum v1.18.0
   Compiling windows-targets v0.52.6
   Compiling windows-sys v0.59.0
   Compiling version_check v0.9.5
   Compiling embedded-hal-async v1.0.0
   Compiling embassy-time-driver v0.1.0
   Compiling embedded-io-async v0.6.1
   Compiling embassy-time-queue-driver v0.1.0
   Compiling portable-atomic v1.11.0
   Compiling log v0.4.26
   Compiling zerocopy v0.8.23
   Compiling embassy-sync v0.6.2
   Compiling cfg-if v1.0.0
   Compiling indexmap v2.8.0
   Compiling esp32 v0.34.0
   Compiling paste v1.0.15
   Compiling spooky-esp32 v0.11.0 (C:\r\esp32-spooky-maze-game\esp32)
   Compiling num-traits v0.2.19
   Compiling lock_api v0.4.12
   Compiling generic-array v0.14.7
   Compiling quote v1.0.40
   Compiling litrs v0.4.1
   Compiling syn v2.0.100
   Compiling proc-macro-error-attr2 v2.0.0
   Compiling document-features v0.2.11
   Compiling winapi-util v0.1.9
   Compiling termcolor v1.4.1
   Compiling esp-config v0.2.0
   Compiling darling_core v0.20.10
   Compiling proc-macro-error2 v2.0.1
   Compiling serde_derive v1.0.219
   Compiling esp-build v0.1.0
   Compiling strum_macros v0.26.4
   Compiling enum-as-inner v0.6.1
   Compiling delegate v0.13.2
   Compiling esp-println v0.12.0
   Compiling esp-backtrace v0.14.2
   Compiling darling_macro v0.20.10
   Compiling darling v0.20.10
   Compiling enumset_derive v0.10.0
   Compiling xtensa-lx-rt-proc-macros v0.2.2
   Compiling strum v0.26.3
   Compiling rustc-std-workspace-core v1.99.0 (C:\Users\Ted\.rustup\toolchains\esp\lib\rustlib\src\rust\library\rustc-std-workspace-core)
   Compiling alloc v0.0.0 (C:\Users\Ted\.rustup\toolchains\esp\lib\rustlib\src\rust\library\alloc)
   Compiling toml_datetime v0.6.8
   Compiling serde_spanned v0.6.8
   Compiling basic-toml v0.1.10
   Compiling minijinja v2.8.0
   Compiling toml_edit v0.22.24
   Compiling esp-metadata v0.4.0
   Compiling esp-hal v0.22.0
   Compiling byteorder v1.5.0
   Compiling stable_deref_trait v1.2.0
   Compiling nb v1.1.0
   Compiling embedded-hal v1.0.0
   Compiling critical-section v1.2.0
   Compiling rand_core v0.6.4
   Compiling scopeguard v1.2.0
   Compiling micromath v2.1.0
   Compiling pin-project-lite v0.2.16
   Compiling futures-core v0.3.31
   Compiling futures-task v0.3.31
   Compiling pin-utils v0.1.0
   Compiling nb v0.1.3
   Compiling void v1.0.2
   Compiling futures-util v0.3.31
   Compiling hash32 v0.3.1
   Compiling embedded-io v0.6.1
   Compiling embedded-hal v0.2.7
   Compiling embedded-dma v0.2.0
   Compiling bare-metal v1.0.0
   Compiling display-interface v0.5.0
   Compiling spin v0.9.8
   Compiling futures-sink v0.3.31
   Compiling embedded-storage v0.3.1
   Compiling mutex-trait v0.2.0
   Compiling enumset v1.1.5
   Compiling vcell v0.1.3
   Compiling gcd v2.3.0
   Compiling embedded-storage-async v0.4.1
   Compiling r0 v1.0.0
   Compiling embassy-futures v0.1.1
   Compiling fugit v0.3.7
   Compiling toml v0.8.20
   Compiling proc-macro-crate v3.3.0
   Compiling rand v0.8.5
   Compiling embedded-hal-nb v1.0.0
   Compiling embedded-can v0.4.1
   Compiling bitfield v0.17.0
   Compiling ufmt-write v0.1.0
   Compiling byte-slice-cast v1.2.3
   Compiling bitflags v2.9.0
   Compiling bytemuck v1.22.0
   Compiling float-cmp v0.9.0
   Compiling chrono v0.4.40
   Compiling linked_list_allocator v0.10.5
   Compiling display-interface-spi v0.5.0
   Compiling esp-bsp v0.4.1
   Compiling embedded-graphics-core v0.4.0
   Compiling esp-alloc v0.5.0
   Compiling micromath v1.1.1
   Compiling accelerometer v0.12.0
   Compiling embassy-time v0.3.2
   Compiling icm42670 v0.2.0
   Compiling embedded-graphics v0.8.1
   Compiling mipidsi v0.8.0
   Compiling ppv-lite86 v0.2.21
   Compiling esp-hal-procmacros v0.15.0
   Compiling embassy-embedded-hal v0.2.0
   Compiling rand_chacha v0.3.1
   Compiling tinybmp v0.6.0
   Compiling embedded-graphics-framebuf v0.3.0 (https://github.com/georgik/embedded-graphics-framebuf.git?branch=feature%2Fembedded-graphics-0.8#26b1aa5e)
   Compiling xtensa-lx-rt v0.17.2
   Compiling spooky-core v0.7.0 (C:\r\esp32-spooky-maze-game\spooky-core)
   Compiling spooky-embedded v0.11.0 (C:\r\esp32-spooky-maze-game\spooky-embedded)
error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\lib.rs:158:9
    |
158 |           asm!($($x)* $($opts)*)
    |           ^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead
    |
   ::: C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:116:5
    |
116 | /     cfg_asm!(
117 | |     {
118 | |         "
119 | |         s32i    a2,  sp, +XT_STK_A2
...   |
268 | |     options(noreturn)
269 | |     );
    | |_____- in this macro invocation
    |
    = note: this error originates in the macro `cfg_asm` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\lib.rs:158:9
    |
158 |           asm!($($x)* $($opts)*)
    |           ^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead
    |
   ::: C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:359:5
    |
359 | /     cfg_asm!(
360 | |     {
361 | |         "
362 | |         l32i    a3,  sp, +XT_STK_SAR
...   |
467 | |         ",
468 | |     }, options(noreturn));
    | |_________________________- in this macro invocation
    |
    = note: this error originates in the macro `cfg_asm` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:507:5
    |
507 | /     asm!(
508 | |         "
509 | |         SAVE_CONTEXT 1
...   |
537 | |         options(noreturn)
538 | |     )
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:551:5
    |
551 | /     asm!(
552 | |         "
553 | |         mov     a0, a1                     // save a1/sp
554 | |         addmi   sp, sp, -XT_STK_FRMSZ      // only allow multiple of 256
...   |
596 | |         options(noreturn)
597 | |     )
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:629:5
    |
629 |     asm!("HANDLE_INTERRUPT_LEVEL 2", options(noreturn));
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:641:5
    |
641 |     asm!("HANDLE_INTERRUPT_LEVEL 3", options(noreturn));
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:653:5
    |
653 |     asm!("HANDLE_INTERRUPT_LEVEL 4", options(noreturn));
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:665:5
    |
665 |     asm!("HANDLE_INTERRUPT_LEVEL 5", options(noreturn));
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:677:5
    |
677 |     asm!("HANDLE_INTERRUPT_LEVEL 6", options(noreturn));
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\asm.rs:689:5
    |
689 |     asm!("HANDLE_INTERRUPT_LEVEL 7", options(noreturn));
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:179:5
    |
179 | /     asm!(
180 | |         "
181 | |         wsr a0, EXCSAVE1 // preserve a0
182 | |         rsr a0, EXCCAUSE // get exception cause
...   |
188 | |         options(noreturn)
189 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:196:5
    |
196 | /     asm!(
197 | |         "
198 | |         wsr a0, EXCSAVE1 // preserve a0
199 | |         rsr a0, EXCCAUSE // get exception cause
...   |
208 | |         options(noreturn)
209 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:216:5
    |
216 | /     asm!(
217 | |         "
218 | |     wsr a0, EXCSAVE1                   // preserve a0 (EXCSAVE1 can be reused as long as there
219 | |                                        // is no double exception in the first exception until
...   |
223 | |         options(noreturn)
224 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:231:5
    |
231 | /     asm!(
232 | |         "
233 | |     wsr a0, EXCSAVE2 // preserve a0
234 | |     call0 __naked_level_2_interrupt     // used as long jump
235 | |     ",
236 | |         options(noreturn)
237 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:244:5
    |
244 | /     asm!(
245 | |         "
246 | |     wsr a0, EXCSAVE3 // preserve a0
247 | |     call0 __naked_level_3_interrupt     // used as long jump
248 | |     ",
249 | |         options(noreturn)
250 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:257:5
    |
257 | /     asm!(
258 | |         "
259 | |     wsr a0, EXCSAVE4 // preserve a0
260 | |     call0 __naked_level_4_interrupt     // used as long jump
261 | |     ",
262 | |         options(noreturn)
263 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:270:5
    |
270 | /     asm!(
271 | |         "
272 | |     wsr a0, EXCSAVE5 // preserve a0
273 | |     call0 __naked_level_5_interrupt     // used as long jump
274 | |     ",
275 | |         options(noreturn)
276 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:283:5
    |
283 | /     asm!(
284 | |         "
285 | |     wsr a0, EXCSAVE6 // preserve a0
286 | |     call0 __naked_level_6_interrupt     // used as long jump
287 | |     ",
288 | |         options(noreturn)
289 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:296:5
    |
296 | /     asm!(
297 | |         "
298 | |     wsr a0, EXCSAVE7 // preserve a0
299 | |     call0 __naked_level_7_interrupt     // used as long jump
300 | |     ",
301 | |         options(noreturn)
302 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:309:5
    |
309 | /     asm!(
310 | |         "
311 | |         s32e    a0, a5, -16
312 | |         s32e    a1, a5, -12
...   |
317 | |         options(noreturn)
318 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:325:5
325 | /     asm!(
326 | |         "
327 | |         l32e    a0, a5, -16
328 | |         l32e    a1, a5, -12
...   |
355 | |         options(noreturn)
356 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:363:5
    |
363 | /     asm!(
364 | |         "
365 | |         s32e    a0, a9, -16
366 | |         l32e    a0, a1, -12
...   |
377 | |         options(noreturn)
378 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:385:5
    |
385 | /     asm!(
386 | |         "
387 | |         l32e    a0, a9, -16
388 | |         l32e    a1, a9, -12
...   |
399 | |         options(noreturn)
400 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:407:5
    |
407 | /     asm!(
408 | |         "
409 | |         s32e    a0,  a13, -16
410 | |         l32e    a0,  a1,  -12
...   |
425 | |         options(noreturn)
426 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

error[E0787]: the `asm!` macro is not allowed in naked functions
   --> C:\Users\Ted\.cargo\registry\src\index.crates.io-6f17d22bba15001f\xtensa-lx-rt-0.17.2\src\exception\context.rs:433:5
    |
433 | /     asm!(
434 | |         "
435 | |         l32e    a0,  a13, -16
436 | |         l32e    a1,  a13, -12
...   |
451 | |         options(noreturn)
452 | |     );
    | |_____^ consider using the `naked_asm!` macro instead

For more information about this error, try `rustc --explain E0787`.
error: could not compile `xtensa-lx-rt` (lib) due to 25 previous errors
warning: build failed, waiting for other jobs to finish...
@georgik
Copy link
Owner

georgik commented Mar 19, 2025

Hi @artisdom . Thank you for the notification.

The problem is caused by older hal and newer compiler.
Meanwhile I was able to upgrade DMA to ESP-HAL 1.0.0 code in other project: https://github.com/georgik/esp32-conways-game-of-life-rs.
Check out the part for with esp32-s3-box-minimal, there is also other version with Bevy ECS.

BTW: Are you still using Wrover-kit or you need just ESP32 target? I'm just wondering, since it's not manufactured anymore. Let me know, so that I can update examples to match the HW.

@artisdom
Copy link
Author

Hi @georgik, thanks for the quick response,

since our team have a few Wrover-kit already, so we're using it do prototyping quite often,
so it'll be good to have examples working for them, otherwise we'll have keep buying new hardware, while leaving existing hardware in waste.

will have a look at esp32-conways-game-of-life-rs as suggested. :)

@georgik
Copy link
Owner

georgik commented Mar 19, 2025

Thanks @artisdom for the feedback, that is valuable insight. I will try to add Wrover-kit version correction.

@georgik
Copy link
Owner

georgik commented Mar 19, 2025

@artisdom I've added wrover-kit to Conway's repo: https://github.com/georgik/esp32-conways-game-of-life-rs/tree/main/esp32-wrover-kit

Limitation: The resolution in the example is set to: 320x100

It seems that there is an issue with PSRAM initialization, because I'm getting only IRAM, which is limited on ESP32 with Rust no_std thanks to the hole in the middle of memory caused by placement of WiFi, this is not an issue in later chips. Some details:
https://github.com/georgik/esp32-lang-lab?tab=readme-ov-file#user-content-fnref-2-9bc7a43b7e99df89bb8d31793ec7d59c
The default no_std allocator simply does not support non-continuous memory.

If you spot a problem, let me know. Because with old Spooky we had PSRAM working without problem.

Please, keep in mind that for Bevy ECS based examples, you'll need 1.85, which requires explicit specification of version, since it was still not marked as latest:

espup install --toolchain-version 1.85.0.0
source ~/export-esp.sh

Once this is resolved, I will get back to Spooky Maze repo and do the upgrade to esp-hal. Yet, this repo is slightly more complex, since it has interaction with more peripherals and each board is using different way of controlling the app. Hopefull Bevy could help to simplify it.

@georgik
Copy link
Owner

georgik commented Mar 19, 2025

Ou, I see the issue. The allocation does not happen on heap, but on stack. Yay. Should be replaced by alloc and then we can have the whole screen buffer.

@georgik
Copy link
Owner

georgik commented Mar 19, 2025

Solved by introducing Heap Based framebuffer.
@artisdom Check out this version:
https://github.com/georgik/esp32-conways-game-of-life-rs/blob/main/docs/esp32-wrover-kit.jpg

@artisdom
Copy link
Author

Solved by introducing Heap Based framebuffer. @artisdom Check out this version: https://github.com/georgik/esp32-conways-game-of-life-rs/blob/main/docs/esp32-wrover-kit.jpg

Awesome work, very much appreciated,
the working example will help a lot, as we can build/run and start experimenting with it straight away.

@artisdom
Copy link
Author

And happy to report back, the code in "esp32-conways-game-of-life-rs" repo is running smoothly on my Wrover Kit now. :)

@georgik
Copy link
Owner

georgik commented Mar 31, 2025

Small update. I'm working on esp-hal 1.0.0 - with Bevy 0.16 on branch https://github.com/georgik/esp32-spooky-maze-game/tree/feature/bevy
Initial concept renders few tiles on esp32-s3-box, plus works partially on desktop. I will post more updates later. I welcome any additional input.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants