The Embedded Working Group Newsletter - 24
2020-08-17This is the 24th newsletter of the Embedded WG where we highlight new progress, celebrate cool projects, thank the community, and advertise projects that need help!
We've been on an unscheduled hiatus for the past six months or so, but it's time for us to return! Today we're doing a quick fast-forward of all of the great things that have been released while we've been on break.
For the next few weeks, we'll be doing a special "catch-up" schedule, meaning we'll be releasing articles weekly until we've caught up with all of the recent changes. Once we've wrapped that up, we'll go back to a regular monthly cadence.
We've also added a few new folks to the resources team say hello to @hargoniX, @eldruin and @kalkyl who will be helping out with the newsletter!
Want to have your project mentioned? Make sure you let us know so we can include it!
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!
The Great Catch-Up!
Here's a whirlwind overview of some of the things that have been released and changed over the past six months or so! We'll cover some of these updates in more detail over the coming weeks!
Renames
- The RTFM framework has been renamed to RTIC - Real Time Interrupt-driven Concurrency!
Resources
- We've added phil's OS blog to our list of resources
- @hargoniX has added a blog post on embedded driver writing
Tooling
- the probe-rs organization has added a lot of wonderful new tooling, including cargo-flash and cargo-embed
- cargo-hf2 for "A small cargo subcommand to download cargo builds to Microsoft UF2 bootloaders via HID USB"
- The Knurling-rs project for embedded tooling has kicked off by releasing probe-run
Bindings
- FreeRTOS-rust as RTOS bindings (not to be confused with FreeRTOS.rs )
New Possibilities
- It is now possible to run async/await on embedded!
- Applications can now be compiled for AVR in mainline Rust nightly builds!
PACs
- msp430fr2355 PAC has been added
- ambiq-apollo1-pac, ambiq-apollo2-pac and ambiq-apollo3p-pac have been added
HALs
- msp430fr2x5x-hal has been added
BSPs
- a BSP for the onebitsy
- Several Adafruit BSPs:
- Several arduino BSPs:
- The samd21_mini BSP
- The xiao_m0 BSP
General abstraction crates
- The atat crate for parsing AT commands
Drivers
WIP Drivers
- BMI160
- epd-waveshare
- HRS3300
- HDC20xx
- ISL29125
- LSM9DS1
- ltr-559
- lvgl
- MAX170xx
- MAX3010x
- MCP4725
- MLX9061x
- ublox-cellular-rs
no_std crates
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 | 46 | +4 |
HAL Impl Crates | released | 33 | +1 |
Board Support Crates | released | 38 | +17 |
Driver Crates Released | released | 45 | +9 |
Driver Crates WIP | WIP | 84 | +13 |
no-std crates | released | 41 | +7 |
no-std crates WIP | WIP | 3 | +0 |