cargo
driven and automatically downloads & configures everything by default; no need to download the ESP IDF SDK manually, or set up a C toolchainYou might want to also check out the type safe Rust wrappers built on top of these raw bindings:
Note
esp-idf-sys
's build script will download the esp-idf, its gcc toolchain, and build it. To show progress and build information about this process run cargo with the-vv
(very verbose) flag, so that build script output is also displayed. This is especially useful since the initial build will take a while.
Please note that all esp-idf-*
crates are a community effort, in that Espressif puts little to no paid developer time in these. So while ESP-IDF itself is very popular and well tested, the esp-idf-*
crates:
For a HAL which is officially supported by Espressif (as in - with paid developer time), please look at esp-hal
. Keep in mind that esp-hal
is no_std
-only, does not use ESP-IDF and requires async programming.
Follow the Prerequisites section in the esp-idf-template
crate.
Read the documentation here.
The examples could be built and flashed conveniently with cargo-espflash
. To run e.g. std_basics
on an e.g. ESP32-C3: (Swap the Rust target and example name with the target corresponding for your ESP32 MCU and with the example you would like to build)
with cargo-espflash
:
$ MCU=esp32c3 cargo espflash flash --target riscv32imc-esp-espidf --example std_basics --monitorMCU "--target" esp32c2 riscv32imc-esp-espidf esp32c3 riscv32imc-esp-espidf esp32c6 riscv32imac-esp-espidf esp32h2 riscv32imac-esp-espidf esp32p4 riscv32imafc-esp-espidf esp32 xtensa-esp32-espidf esp32s2 xtensa-esp32s2-espidf esp32s3 xtensa-esp32s3-espidf Setting up a "Hello, world!" binary crate with ESP IDF
Use the esp-idf-template project. Everything would be arranged and built for you automatically - no need to manually clone the ESP IDF repository.
For more information, check out:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4