@@ -21,6 +21,90 @@ What is it that we really want? At a broad level:
21
21
- To make embedded systems programming more accessible for people that are not already embedded
22
22
systems developers.
23
23
24
+ ## What we do
25
+
26
+ At a high level we have two main tasks:
27
+
28
+ * We work with the community to improve the embedded ecosystem.*
29
+
30
+ - We maintain and develop core crates in the embedded ecosystem ensuring that the development
31
+ roadmap aligns with the needs of its users. You can find all the crates we maintain in the
32
+ [ Organization] ( #organization ) section.
33
+
34
+ - We develop and curate resources about embedded Rust development. For example, see the [ books] we
35
+ have [ written] and the [ curated list of embedded crates] [ awesome ] we maintain.
36
+
37
+ [ books ] : https://rust-embedded.github.io/discovery
38
+ [ written ] : https://rust-embedded.github.io/embedonomicon
39
+ [ awesome ] : https://github.com/rust-embedded/awesome-embedded-rust
40
+
41
+ - We maintain and moderate the venues the embedded community uses to discuss. That includes this
42
+ coordination repository and our IRC channel (#rust-embedded @ irc.mozilla.org).
43
+
44
+ * And, we serve as a bridge between the [ Rust teams] and the embedded community.*
45
+
46
+ [ Rust teams ] : https://www.rust-lang.org/team.html
47
+
48
+ - If you need a language or a compiler feature to improve your embedded software let us know and
49
+ we'll discuss your request with the appropriate Rust team. For example, see [ this request] for
50
+ making the compiler emit information about the stack usage of functions, which was later
51
+ [ implemented] as an experimental feature.
52
+
53
+ [ this request ] : https://github.com/rust-embedded/wg/issues/106
54
+ [ implemented ] : https://github.com/rust-lang/rust/pull/51946
55
+
56
+ - Similarly, if you need some unstable API in the standard library to be stabilized to make your
57
+ crate work on the stable we'll forward your request to the library team. For example, see [ this
58
+ proposal] to add ARM instructions to ` core::arch::arm ` to eliminate the need for the unstable
59
+ inline assembly feature (` asm! ` ) in the most common scenarios.
60
+
61
+ [ this proposal ] : https://github.com/rust-embedded/wg/issues/63
62
+
63
+ ## How you can help
64
+
65
+ Everyone can contribute to the embedded WG efforts! There are several ways to help out:
66
+
67
+ - [ Let us know] where the gaps are. If you think the language, the compiler, the tooling, the
68
+ documentation or the crate ecosystem is lacking some feature, information or library to build
69
+ embedded software let us know and we'll bring it up to the Rust teams or organize the community to
70
+ build the crates or tools to fill the gaps.
71
+
72
+ [ Let us know ] : https://github.com/rust-embedded/wg/issues
73
+
74
+ - Participate in [ RFC (Request For Comments)] [ rfc ] threads. We are always looking into ways to
75
+ improve. This may involve things from changing how we run the WG to landing major breaking changes
76
+ in core crates. To ensure we are * actually* making things better we need your input! That's why
77
+ all these changes are preceded by an "RFC", a discussion thread (which may or may not be backed by
78
+ a proper RFC document) where we evaluate the pros and cons of a proposal and explore alternatives.
79
+ Only after there's consensus on accepting the proposal is the proposal made effective.
80
+
81
+ [ rfc ] : https://github.com/search?q=org%3Arust-embedded+is%3Aopen+label%3Arfc&type=Issues
82
+
83
+ - [ Help wanted!] . There's always lots to do but the WG members only have so much free time. You can
84
+ help us fixing bugs, implementing features, writing tests, trying out examples and tutorials,
85
+ writing documentation, fixing typos, etc. We'll mentor you through these tasks and review your
86
+ work. In some cases you may not even need previous embedded experience or access embedded hardware
87
+ to help us out so don't let that discourage you from checking out our help wanted issues.
88
+
89
+ [ Help wanted! ] : https://github.com/search?q=org%3Arust-embedded+is%3Aopen+label%3A%22help+wanted%22&type=Issues
90
+
91
+ - Join our weekly meetings on IRC. We use these meetings as a faster, synchronous alternative to the
92
+ RFC threads on GitHub. The agenda is [ posted] in the issue tracker of this repository in advance
93
+ to the meeting. Everyone is free to join the meeting and share their thoughts. You can also
94
+ nominate an existing GH thread for discussion if you think it would benefit from a more
95
+ synchronous discussion.
96
+
97
+ [ posted ] : https://github.com/rust-embedded/wg/issues?q=is%3Aissue+is%3Aopen+label%3Ameeting
98
+
99
+ - We have several teams focused on different areas: tooling, Cortex-M crates, etc. and each team
100
+ maintains several projects (crates, docs and / or tools) that live under the [ rust-embedded]
101
+ organization. You can collaborate with the maintenance and development of these projects by
102
+ becoming a project collaborator (consult with the team that owns the project) or by [ joining] the
103
+ team.
104
+
105
+ [ rust-embedded ] : https://github.com/rust-embedded
106
+ [ joining ] : https://github.com/rust-embedded/wg/blob/master/rfcs/0136-teams.md#adding-new-members
107
+
24
108
## Organization
25
109
26
110
The WG is composed of a lead and several teams whose functions are defined in [ RFC
@@ -307,12 +391,6 @@ this list by adding your crate via PR or by tackling any of our [help wanted][ae
307
391
308
392
[ aer-hw ] : https://github.com/rust-embedded/awesome-embedded-rust/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22
309
393
310
- ## Help wanted!
311
-
312
- [ These issues need your help!] [ hw ]
313
-
314
- [ hw ] : https://github.com/rust-lang-nursery/embedded-wg/issues?q=is%3Aissue+is%3Aopen+label%3Ahelp-wanted
315
-
316
394
## RFCs
317
395
318
396
When the team deems it necessary the RFC process may be used to make decisions or to design
0 commit comments