Two things have kept me away from embedded Rust before
1. A huge chain of dependencies. Security issues aside, I prefer my embedded code to be lean and clean.
2. A big departure from how things used to be done in this world. For example interrupt handlers almost look like AWS lambda code to me. Maybe that's the future, I don't know. But right now I am not comfortable with this way of doing low level coding.
But I am keeping an open mind and will probably try it again soon.I can see myself using Rust instead of C in more projects, but maybe first after things calm down a bit. I want my development environment outdated and boring, a.k.a. "stable".
> A huge chain of dependencies. Security issues aside, I prefer my embedded code to be lean and clean.
Where does your limit go for that? I wrote a eurorack modular embedded thing on Teensy 4.0 (imxrt) in Rust this year. I just inspected the dep tree, it's 38 crates, with 1 being my own.
https://gist.github.com/algesten/9617fc795f2fc94009f1ed311b1...
It was a joy to write this in Rust, I look forward to my next project. This was done with "stable" (not nightly).
How does cortex-m v0.6.7 manage to depend on cortex-m v0.7.3?
That's a way to avoid complicated coordinated upgrades across the ecosystem if certain conditions are met.
It's called the "semver-trick" [1].