Closed mykmelez closed 3 years ago
First of all, thanks for trying and congrats for getting that far!
Boot-looping on an ESP32-S2 board is not to be unexpected, because the ESP-IDF bindings in my esp-idf-sys crate are currently only for ESP32 (non-S2 version). (And for ESP-IDF 4.1 for that matter.)
This (or more likely next) weekend, I'll update them to support ESP32-S2. And the latest ESP-IDF in PlatformIO. The process is a bit involved, as I first need to update my Rust fork with the latest changes of @mabezdev , as they introduce ESP32-S2 MCU support, as a new Rust target. Then I need to push to github all changes I have lying around, like a minimal support for embedded-hal on top of ESP-IDF.
On a positive note, if you happen to have an ESP32S2 with an LCD screen, we might be able to get it going given that I now have just-enough SPI support to drive an LCD screen with the embedded-graphics crate!
So, sorry for the troubles and I'll let you know once these changes are in.
In the meantime, if you have a pure ESP32 board, the current demo should work with it.
Thanks for the quick response! Looking forward to trying this out again with the ESP32-S2 once you've updated the bindings. In the meantime, I've ordered an ESP32-DevKitC-32E, which should arrive tomorrow, and I'll try it out on that board once it arrives!
I would like to ask some digressions. Can you elaborate on the environment required to compile PlugSorbet? I encountered many errors when compiling this project.
@mykmelez Small update: support for Rust STD on ESP32S2 might have to wait a bit due to lack of atomics support on the ESP32S2 (and ESP32C3) chip. The issue is being worked on however. More info here: https://github.com/espressif/rust-esp32-example/issues/3
@Rosabis, were you asking me that question, and was it a question about PluotSorbet? If so, I haven't compiled it in years, but as I recall, you need at least the TypeScript compiler, emscripten, and a Java JRE to compile it.
@mykmelez @Rosabis You are commenting in the wrong repo, and in the wrong issue.
@mykmelez But thanks for clarifying the situation anyway! :)
@mykmelez :
Update:
There is a very, very, very preliminary support for ESP32-S2 and ESP32-C3 (the riscv chip) with STD.
To test it, you'll need to pull the latest rust-esp32-std-hello demo, but most importantly, you'll have to compile from source the new Rust STD compiler fork, which is in branch stable_V1.53.0 by following the instructions in the README.md file of that branch.
A few notes:
Let me know if you decide to give it a try and whether it does / does not work for you!
Confirmed: the demo crate is working on S2. (I tried it on esp32-s2-kaluga-1 specifically.)
By the way I can even draw on the kaluga-1 LED screen using a (slightly modified) version of the LED code in this demo crate. However, the colors seem off. (Might be using the wrong display driver altogether, as depending on your exact kaluga-1 board, it is either ili9341v or st7789 - I'm using st7789 but have to try with ili9341.) Once I fix that, I'll push my changes to the LED code so that the demo works with kaluga-1 too.
I'll close this. Let's open separate bug reports for specific issues with ESP32-S2 when these are found.
When I try running this on my ESP32-S2-DevKitM-1 board, it bootloops:
The board isn't listed in
pio boards
, but I've tried it with the three ESP32S2 boards on that list (featheresp32-s2, esp32-s2-kaluga-1, and esp32-s2-saola-1), and they all bootloop, seemingly in the same way.