This is the first newsletter of the Embedded WG! We will be releasing this newsletter on a bi-weekly basis, and we are looking to highlight new progress, celebrate cool projects, thank the community, and advertise projects that need help!
If you want to mention something in the next newsletter, make sure to leave a comment on the issue!
Highlights
- Tock-OS has released the 1.0 of their kernel, gotten the Rust Userspace library back in order, and are working on a new register interface
- Emilgardis, jamesmunns and ryankurte have become collaborators of the svd and svd2rust projects.
- hannobraun, ilya-epifanov, thejpster, therealprof have become collaborators of the embedded-hal project.
- dvc94ch has created the riscv-rust organization for all your embedded RISCV needs!
- dylanmckay has begun rebasing the avr-rust/rust fork onto a recent rust-lang/rust version, bringing in LLVM 6.0 support.
Embedded Projects
If you have an embedded project or blog post you would like to have featured in the Embedded WG Newsletter, make sure to mention it on the tracking issue for the next newsletter, we would love to show it off!
embedded-hal
drivers
This is a list of recently released drivers that are part of the Weekly Driver Initiative. There are currently 5 Released Drivers, 14 WIP Drivers, and lots of TODOs!
-
pcein has released the third weekly driver for the
adc-mcp3008
, an 8-channel 10-bit ADC. -
japaric has released the fourth weekly driver for the
enc28j60
, an Ethernet controller with SPI interface. -
dbrgn has released the fifth weekly driver for the
mcp3425
, a 16-bit ADC with I2C interface.
Thanks
- Thanks to everyone who has been commenting on the Embedded WG Issues, especially for the Embedded Rust Book tracking issue!
- varkor has fixed a long standing LLVM bug, that artificially increased the binary size of Rust programs, and backported the patch to rustc.
- LLD is now being shipped with the Rust toolchain. FenrirWolf patched Xargo so that Xargo users can make use of it too.
Help Wanted
If you have an embedded project that could use contributors or maintainers, leave a comment for the next newsletter!
- We are pretty close to being able to use LLD to link Rust programs compiled for ARM Cortex-M but there are some LLD bugs that still need to be fixed. Help reporting these bugs upstream would be greatly appreciated!
- Incremental compilation is in the roadmap for this year but it doesn’t work with
no_std
binaries due to an old rustc bug related to linking. Help us fix it! There’s a proposed solution here. - We want to explore stabilizing some assembly operations in core as an alternative to the unstable asm! macro. We would love some help identifying the assembly operations that need to be provided this way as some can be implemented in external assembly files without losing semantics. Details in issue #63.