- 1. Introduction
- 2. Overview of Development Approaches
- 2.1. Using the Standard Library (std)
- 2.2. Using the Core Library (no_std)
- 3. Setting Up a Development Environment
- 3.1. Rust installation
- 3.2. RISC-V targets only
- 3.3. RISC-V and Xtensa targets
- 3.4. std Development Requirements
- 3.5. Using Containers
- 4. Writing Your Own Application
- 4.1. Generating Projects from Templates
- 4.1.1. Understanding esp-generate
- 4.1.2. Understanding esp-idf-template
- 4.2. Writing no_std Applications
- 4.3. Writing std Applications
- 5. Tooling
- 5.1. Visual Studio Code
- 5.2. espflash
- 5.3. Debugging
- 5.3.1. probe-rs
- 5.3.2. OpenOCD
- 5.4. Simulating
- 5.4.1. Wokwi
- 5.4.2. QEMU
- 6. Troubleshooting
- 6.1. esp-idf-sys based projects