Call for Experimentation #76
Replies: 7 comments 8 replies
This comment has been hidden.
This comment has been hidden.
-
|
Field report: Can we support a fully blocking use case? - I think theoretically yes, but practically today, not yet. We'd need to make sure we have polling APIs, and potentially blocking (using |
Beta Was this translation helpful? Give feedback.
-
|
Field report, I should take these nice diagrams and find a home for them in docs. |
Beta Was this translation helpful? Give feedback.
-
|
Howdy! I have a use case for small two-way messages from microcontroller to phone/tablet/desktop. I've been using BLE for this, but would love handing the responsibility of writing responsible code for that to someone else. Gonna dive into the docs tomorrow, but if you feel like this should work on at the very least an esp32 <-> iPhone via Tauri, I should be giving it a go soon. |
Beta Was this translation helpful? Give feedback.
-
|
I read the docs and try to integrate ergot to my project. I found that the eusb demo is a little bit complex and I'm having trouble to understand it, there are some questions I have now:
join4(
async {
// USB task
usb_device.run()
},
async {
// Rx task
rxvr.run(RX_BUF.take(), kit::USB_FS_MAX_PACKET_SIZE)
},
async {
// Tx task
kit::tx_worker::<D, 4096, AtomicCoord>(
&mut tx_impl,
OUTQ.framed_consumer(),
kit::DEFAULT_TIMEOUT_MS_PER_FRAME,
kit::USB_FS_MAX_PACKET_SIZE,
)
},
async {
// Echo task
use core::pin::pin;
let socket = STACK.stack_bounded_endpoint_server::<EchoEndpoint, 4>(Some("echoserver"));
let socket = pin!(socket);
let mut hdl = socket.attach();
loop {
let _ = hdl.serve(async |input_num| {
// Echo after 1ms
embassy_time::Timer::after_millis(1).await;
input_num
});
}
},
);
Those questions are from the first 2-hour try from a noob, so forgive me if it's dumb. Thanks for your work on this, I am looking forward to use ergot in the future :D |
Beta Was this translation helpful? Give feedback.
-
|
Questions (see https://bsky.app/profile/jonaskruckenberg.de/post/3lwpx3g7jek24):
My answer (so far):
|
Beta Was this translation helpful? Give feedback.
-
|
I would very much welcome a documentation section for the overhead that ergot introduces vs for example using raw TCP/UDP frames. We use several devices that stream data and throughput is of utmost importance to us and a clear explanation in the docs would help us evaluate the adoption of it vs for example using our own code of having messages that are simply a C array with a message type byte + packet length and raw data afterwards. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
This is a call to the kind of people that write connected systems in Rust to try out Ergot between now and the middle of September.
ergotis a messaging library, built onpostcard, that I am building to make it easier to have structured communication between tasks, threads, processes, and/or devices of any size, from desktops/servers down to embedded systems. It is certainly not ready for load bearing production use yet, but it won't get there without help, and that's what I'm asking for.I am willing to call in any favors I can to get you to:
I have four weeks of relatively free time, and I intend to use it getting Ergot as usable as possible for as many people as possible. This means I need people to look at it, evaluate it, contribute to it, and give me feedback on what is needed to make it usable.
I'm also streaming on YouTube at the start/end of every Monday/Wednesday/Friday (10:30 and 20:00 CEST), if you want to come and chat live!
Beta Was this translation helpful? Give feedback.
All reactions