Template generation tool to create no_std applications targeting Espressif's line of SoCs and modules. At present, this template supports the ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2, ESP32-S2, and ESP32-S3. Additional devices will be added as they become available.
Warning
This project is still in the early stages of development. If you encounter any issue or you would like to see any feature added. Please, open an issue.
To generate a proect using this template:
- Install
esp-generate:
cargo install esp-generate --git https://github.com/esp-rs/esp-template
- Generate a project. There are two options:
-
Using TUI:
esp-generate --chip esp32 testsReplace the chip and project name accordingly and choose the different options using the TUI.
-
Adding the options to the `esp-generate command:
esp-generate --chip esp32 -o wifi -o alloc testsReplace the chip and project name accordingly and choose the different options using the
-o/--optionflag. For a full list of available options, see Usage section.
-
Usage: esp-generate [OPTIONS] --chip <CHIP> <NAME>
Arguments:
<NAME>
Options:
-c, --chip <CHIP> [possible values: esp32, esp32s2, esp32s3, esp32c2, esp32c3, esp32c6, esp32h2]
--headless
-o, --option <OPTION>
-h, --help Print help
-V, --version Print version
alloc: Enables allocations via theesp-alloccrate.wifi: Enables Wi-Fi via theesp-wificrate. Requiresalloc.ble: Enables BLE via theesp-wificrate. Requiresalloc.embassy: Addsembassyframework support.probe-rs: Enablesdefmtand flashes usingprobe-rsinstead ofespflash.stack-protector: Enable stack-smash protection (nightlyonly).optional: Enables the following set of options:wokwi: Adds support for Wokwi simulation using VS Code Wokwi extension.dev-container: Adds support for VS Code Dev Containers and GitHub Codespaces.ciAdds GitHub Actions support with some basics checks.
Licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.