26

The Embedded Working Group Newsletter - 21

 4 years ago
source link: https://rust-embedded.github.io/blog/newsletter-21/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

This is the 21st newsletter of the Embedded WG where we highlight new progress, celebrate cool projects, thank the community, and advertise projects that need help!

Discuss on #rust-embedded:matrix.org , users.rust-lang.org , on twitter , or on reddit !

If you want to mention something in the next newsletter , send us a pull request!

Highlights

Embedded Projects

  • @eldruin released a platform-agnostic driver for the OPT300x family of ambient light sensors and published a blog post with a picture of the device taking lux measurements.
  • @mciantyre published a custom runtime and peripheral access crates to support development on the Teensy 4. Check out the repo to see how it works, discuss the approach, and try it out.
  • @japaric released version v0.1.0 of ufmt , a smaller (6-40x) and faster (2-9x) alternative to core::fmt that's free of dynamic dispatch, recursion (where possible) and panicking branches. ufmt is not a drop-in replacement for core::fmt but it provides uDebug and uDisplay traits and a family of uwrite! macros. In this release the uwrite! macros, and the rest of the crate, work on the stable channel.
  • @jamesmunns released two embedded crates:
    • panic-persist : A panic handler crate inspired by panic-ramdump that logs panic messages to a region of RAM defined by the user, allowing for discovery of panic messages post-mortem using normal program control flow.
    • cmim , or Cortex-M Interrupt Move: A crate for Cortex-M devices to move data to interrupt context, without needing a critical section to access the data within an interrupt, and to remove the need for the "mutex dance"
  • @tarcieri released aead v0.2, providing generic traits for Authenticated Encryption with Associated Data (AEAD) ciphers, which now supports ergonomic alloc -free operation via an integration with the heapless crate. This trait is now implemented by several crates providing pure Rust implementations of AEAD modes which may be interesting to embedded users seeking to encrypt/data data in heapless buffers, including the chacha20poly1305 and aes-siv crates (and forthcoming support in the aes-ccm crate).

If you have an embedded project or blog post you would like to have featured in the Embedded WG Newsletter, make sure to add it to the next newsletter , we would love to show it off!

embedded-hal Ecosystem Crates

As part of the Weekly Driver Initiative , crates that are part of the embedded-hal ecosystem are now tracked in the Awesome Embedded Rust repository. Here is a current snapshot of what is available there:

Type Status Count Diff Peripheral Access Crates released 32 +1 HAL Impl Crates released 29 +1 Board Support Crates released 19 0 Driver Crates Released released 30 +1 Driver Crates WIP WIP 69 -1 no-std crates released 30 +2 no-std crates WIP WIP 3 0

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK