Skip to content

Commit c5a707d

Browse files
bors[bot]James Munns
andauthored
Merge #110
110: Newsletter 23 r=therealprof a=jamesmunns Co-authored-by: James Munns <[email protected]>
2 parents 3f875e3 + 658284d commit c5a707d

File tree

3 files changed

+197
-60
lines changed

3 files changed

+197
-60
lines changed

content/2020-01-30-newsletter-23.md renamed to content/2020-02-01-newsletter-23.md

Lines changed: 63 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,21 @@
11
+++
22
title = "The Embedded Working Group Newsletter - 23"
3-
date = 2020-01-30
4-
draft = true
5-
in_search_index = false
3+
date = 2020-02-01
4+
draft = false
5+
in_search_index = true
66
template = "page.html"
77
+++
88

9-
<!-- TODO before release set `draft` to `false` and `in_search_index` to `true` -->
10-
119
This is the 23rd newsletter of the [Embedded WG] where we highlight new progress, celebrate cool projects, thank the community, and advertise projects that need help!
1210

1311
[Embedded WG]: https://github.com/rust-embedded/wg
1412

15-
<!-- TODO uncomment -->
1613

14+
Discuss on [#rust-embedded:matrix.org]!
1715
<!-- Discuss on [#rust-embedded:matrix.org], [users.rust-lang.org], [on twitter], or [on reddit]! -->
1816

19-
<!-- [#rust-embedded:matrix.org]: https://matrix.to/#/#rust-embedded:matrix.org -->
17+
18+
[#rust-embedded:matrix.org]: https://matrix.to/#/#rust-embedded:matrix.org
2019
<!-- [users.rust-lang.org]: https://example.org/#TODO -->
2120
<!-- [on twitter]: https://example.org/#TODO -->
2221
<!-- [on reddit]: https://example.org/#TODO -->
@@ -25,84 +24,90 @@ This is the 23rd newsletter of the [Embedded WG] where we highlight new progress
2524

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

28-
<!-- TODO before release add the next template! -->
29-
30-
[the next newsletter]: https://github.com/rust-embedded/blog/edit/master/content/${TODO}.md
27+
[the next newsletter]: https://github.com/rust-embedded/blog/edit/master/content/2020-02-29-newsletter-24.md
3128

3229
## Highlights
3330

34-
<!-- TODO Add news related to embedded Rust that are not about new crates releases here -->
35-
36-
- [embedded-hal-mock](https://github.com/dbrgn/embedded-hal-mock/) has released 0.7.1 on crates.io with [support for error expectations](https://docs.rs/embedded-hal-mock/0.7.1/embedded_hal_mock/i2c/index.html#testing-error-handling). This means that you can now unit test the error handling logic of your embedded-hal driver crates.
37-
38-
- TODO(remove, this is an example) "const generics" has landed in nightly!
39-
40-
- TODO(remove, this is an example) the Rust compiler has gained cross compilation support for the Xtensa architecture!
31+
- [@lupyuen] has been doing very cool things with Rust and the PineTime smart watch - see [Porting druid Rust Widgets to PineTime Smart Watch] and [Optimising PineTime’s Display Driver with Rust and Mynewt].
32+
- [The Raspberry Pi OS dev tutorial] got a new chapter on Kernel Unit, Integration and Console tests using QEMU
33+
- Google announced [OpenSK], an open source security key based on [TockOS] in Embedded Rust
34+
- [Ferrous Systems] announced the second iteration of [Oxidize], an embedded Rust conference in Berlin Germany, will take place in July of 2020. Read the [Announcement Blog Post] for more details
35+
- [PLCnext] shared a [Sample Rust Runtime] and a how-to guide for running deterministic real-time Rust
36+
on an industrial Linux device
4137

4238
## Embedded Projects
4339

44-
- [@almindor] released a platform-agnostic [driver for the MAX7219][max7219-driver] segmented display and published a [blog post][max7219-blog-post] including a picture of an example setup.
45-
40+
- [@almindor] released a platform-agnostic [driver for the MAX7219][max7219-driver] segmented display and published a [blog post][max7219-blog-post] including a picture of an example setup.
41+
- [embedded-hal-mock] has released 0.7.1 on crates.io with [support for error expectations]. This means that you can now unit test the error handling logic of your embedded-hal driver crates.
4642
- [@rubberduck203][@rubberduck203] added VS Code configurations to the [cortex-m-quickstart][cortex-m-quickstart] and published a [blog post][vscode-blog]. Debugging Cortex-M projects in editor with VS Code now works out of the box.
47-
43+
- [@rubberduck203][@rubberduck203] released a [quickstart template for the STM32F3DISCOVERY board][stm32f3-quickstart] with pre-configured linker script & build targets.
4844
- [@jkristell] released version 0.6 of the [Infrared][infrared] crate and published a [blog post][infrared-blog] on how to add remote control support to an embedded Rust project.
49-
50-
- [@lupyuen] has been doing very cool things with Rust and the PineTime smart watch - see [Porting druid Rust Widgets to PineTime Smart Watch](https://medium.com/@ly.lee/porting-druid-rust-widgets-to-pinetime-smart-watch-7e1d5a5d977a) and [Optimising PineTime’s Display Driver with Rust and Mynewt](https://medium.com/@ly.lee/optimising-pinetimes-display-driver-with-rust-and-mynewt-3ba269ea2f5c?source=friends_link&sk=4d2cbd2e6cd2343eed62d214814f7b81).
51-
52-
- [The Raspberry Pi OS dev tutorial] got a new chapter on Kernel Unit, Integration and Console tests using QEMU
53-
5445
- Steven Walter gave a talk at [Rust Belt Rust][rust-belt-rust] about [introducing Rust into an existing embedded Linux project][introducing-rust-into-legacy].
46+
- [@arosspope] released an implementation of [the game snake for the stm32f3 discovery board] using RTFM.
47+
- Rust firmware for [Stabilizer] has been released. [Stabilizer][stabilizer-wiki] is an open hardware, high speed, multi channel, STM32H743 based feedback controller for Quantum Physics applications. The firmware features [RTFM v0.5] and [smoltcp]. Support for several analog front end mezzanines like current stabilization or Pound-Drever-Hall locks is being developed.
48+
- [@42technology] announced they have ported Cloudflare's Rust-language [QUIC] library (known as '[quiche]') to the Nordic nRF9160, producing possibly the world's first QUIC demonstration on that platform.
49+
- [atsamd-hal] 0.8.2 released, which includes work by [@twitchyliquid64] and [@jacobrosenthal] implementing USB support for SAMD21 and SAMD51 devices.
50+
- [@Disasm] released [longan-nano] and [seedstudio-gd32v] board support crates with examples for the corresponding RISC-V boards.
5551

56-
- [@arosspope](https://github.com/arosspope) released an implementation of [the game snake for the stm32f3 discovery board](https://github.com/arosspope/usnake) using RTFM.
52+
<!-- LINK SECTION FOR HIGHLIGHTS AND EMBEDDED PROJECTS -->
5753

58-
- Rust firmware for [Stabilizer](https://github.com/quartiq/stabilizer) has been released. [Stabilizer](https://github.com/sinara-hw/Stabilizer/wiki) is an open hardware, high speed, multi channel, STM32H743 based feedback controller for Quantum Physics applications. The firmware features [RTFM v0.5](https://github.com/rtfm-rs/cortex-m-rtfm) and [smoltcp](https://github.com/m-labs/smoltcp). Support for several analog front end mezzanines like current stabilization or Pound-Drever-Hall locks is being developed.
59-
60-
- [@42technology](https://twitter.com/42technology) announced they have ported Cloudflare's Rust-language [QUIC](https://en.wikipedia.org/wiki/QUIC) library (known as '[quiche](https://github.com/cloudflare/quiche)') to the Nordic nRF9160, producing possibly the world's first QUIC demonstration on that platform.
61-
62-
- [@rubberduck203][@rubberduck203] released a [quickstart template for the STM32F3DISCOVERY board][stm32f3-quickstart] with pre-configured linker script & build targets.
63-
64-
- [atsamd-hal](https://github.com/atsamd-rs/atsamd) 0.8.2 released, which includes work by [@twitchyliquid64](https://github.com/twitchyliquid64) and [@jacobrosenthal](https://github.com/jacobrosenthal) implementing USB support for SAMD21 and SAMD51 devices.
65-
66-
- [@Disasm] released [longan-nano](https://github.com/riscv-rust/longan-nano/) and [seedstudio-gd32v](https://github.com/riscv-rust/seedstudio-gd32v) board support crates with examples for the corresponding RISC-V boards.
67-
68-
[Porting druid Rust Widgets to PineTime Smart Watch]: https://medium.com/@ly.lee/porting-druid-rust-widgets-to-pinetime-smart-watch-7e1d5a5d977a
69-
[Optimising PineTime’s Display Driver with Rust and Mynewt]: https://medium.com/@ly.lee/optimising-pinetimes-display-driver-with-rust-and-mynewt-3ba269ea2f5c
70-
[The Raspberry Pi OS dev tutorial]: https://github.com/rust-embedded/rust-raspi3-OS-tutorials/tree/master/13_integrated_testing
71-
[@lupyuen]: https://github.com/lupyuen
54+
[@42technology]: https://twitter.com/42technology
7255
[@almindor]: https://github.com/almindor
73-
[@rubberduck203]: https://twitter.com/Rubberduck203
74-
[@jkristell]: https://github.com/jkristell
56+
[@arosspope]: https://github.com/arosspope
7557
[@Disasm]: https://github.com/Disasm
58+
[@jacobrosenthal]: https://github.com/jacobrosenthal
59+
[@jkristell]: https://github.com/jkristell
60+
[@lupyuen]: https://github.com/lupyuen
61+
[@rubberduck203]: https://twitter.com/Rubberduck203
62+
[@twitchyliquid64]: https://github.com/twitchyliquid64
63+
[Ferrous Systems]: https://ferrous-systems.com
64+
[PLCnext]: https://github.com/PLCnext/
65+
66+
[Announcement Blog Post]: https://ferrous-systems.com/blog/oxidize-2020/
67+
[atsamd-hal]: https://github.com/atsamd-rs/atsamd
7668
[cortex-m-quickstart]: https://github.com/rust-embedded/cortex-m-quickstart
77-
[max7219-blog-post]: https://blog.katona.me/2019/12/22/MAX7219-segmented-display-driver-in-Rust/
78-
[max7219-driver]: https://crates.io/crates/max7219
79-
[vscode-blog]: https://christopherjmcclellan.wordpress.com/2019/12/31/debugging-rust-cortex-m-with-vs-code-take-2/
80-
[infrared]: https://github.com/jkristell/infrared
69+
[embedded-hal-mock]: https://github.com/dbrgn/embedded-hal-mock/
8170
[infrared-blog]: https://jott.se/blog/infrared
71+
[infrared]: https://github.com/jkristell/infrared
8272
[introducing-rust-into-legacy]: https://www.youtube.com/watch?v=EoV94cg_Tug
73+
[longan-nano]: https://github.com/riscv-rust/longan-nano/
74+
[max7219-blog-post]: https://blog.katona.me/2019/12/22/MAX7219-segmented-display-driver-in-Rust/
75+
[max7219-driver]: https://crates.io/crates/max7219
76+
[OpenSK]: https://security.googleblog.com/2020/01/say-hello-to-opensk-fully-open-source.html
77+
[Optimising PineTime’s Display Driver with Rust and Mynewt]: https://medium.com/@ly.lee/optimising-pinetimes-display-driver-with-rust-and-mynewt-3ba269ea2f5c
78+
[Oxidize]: https://oxidizeconf.com
79+
[Porting druid Rust Widgets to PineTime Smart Watch]: https://medium.com/@ly.lee/porting-druid-rust-widgets-to-pinetime-smart-watch-7e1d5a5d977a
80+
[QUIC]: https://en.wikipedia.org/wiki/QUIC
81+
[quiche]: https://github.com/cloudflare/quiche
82+
[RTFM v0.5]: https://github.com/rtfm-rs/cortex-m-rtfm
8383
[rust-belt-rust]: http://www.rust-belt-rust.com/
84+
[Sample Rust Runtime]: https://github.com/PLCnext/rust-sample-runtime
85+
[seedstudio-gd32v]: https://github.com/riscv-rust/seedstudio-gd32v
86+
[smoltcp]: https://github.com/m-labs/smoltcp
87+
[stabilizer-wiki]: https://github.com/sinara-hw/Stabilizer/wiki
88+
[Stabilizer]: https://github.com/quartiq/stabilizer
8489
[stm32f3-quickstart]: https://github.com/rubberduck203/stm32f3-discovery-quickstart
85-
86-
87-
<!-- TODO Add news about embedded projects here -->
90+
[support for error expectations]: https://docs.rs/embedded-hal-mock/0.7.1/embedded_hal_mock/i2c/index.html#testing-error-handling
91+
[the game snake for the stm32f3 discovery board]: https://github.com/arosspope/usnake
92+
[The Raspberry Pi OS dev tutorial]: https://github.com/rust-embedded/rust-raspi3-OS-tutorials/tree/master/13_integrated_testing
93+
[TockOS]: https://www.tockos.org/
94+
[vscode-blog]: https://christopherjmcclellan.wordpress.com/2019/12/31/debugging-rust-cortex-m-with-vs-code-take-2/
8895

8996
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!
9097

9198
## `embedded-hal` Ecosystem Crates
9299

93100
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:
94101

95-
<!-- TODO fill in the numbers before release -->
96-
97102
| Type | Status | Count | Diff |
98103
| :--- | :----- | :---- | :--- |
99-
| [Peripheral Access Crates] | released | ?? | +? |
100-
| [HAL Impl Crates] | released | ?? | +? |
101-
| [Board Support Crates] | released | ?? | +? |
102-
| [Driver Crates Released] | released | ?? | +? |
103-
| [Driver Crates WIP] | WIP | ?? | +? |
104-
| [no-std crates] | released | ?? | +? |
105-
| [no-std crates WIP] | WIP | ?? | +? |
104+
| [Peripheral Access Crates] | released | 42 | +3 |
105+
| [HAL Impl Crates] | released | 32 | +1 |
106+
| [Board Support Crates] | released | 21 | +2 |
107+
| [Driver Crates Released] | released | 36 | +3 |
108+
| [Driver Crates WIP] | WIP | 71 | +4 |
109+
| [no-std crates] | released | 34 | +2 |
110+
| [no-std crates WIP] | WIP | 3 | 0 |
106111

107112
[Awesome Embedded Rust]: https://github.com/rust-embedded/awesome-embedded-rust
108113
[Weekly Driver Initiative]: https://github.com/rust-embedded/wg/issues/39

content/2020-02-29-newsletter-24.md

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
+++
2+
title = "The Embedded Working Group Newsletter - 24"
3+
date = 2020-02-29
4+
draft = true
5+
in_search_index = false
6+
template = "page.html"
7+
+++
8+
9+
<!-- TODO before release set `draft` to `false` and `in_search_index` to `true` -->
10+
11+
This 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!
12+
13+
[Embedded WG]: https://github.com/rust-embedded/wg
14+
15+
<!-- TODO uncomment -->
16+
17+
<!-- Discuss on [#rust-embedded:matrix.org], [users.rust-lang.org], [on twitter], or [on reddit]! -->
18+
19+
<!-- [#rust-embedded:matrix.org]: https://matrix.to/#/#rust-embedded:matrix.org -->
20+
<!-- [users.rust-lang.org]: https://example.org/#TODO -->
21+
<!-- [on twitter]: https://example.org/#TODO -->
22+
<!-- [on reddit]: https://example.org/#TODO -->
23+
24+
<!-- more -->
25+
26+
If you want to mention something in [the next newsletter], send us a pull request!
27+
28+
<!-- TODO before release add the next template! -->
29+
30+
[the next newsletter]: https://github.com/rust-embedded/blog/edit/master/content/${TODO}.md
31+
32+
## Highlights
33+
34+
<!--
35+
TODO Add news related to embedded Rust that are not about new crates releases here. Things that go here include:
36+
37+
* Blog Posts
38+
* Proof of concepts
39+
* Product releases
40+
* Upstream changes/releases
41+
-->
42+
43+
- TODO(remove, this is an example) "const generics" has landed in nightly!
44+
45+
- TODO(remove, this is an example) the Rust compiler has gained cross compilation support for the Xtensa architecture!
46+
47+
## Embedded Projects
48+
49+
<!--
50+
TODO Add news about embedded projects here. Things that
51+
go here include:
52+
53+
* New crates
54+
* New releases of existing crates
55+
* Embedded Application releases
56+
-->
57+
58+
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!
59+
60+
<!-- LINK SECTION FOR HIGHLIGHTS AND EMBEDDED PROJECTS -->
61+
62+
<!--
63+
TODO: Put all markdown links here for User names. Prefer
64+
Github usernames, twitter handles, or blog URLs. If you
65+
are submitting for yourself, please choose whatever link
66+
you would like for yourself.
67+
-->
68+
[someusername]: https://github.com/...
69+
[@sometwittername]: https://twitter.com/...
70+
71+
<!--
72+
TODO: Put all links for content here.
73+
-->
74+
[embedded-foo 1.0.0 released]: https://example.com/blog/...
75+
76+
## `embedded-hal` Ecosystem Crates
77+
78+
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:
79+
80+
<!-- TODO fill in the numbers before release -->
81+
82+
| Type | Status | Count | Diff |
83+
| :--- | :----- | :---- | :--- |
84+
| [Peripheral Access Crates] | released | ?? | +? |
85+
| [HAL Impl Crates] | released | ?? | +? |
86+
| [Board Support Crates] | released | ?? | +? |
87+
| [Driver Crates Released] | released | ?? | +? |
88+
| [Driver Crates WIP] | WIP | ?? | +? |
89+
| [no-std crates] | released | ?? | +? |
90+
| [no-std crates WIP] | WIP | ?? | +? |
91+
92+
[Awesome Embedded Rust]: https://github.com/rust-embedded/awesome-embedded-rust
93+
[Weekly Driver Initiative]: https://github.com/rust-embedded/wg/issues/39
94+
[Peripheral Access Crates]: https://github.com/rust-embedded/awesome-embedded-rust#peripheral-access-crates
95+
[HAL Impl Crates]: https://github.com/rust-embedded/awesome-embedded-rust#hal-implementation-crates
96+
[Board Support Crates]: https://github.com/rust-embedded/awesome-embedded-rust#board-support-crates
97+
[Driver Crates Released]: https://github.com/rust-embedded/awesome-embedded-rust#driver-crates
98+
[Driver Crates WIP]: https://github.com/rust-embedded/awesome-embedded-rust#wip
99+
[no-std crates]: https://github.com/rust-embedded/awesome-embedded-rust#no-std-crates
100+
[no-std crates WIP]: https://github.com/rust-embedded/awesome-embedded-rust#wip-1

newsletter-template.md

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,50 @@ If you want to mention something in [the next newsletter], send us a pull reques
3131

3232
## Highlights
3333

34-
<!-- TODO Add news related to embedded Rust that are not about new crates releases here -->
34+
<!--
35+
TODO Add news related to embedded Rust that are not about new crates releases here. Things that go here include:
36+
37+
* Blog Posts
38+
* Proof of concepts
39+
* Product releases
40+
* Upstream changes/releases
41+
-->
3542

3643
- TODO(remove, this is an example) "const generics" has landed in nightly!
3744

3845
- TODO(remove, this is an example) the Rust compiler has gained cross compilation support for the Xtensa architecture!
3946

4047
## Embedded Projects
4148

42-
<!-- TODO Add news about embedded projects here -->
49+
<!--
50+
TODO Add news about embedded projects here. Things that
51+
go here include:
52+
53+
* New crates
54+
* New releases of existing crates
55+
* Embedded Application releases
56+
-->
4357

4458
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!
4559

60+
- TODO(remove, this is an example) Crate embedded-foo has released version 1.0.0!
61+
62+
<!-- LINK SECTION FOR HIGHLIGHTS AND EMBEDDED PROJECTS -->
63+
64+
<!--
65+
TODO: Put all markdown links here for User names. Prefer
66+
Github usernames, twitter handles, or blog URLs. If you
67+
are submitting for yourself, please choose whatever link
68+
you would like for yourself.
69+
-->
70+
[someusername]: https://github.com/...
71+
[@sometwittername]: https://twitter.com/...
72+
73+
<!--
74+
TODO: Put all links for content here.
75+
-->
76+
[embedded-foo 1.0.0 released]: https://example.com/blog/...
77+
4678
## `embedded-hal` Ecosystem Crates
4779

4880
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:

0 commit comments

Comments
 (0)