Mastering Embedded Rust Development on Espressif Hardware with the Official Guide
The Rust on ESP Book
Welcome to our comprehensive guide for Rust developers diving into embedded systems on Espressif products. We walk you through the software stack, toolchain installation, and essential workflows like project generation and OTA updates. Whether you are new to embedded concepts or looking to leverage Rust's safety, this resource equips you to build robust applications while navigating the evolving ecosystem.
Using these unstable components may break your project with a simple cargo update, much like working with Rust's nightly compiler.
- iconara
The [page on testing][1] suggests this:
> Where possible, and where it makes sense, you should try to test as much as possible on your host machine, not on the target device.
When I have tried this I have encountered multiple problems, first that the Rust test framework requires std, making it convoluted writing test code – but when working around that using conditional compilation, I run into other things like the `esp-hal` depending on crates that won't compile on the host.
What is the recommended way to test on the host?
[1]: https://docs.espressif.com/projects/rust/book/application-development/testing.html
- effnorwood
BUN in oven
- jauntywundrkind
awesome to see this under espressif.com! that's so fantastic.
not to the point here, but i wonder what Zephyr would have been like if Rust had been more of a thing at the time. that's not really possible, as from my understanding it derived from Wind River Systems' donated Rocket OS, which i think predates Rust (which is not a new language!). still an interesting what if to me: zephyr seems to be the embedded os with the best wireless support by a country mile, have a lot of companies targeting it (often alas forking it rather than going upstream): it holds my interest the most.