2022-05-16 Cross Team Collaboration Fun Times (CTCFT)

Rust's async team shares updates on their work to bring Rust to embedded systems, including a generic library for serial ports, async internals, and exploring traits for concurrency and error handling.

Key takeaways
  • The Rust async team is working on a generic library for working with serial ports, making it easy to create applications for embedded systems.
  • The async internals in Rust use a waker to signal an async executor that there’s work to do in a task.
  • The automotive industry is looking at Rust for its safety features, with ongoing work on creating standards documents.
  • Developing for embedded systems is more like developing for Rust than developing for desktop or server systems.
  • Rust’s traits offer a solution to concurrency issues in embedded systems.
  • The Rust embedded working group is coordinating efforts to bring Rust into Autosar Adaptive, a standard operating system for the automotive industry.
  • The team is also working on a production-ready framework, Embassy, to make async programming easier in embedded systems.
  • The Rust standard library is being adapted for use in embedded systems, allowing for async programming without the need for a heap.
  • The team is also exploring the use of traits to create generic libraries for working with embedded systems.
  • Rust’s error handling features, such as ?, are particularly useful in error-prone embedded systems.
  • The upcoming TokOS and Habris projects will bring Rust to more embedded systems platforms.
  • The Rust embedded working group has a coordination repository at Rust-embedded/wg.