Підготовка середовища для розробки
Стандартні інструменти що необхідні для Lilka і PlatformIO інфраструктури не підходять, все зав'язано на Rust. Тут також буде пояснюватись навіщо кожен інструмент чи інша програма.
Само собою що для цього потрібен встановлений Rust, як його встановити, є тут *лінк*, рекомендую повністю встановити разом з скриптами для PATH на різних shell
Probe-rs, універсальний флешер для багатьох мікроконтроллерів т.ч. ESP32.
Програма яка націлена на embedded сферу Rust, часто використовується в програмуванні ARM та RISC-V мікроконтролерів, але відносно нещодавно додали підтримку прошивки ESP32. Можна також легко запустити та прошити програму однією командою cargo run --release
Linux
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/probe-rs/probe-rs/releases/latest/download/probe-rs-tools-installer.sh | sh # Linux
Windows
irm https://github.com/probe-rs/probe-rs/releases/latest/download/probe-rs-tools-installer.ps1 | iex
MacOS
espup, інсталятор тулчейну під ESP32
Через те що Rust офіційно не має target для компіляції під архітектуру xtensa, потрібно встановити неофіційний порт під чіпи S-серії ESP32(всі інщі ESP32 що на RISC-V мають офіційну підтримку).
cargo install espup # Програма скомпілюється після цього
espup install # Встановить автоматично тулчейн
Після встановлення бажано одразу не виходити з терміналу, а прочитати подальші інструкції, адже на Linux якщо не встановити PATH до тулчейну(який в іншій теці) то прийдеться кожен раз перед компіляцією прописувати готовий скрипт який дасить знати компілятору де знаходиться тулчейн. На Windows такої проблеми нема.
cargo-generate, генератор проєктів для швидкого початку розробки
Інструмент генерує готовий Cargo проєкт, що би банально не мучатись з налаштуванням проєктів. В нашому випадку це треба через велику кількість умов що треба вказати, адже середовище no_std потребує більше конкретики.
Вітаю, все готово, можете тепер робити все що хочете!