Comments (10)
For context, I have interest in using the embedded-nal
for minimq
. I think this will help to defragment the (somewhat small) TCP/IP embedded crates.
from wg.
Also note that Iām willing to help be a maintainer even though I prove on a daily basis to have NFI what Iām doing. Willing to try.
from wg.
if/when @thejpster is ready this seems good to me. related to #348
from wg.
Also related to rust-embedded/embedded-hal#146 (which was likely the reason that embedded-nal
was created in the first place)
from wg.
embedded-nal
depends on no-std-net
, should this be brought under the embedded umbrella as well?
Ideally this dependency will not be needed in the future if RFC 2832 is successful in adding a core::net
.
from wg.
We briefly discussed this in the meeting today. Unfortunately no one has spoken out on behalf of the proponents of taking this under the embedded WG umbrella.
Personally I'd like to see a vision for further developments (what is missing? why does this require embedded WG supervision instead of being a community driven project?) and people interested in taking on the stewardship (and potentially becoming a WG member).
from wg.
I understand the reasoning as described in the meeting.
I also grok that "network" is probably over-broad, given the different levels of networking, from interfaces to UDP to TCP etc.
@thejpster -- would you accept PRs against the repo and release crates for experimentation? Should someone fork and start afresh? I was under the impression that you no longer had time to investigate/push the crate forward, hence my suggestion for the wg. If there's another route, I'm all ears.
from wg.
The rust-embedded-community might also be an alternative for it if maintenance is the problem.
from wg.
We briefly discussed this in the meeting today. Unfortunately no one has spoken out on behalf of the proponents of taking this under the embedded WG umbrella.
I meant to show up for the WG meeting, but had some real-life obligations to attend to instead. Sorry about that!
There's a few points I want to make here.
why does this require embedded WG supervision instead of being a community driven project?)
I've just written an MQTT implementation and want to target various network stacks (as pointed out by @adamgreig) such as smoltcp
and an external W5500 TCP/IP stack chip. One way to do this is to define by own trait that users can choose to implement, or the embedded-nal
can serve as the abstraction layer.
I originally thought this would be good to take on as part of the embedded-wg to prevent fractionalization (e.g. if every crate is using their own custom traits, it's really not ergonomic for users). If there's a single, well-maintained trait, if a network stack implements that trait, it can immediately be used without extra work from the end user.
This could also work as a community driven project, but I fear that crate maintainers may see it as too "unofficial" to adopt. How should a maintainer react when a different implementation arrives and there's two competing crates? It could become overwhelming from a maintenance perspective.
what is missing?
There's definitely room for growth. The current API forces a slice copy, which prevents zero-copy network abstractions. If we could expand it, we can then support high-performance, zero-copy network abstractions for higher level protocols. There's also definitely more protocols that we could potentially expand to (such as potentially raw IP packets or something else, although this is out of my area of expertise).
people interested in taking on the stewardship
I'd be happy to help with maintence as well as (I believe) @bobmcwhirter
@thejpster -- would you accept PRs against the repo and release crates for experimentation? Should someone fork and start afresh? I was under the impression that you no longer had time to investigate/push the crate forward, hence my suggestion for the wg. If there's another route, I'm all ears.
I believe @thejpster is currently on hiatus, which has essentially stalled development of the embedded-nal
. Right now, I don't think it's possible to incorporate changes into the original crate.
from wg.
Closing as embedded-nal has now been moved to rust-embedded-community š
from wg.
Related Issues (20)
- Agenda for 2020-09-08 Meeting
- Agenda for 2020-09-15
- Propose to transfer RustSBI project to rust-embedded community HOT 1
- AVR flashing tool. Help needed HOT 5
- Mailing list? HOT 6
- Making `panic-never` a requirement or convention for `rust-embedded` libraries where feasible HOT 19
- Calliope Mini HOT 2
- Track upstream double-panic issue
- Support `riscv32imf-unknown-none-elf (Baremetal)` in rust as a cross compile target? HOT 1
- Tracking Issue: Rust Embedded on Mastodon HOT 9
- Display showcase on rust-embedded.org landing page HOT 1
- Benchmarking embedded rust code HOT 3
- How can I contribute to the embedded wg? HOT 1
- bors-ng is being retired HOT 11
- [Question] Experience with cadence chips HOT 2
- Propose transferring svdtools to tools team HOT 1
- Maintenance of meta-rust-bin HOT 2
- Maintainers for embedded targets HOT 32
- Transfer heapless and volatile-register to libs team HOT 13
- Tracking Issue: Call for blog posts, EoY 2023 HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
š Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ššš
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ā¤ļø Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wg.