Skip to content

Commit fb58b8c

Browse files
authored
Merge pull request #757 from rust-embedded/2024-05-14
Add minutes for 2024-05-14
2 parents 9bc85c6 + eb591c3 commit fb58b8c

File tree

1 file changed

+138
-0
lines changed

1 file changed

+138
-0
lines changed

minutes/2024-05-14.md

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
# Embedded Working Group Meeting 2024-05-14
2+
3+
* [Coordination Repository]
4+
* Meetings: Tuesday 8pm Europe/Berlin time
5+
* [Join the Chat]
6+
* Today's date: 2024-05-14
7+
* [Nominated issues](https://github.com/search?q=org%3Arust-embedded+label%3Anominated+is%3Aopen&type=Issues)
8+
* [Discussion topic](https://github.com/rust-embedded/wg/discussions/747)
9+
* [IRC logs]
10+
11+
[Coordination Repository]: https://github.com/rust-embedded/wg
12+
[Join the Chat]: https://matrix.to/#/#rust-embedded:matrix.org
13+
[IRC logs]: https://libera.irclog.whitequark.org/rust-embedded/2024-05-14
14+
15+
## Attendance
16+
17+
Write your GH username or Matrix handle here!
18+
19+
* adamgreig
20+
* dirbaio
21+
* jamesmunns
22+
* Adam Hott
23+
* hdoordt
24+
* sirhcel
25+
* nastevens
26+
* alevy
27+
* newAM
28+
* therealprof
29+
* bartmassey
30+
* jannic (late)
31+
32+
## Agenda
33+
34+
* Announcements
35+
* svd2rust 0.33.3 released
36+
* tracking issue to discuss postcard 2.0 https://github.com/jamesmunns/postcard/issues/128
37+
* RustNL recap
38+
* https://hackmd.io/p6bQ0OzqTj-R9ra11LvP8A
39+
* Roadmap for WG work
40+
* Keep working on supported targets and foundational crates like embedded-hal
41+
* Improve documentation, tutorials, examples, libraries to ensure many more
42+
people can become embedded Rust developers
43+
* Improve visibility and discoverability of our work, especially considering
44+
specific target audiences
45+
* Coordinate with vendors
46+
* Ensure we have a good experience for hobbyists coming from platforms such as Arduino,
47+
including GUI-only installation experience
48+
* Working group meetings and structure
49+
* We'd like to remain part of the Rust project and on the whole they'd like something like that too
50+
* There's a proposed "Rust Application Organisation" (name TBC) to collect Rust _users_, which we might also become involved in
51+
* We should be involved on the Rust Zulip more to improve communication with Project members
52+
* Proposal for a new sub-team who are responsible for directly interacting with the Rust Project and have a weekly meeting on Zulip (maybe not every week, depending on what topics come up)
53+
* Use of volatilecell and PAC singletons
54+
* We need to stop using vcell, move svd2rust and cortex-m to chiptool-style pointers in structs which generate offsets for register access
55+
* Still want to split c-m into PAC/HAL layer (and perhaps -asm)
56+
* Concluded to propose removing owned singletons from svd2rust, make this a HAL concern instead
57+
* Proposal for new MMIO functionality in Rust itself, e.g. mmio_read/mmio_write on ptr,
58+
and in the interim we could emulate this in cortex-m with inline assembly
59+
* Also add an mmio_fence function
60+
* Rust + Bluetooth
61+
* Work in progress on TrouBLE with some tasks assigned
62+
* PAC/Arch/Runtime crate interactions
63+
* Agreed on previous plan to make cortex-m-pac-interface with interrupt trait so that PACs don't have to depend on arch or runtime crates
64+
* Looked at how Risc-V is split (-pac, -peripheral, -, -rt)
65+
* Discussed interrupt macro syntax options to be able to separate it from the PACs,
66+
current conclusion is something like `#[interrupt(pac::Interrupt::UART0)] fn foo() {}`
67+
* Binary data structure representations
68+
* Documentation
69+
* Discussed a plan (see hackmd link above) for discovery book:
70+
* Split and archive the old f3disco and mb1 books
71+
* Pros
72+
* Prevents creating new issues for the old books
73+
* Cons
74+
* Is there actually a need for maintaining the older books?
75+
* What about just keeping them (along with their issues) "archived" (issues closed) in the same repo?
76+
* In combination with hosting the older books as-is (see below)
77+
* Update current book for full mb2
78+
* Discussed having a simple BSP that's part of the book (or its own crate) to keep the first examples easy, moving to direct HAL use later in the book
79+
* Might be able to obtain funding to pay students to help with some chapters
80+
* Need better CI
81+
* Also want to create a new FAQ page with common questions
82+
* We should check where else users are asking questions, such as Discourse
83+
* HAL reference examples
84+
* Probe-rs
85+
* Lots of things to work on and roadmap items planned, see doc for details
86+
* Discussed embedded pain points with Rust project
87+
* Future of static mut
88+
* We discussed the `grounded` crate
89+
* Rust wants to more or less deprecate the use of static mut, it already generates a warning and will
90+
be forbidden in the 2024 edition
91+
* `grounded` offers some well-documented wrappers for many common use cases
92+
* We decided to keep developing/documenting grounded as-is for the immediate time being, with a plan to move it into the wg libs team soon, and potentially see some structs move into Rust itself later
93+
* Binary code size discussion
94+
* Various code size pain points discussed
95+
* RFC opened to add a new flag to std allowing size optimisations
96+
* Embedded HAL
97+
* Documentation
98+
* Discovery book
99+
* Issues [#568](https://github.com/rust-embedded/discovery/issues/568) & [#567](https://github.com/rust-embedded/discovery/issues/567)
100+
* Permission to resources team for @hdoordt and @bartmassey?
101+
* https://github.com/rust-embedded/wg/pull/756
102+
* Keeping the previous books hosted?
103+
* Pros
104+
* Keeping these variants still easily accessible
105+
* Catching unknown links under https://docs.rust-embedded.org/discovery/, tell about the new book and still guide to the older variants
106+
* Being friendly and not letting aspiring Rust embedded devs with already some cognitive load on their journey just hit a 404 wall
107+
* Cons
108+
* Some work for embedded WG
109+
* Referencing known-good documentation for architectures not covered in the book like std-sync and std-async (on ESP32)
110+
* See for example https://github.com/rust-embedded/discovery/pull/559
111+
* Providing some guidance in contrast somewhat somewhat overwhelming _Awesome Embedded Rust_ for beginners
112+
* Actions-rs deprecated for GitHub Actions
113+
* Issue [#754](https://github.com/rust-embedded/wg/issues/754)
114+
* Do we need separate issues per-repo, or "just do it"?
115+
* Preferences for rust-toolchain versus just rustup?
116+
* Anything (checks, dependabot, etc) that should be included/excluded from all repos?
117+
* Decided nastevens will go through repos currently on actions-rs and do simple migration
118+
* Then use what's learned from this migration to propose CI template if it makes sense
119+
* risc-v CSR access unsafe or not? https://github.com/rust-embedded/riscv/issues/209
120+
121+
## Last Week's Minutes
122+
123+
* Announcements
124+
* embedded-hal-bus 0.2 released with AtomicDevice
125+
* Target docs for thumb targets PR underway: https://github.com/rust-lang/rust/pull/124404
126+
* @thejpster stepping down from wg and leadership council
127+
* next week's meeting is skipped, resuming the week after (on 14th may)
128+
* Embedded HAL
129+
* AtomicDevice use of portable_atomic means build fails on armv6 https://github.com/rust-embedded/embedded-hal/issues/598
130+
* add atomic-device feature, enable AtomicDevice if feature is enabled or cfg(target_has_atomic..), add atomic-critical-section and atomic-unsafe-assume-single-core (or portable-atomic-...?) which proxy to p-a and also enable atomic-device, document this, release as 0.3
131+
* Tooling docs update: https://github.com/CodingInGreen/tooling
132+
* what to add?
133+
* Maintenance of STM32 Discovery Book?
134+
* Is our most complete book
135+
* Does not seem to be in widespread use anymore
136+
* Board has changed version
137+
* Two books is a lot
138+
* Conclusion: don't worry about the stm32 book, mark it as more clearly archived/read-only/deprecated

0 commit comments

Comments
 (0)