From dc294f8c30190a780359f367fbe79367f0bcaced Mon Sep 17 00:00:00 2001 From: James Munns Date: Thu, 15 Mar 2018 09:33:36 +0100 Subject: [PATCH 1/4] First Newsletter --- newsletters/2018-03-15.md | 73 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 newsletters/2018-03-15.md diff --git a/newsletters/2018-03-15.md b/newsletters/2018-03-15.md new file mode 100644 index 00000000..35106242 --- /dev/null +++ b/newsletters/2018-03-15.md @@ -0,0 +1,73 @@ +# The Embedded Working Group Newsletter - 1 + +> 2018-03-15 + +This is the first newsletter of the [Embedded WG]! We will be releasing this newsletter on a bi-weekly basis, and looking to highlight new progress, cool project, thanking the community, and advertising 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. +* [pcein] has released the third weekly driver for the [`adc-mcp3008`], an 8-channel 10-bit ADC. +* [dvc94ch] has created the [riscv-rust] organization for all your embedded RISCV needs! +* [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. +* [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. + +## 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! + +## 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][gh41315], 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][xargo-lld] 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][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! +* 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]. +* 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]. + + +[#63]: https://github.com/rust-lang-nursery/embedded-wg/issues/63 +[1.0 of their kernel]: https://www.tockos.org/blog/2018/talking-tock-35/ +[`adc-mcp3008`]: https://crates.io/crates/adc-mcp3008 +[avr-rust-rebase]: https://github.com/avr-rust/rust/pull/91 +[cortex-m-rt-lld]: https://github.com/japaric/cortex-m-rt/issues/53 +[dbrgn]: https://github.com/dbrgn +[dvc94ch]: https://github.com/dvc94ch +[dylanmckay]: https://github.com/dylanmckay +[Embedded Rust Book]: https://github.com/rust-lang-nursery/embedded-wg/issues/56 +[Embedded WG Issues]: https://github.com/rust-lang-nursery/embedded-wg/issues +[Embedded WG]: https://github.com/rust-lang-nursery/embedded-wg +[embedded-hal]: https://github.com/japaric/embedded-hal +[Emilgardis]: https://github.com/Emilgardis +[FenrirWolf]: https://github.com/FenrirWolf +[gh18807]: https://github.com/rust-lang/rust/issues/18807 +[gh41315]: https://github.com/rust-lang/rust/issues/41315 +[hannobraun]: https://github.com/hannobraun +[here]: https://github.com/rust-lang/rust/issues/47074#issuecomment-354588718 +[ilya-epifanov]: https://github.com/ilya-epifanov +[jamesmunns]: https://github.com/jamesmunns +[japaric]: https://github.com/japaric +[lld-issues]: https://github.com/japaric/cortex-m-rt/issues/53#issuecomment-371972935 +[new register interface]: https://www.tockos.org/blog/2018/talking-tock-36/ +[pcein]: https://github.com/pcein +[riscv-rust]: https://github.com/riscv-rust +[ryankurte]: https://github.com/ryankurte +[svd2rust]: https://github.com/japaric/svd2rust +[svd]: https://github.com/japaric/svd +[the next newsletter]: https://github.com/rust-lang-nursery/embedded-wg/issues/65 +[thejpster]: https://github.com/thejpster +[therealprof]: https://github.com/therealprof +[Tock-OS]: https://github.com/helena-project/tock +[varkor]: https://github.com/varkor +[xargo-lld]: https://github.com/japaric/xargo/pull/200 \ No newline at end of file From c8922ecfeaf07b09ce0cd20168f670b7eb0c0421 Mon Sep 17 00:00:00 2001 From: James Munns Date: Thu, 15 Mar 2018 10:48:23 +0100 Subject: [PATCH 2/4] Fix some links, grammar, and organization --- newsletters/2018-03-15.md | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/newsletters/2018-03-15.md b/newsletters/2018-03-15.md index 35106242..718f1d9e 100644 --- a/newsletters/2018-03-15.md +++ b/newsletters/2018-03-15.md @@ -2,7 +2,7 @@ > 2018-03-15 -This is the first newsletter of the [Embedded WG]! We will be releasing this newsletter on a bi-weekly basis, and looking to highlight new progress, cool project, thanking the community, and advertising projects that need help! +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! @@ -11,16 +11,18 @@ If you want to mention something in [the next newsletter], make sure to leave a * [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. -* [pcein] has released the third weekly driver for the [`adc-mcp3008`], an 8-channel 10-bit ADC. * [dvc94ch] has created the [riscv-rust] organization for all your embedded RISCV needs! * [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. -* [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. ## 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 + +* [japaric] has [released][enc-blog] the fourth weekly driver for the [`enc28j60`], an Ethernet controller with SPI interface. +* [dbrgn] has [released][mcp-blog] 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! @@ -36,10 +38,11 @@ If you have an embedded project that could use contributors or maintainers, leav * 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]. - [#63]: https://github.com/rust-lang-nursery/embedded-wg/issues/63 [1.0 of their kernel]: https://www.tockos.org/blog/2018/talking-tock-35/ [`adc-mcp3008`]: https://crates.io/crates/adc-mcp3008 +[`enc28j60`]: https://crates.io/crates/enc28j60 +[`mcp3425`]: https://crates.io/crates/mcp3425 [avr-rust-rebase]: https://github.com/avr-rust/rust/pull/91 [cortex-m-rt-lld]: https://github.com/japaric/cortex-m-rt/issues/53 [dbrgn]: https://github.com/dbrgn @@ -50,6 +53,7 @@ semantics. Details in issue [#63]. [Embedded WG]: https://github.com/rust-lang-nursery/embedded-wg [embedded-hal]: https://github.com/japaric/embedded-hal [Emilgardis]: https://github.com/Emilgardis +[enc-blog]: http://blog.japaric.io/wd-4-enc28j60/ [FenrirWolf]: https://github.com/FenrirWolf [gh18807]: https://github.com/rust-lang/rust/issues/18807 [gh41315]: https://github.com/rust-lang/rust/issues/41315 @@ -59,6 +63,7 @@ semantics. Details in issue [#63]. [jamesmunns]: https://github.com/jamesmunns [japaric]: https://github.com/japaric [lld-issues]: https://github.com/japaric/cortex-m-rt/issues/53#issuecomment-371972935 +[mcp-blog]: https://blog.dbrgn.ch/2018/3/13/rust-mcp3425-driver/ [new register interface]: https://www.tockos.org/blog/2018/talking-tock-36/ [pcein]: https://github.com/pcein [riscv-rust]: https://github.com/riscv-rust From 32aeaaabbadac214477aaecbe152e065c08c9953 Mon Sep 17 00:00:00 2001 From: James Munns Date: Thu, 15 Mar 2018 11:03:19 +0100 Subject: [PATCH 3/4] Restore removed driver, add header discussing drivers --- newsletters/2018-03-15.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/newsletters/2018-03-15.md b/newsletters/2018-03-15.md index 718f1d9e..66cef2dc 100644 --- a/newsletters/2018-03-15.md +++ b/newsletters/2018-03-15.md @@ -20,6 +20,9 @@ If you have an embedded project or blog post you would like to have featured in ### `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][enc-blog] the fourth weekly driver for the [`enc28j60`], an Ethernet controller with SPI interface. * [dbrgn] has [released][mcp-blog] the fifth weekly driver for the [`mcp3425`], a 16-bit ADC with I2C interface. @@ -75,4 +78,5 @@ semantics. Details in issue [#63]. [therealprof]: https://github.com/therealprof [Tock-OS]: https://github.com/helena-project/tock [varkor]: https://github.com/varkor +[Weekly Driver Initiative]: https://github.com/rust-lang-nursery/embedded-wg/issues/39 [xargo-lld]: https://github.com/japaric/xargo/pull/200 \ No newline at end of file From 198074dff994b6306d4e3d0197e9be81bb80c4cb Mon Sep 17 00:00:00 2001 From: James Munns Date: Thu, 15 Mar 2018 11:07:08 +0100 Subject: [PATCH 4/4] One more blog post restored --- newsletters/2018-03-15.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/newsletters/2018-03-15.md b/newsletters/2018-03-15.md index 66cef2dc..4b40d6ae 100644 --- a/newsletters/2018-03-15.md +++ b/newsletters/2018-03-15.md @@ -22,7 +22,7 @@ If you have an embedded project or blog post you would like to have featured in 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. +* [pcein] has [released][pcein-blog] the third weekly driver for the [`adc-mcp3008`], an 8-channel 10-bit ADC. * [japaric] has [released][enc-blog] the fourth weekly driver for the [`enc28j60`], an Ethernet controller with SPI interface. * [dbrgn] has [released][mcp-blog] the fifth weekly driver for the [`mcp3425`], a 16-bit ADC with I2C interface. @@ -69,6 +69,7 @@ semantics. Details in issue [#63]. [mcp-blog]: https://blog.dbrgn.ch/2018/3/13/rust-mcp3425-driver/ [new register interface]: https://www.tockos.org/blog/2018/talking-tock-36/ [pcein]: https://github.com/pcein +[pcein-blog]: http://pramode.in/2018/02/24/an-introduction-to-writing-embedded-hal-based-drivers-in-rust/ [riscv-rust]: https://github.com/riscv-rust [ryankurte]: https://github.com/ryankurte [svd2rust]: https://github.com/japaric/svd2rust