|
| 1 | +# The Embedded Working Group Newsletter - 1 |
| 2 | + |
| 3 | +> 2018-03-15 |
| 4 | +
|
| 5 | +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! |
| 6 | + |
| 7 | +If you want to mention something in [the next newsletter], make sure to leave a comment on the issue! |
| 8 | + |
| 9 | +## Highlights |
| 10 | + |
| 11 | +* [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] |
| 12 | +* [Emilgardis], [jamesmunns] and [ryankurte] have become collaborators of the [svd] and [svd2rust] projects. |
| 13 | +* [hannobraun], [ilya-epifanov], [thejpster], [therealprof] have become collaborators of the [embedded-hal] project. |
| 14 | +* [dvc94ch] has created the [riscv-rust] organization for all your embedded RISCV needs! |
| 15 | +* [dylanmckay] has begun [rebasing][avr-rust-rebase] the avr-rust/rust fork onto a recent rust-lang/rust version, bringing in LLVM 6.0 support. |
| 16 | + |
| 17 | +## Embedded Projects |
| 18 | + |
| 19 | +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! |
| 20 | + |
| 21 | +### `embedded-hal` drivers |
| 22 | + |
| 23 | +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! |
| 24 | + |
| 25 | +* [pcein] has [released][pcein-blog] the third weekly driver for the [`adc-mcp3008`], an 8-channel 10-bit ADC. |
| 26 | +* [japaric] has [released][enc-blog] the fourth weekly driver for the [`enc28j60`], an Ethernet controller with SPI interface. |
| 27 | +* [dbrgn] has [released][mcp-blog] the fifth weekly driver for the [`mcp3425`], a 16-bit ADC with I2C interface. |
| 28 | + |
| 29 | +## Thanks |
| 30 | + |
| 31 | +* Thanks to everyone who has been commenting on the [Embedded WG Issues], especially for the [Embedded Rust Book] tracking issue! |
| 32 | +* [varkor] has fixed a [long standing LLVM bug][gh41315], that artificially increased the binary size of Rust programs, and backported the patch to rustc. |
| 33 | +* LLD is now being shipped with the Rust toolchain. [FenrirWolf] [patched Xargo][xargo-lld] so that Xargo users can make use of it too. |
| 34 | + |
| 35 | +## Help Wanted |
| 36 | + |
| 37 | +If you have an embedded project that could use contributors or maintainers, leave a comment for [the next newsletter]! |
| 38 | + |
| 39 | +* We are [pretty close][cortex-m-rt-lld] to being able to use LLD to link Rust programs compiled for ARM Cortex-M but there are some [LLD bugs][lld-issues] that still need to be fixed. Help reporting these bugs upstream would be greatly appreciated! |
| 40 | +* Incremental compilation is in the roadmap for this year but it doesn't work with `no_std` binaries due to an [old rustc bug][gh18807] related to linking. Help us fix it! There's a proposed solution [here]. |
| 41 | +* 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 |
| 42 | +semantics. Details in issue [#63]. |
| 43 | + |
| 44 | +[#63]: https://github.com/rust-lang-nursery/embedded-wg/issues/63 |
| 45 | +[1.0 of their kernel]: https://www.tockos.org/blog/2018/talking-tock-35/ |
| 46 | +[`adc-mcp3008`]: https://crates.io/crates/adc-mcp3008 |
| 47 | +[`enc28j60`]: https://crates.io/crates/enc28j60 |
| 48 | +[`mcp3425`]: https://crates.io/crates/mcp3425 |
| 49 | +[avr-rust-rebase]: https://github.com/avr-rust/rust/pull/91 |
| 50 | +[cortex-m-rt-lld]: https://github.com/japaric/cortex-m-rt/issues/53 |
| 51 | +[dbrgn]: https://github.com/dbrgn |
| 52 | +[dvc94ch]: https://github.com/dvc94ch |
| 53 | +[dylanmckay]: https://github.com/dylanmckay |
| 54 | +[Embedded Rust Book]: https://github.com/rust-lang-nursery/embedded-wg/issues/56 |
| 55 | +[Embedded WG Issues]: https://github.com/rust-lang-nursery/embedded-wg/issues |
| 56 | +[Embedded WG]: https://github.com/rust-lang-nursery/embedded-wg |
| 57 | +[embedded-hal]: https://github.com/japaric/embedded-hal |
| 58 | +[Emilgardis]: https://github.com/Emilgardis |
| 59 | +[enc-blog]: http://blog.japaric.io/wd-4-enc28j60/ |
| 60 | +[FenrirWolf]: https://github.com/FenrirWolf |
| 61 | +[gh18807]: https://github.com/rust-lang/rust/issues/18807 |
| 62 | +[gh41315]: https://github.com/rust-lang/rust/issues/41315 |
| 63 | +[hannobraun]: https://github.com/hannobraun |
| 64 | +[here]: https://github.com/rust-lang/rust/issues/47074#issuecomment-354588718 |
| 65 | +[ilya-epifanov]: https://github.com/ilya-epifanov |
| 66 | +[jamesmunns]: https://github.com/jamesmunns |
| 67 | +[japaric]: https://github.com/japaric |
| 68 | +[lld-issues]: https://github.com/japaric/cortex-m-rt/issues/53#issuecomment-371972935 |
| 69 | +[mcp-blog]: https://blog.dbrgn.ch/2018/3/13/rust-mcp3425-driver/ |
| 70 | +[new register interface]: https://www.tockos.org/blog/2018/talking-tock-36/ |
| 71 | +[pcein]: https://github.com/pcein |
| 72 | +[pcein-blog]: http://pramode.in/2018/02/24/an-introduction-to-writing-embedded-hal-based-drivers-in-rust/ |
| 73 | +[riscv-rust]: https://github.com/riscv-rust |
| 74 | +[ryankurte]: https://github.com/ryankurte |
| 75 | +[svd2rust]: https://github.com/japaric/svd2rust |
| 76 | +[svd]: https://github.com/japaric/svd |
| 77 | +[the next newsletter]: https://github.com/rust-lang-nursery/embedded-wg/issues/65 |
| 78 | +[thejpster]: https://github.com/thejpster |
| 79 | +[therealprof]: https://github.com/therealprof |
| 80 | +[Tock-OS]: https://github.com/helena-project/tock |
| 81 | +[varkor]: https://github.com/varkor |
| 82 | +[Weekly Driver Initiative]: https://github.com/rust-lang-nursery/embedded-wg/issues/39 |
| 83 | +[xargo-lld]: https://github.com/japaric/xargo/pull/200 |
0 commit comments