commits
* Collapse tokio-tcp and embedded-io-async's RX workers
* Remove a closure
* Turns out we can replace the eusb handlers too!
* First step towards a conformance tester
* Work work work
* Flesh out conformance docs/tests a bit
* Generate smaller and named test cases
* stm32f3discovery_examples
* cleanup unused deps
* button example
* heapless strings in service discovery to avoid doing too many hacks
* use new postcard-schema release and smol fixes from james
* tests pass
* whoopie
randomized layout miri test
* Add device discovery endpoint
* Add discovery operations
* Add test, but requires hacks
* Document hax
* Flesh out test a bit, fmt
* Fix some gaps in edge-router that led to dropped packets
This PR splits the "tokio-std" feature into "std", which isn't tokio-dependent, and "tokio-std", which is, and depends on the "std" feature.
There are sockets that are not tokio-specific, which makes the distinction more clear.
Make some tweaks to the log service
Pushing onward after #85, this also adds a proxy type for topics and endpoints as well
This PR adds a `Services` proxy object, obtainable with `NetStack::services()`, that has helper async functions that perform some behavior.
This is the first test of "we provide an out-of-the-box service you might want", which is what I'm thinking for device/socket discovery.
I might also break more items up into proxy objects to logically arrange some of the methods on NetStack, like low level/raw sockets, endpoint/topic sockets, and operations like req_resp.
This PR essentially undoes https://github.com/jamesmunns/ergot/pull/22, as I don't plan to necessarily support a non-integrated net stack world.
It's very possible some day I will decide to revert this revert, but for now, this seems to be a pragmatic way to reduce some of the friction that I've been struggling with.
* derive defmt fmt for some errors
* use defmt formatter instead of match
* Rename std feature to tokio-std
* Fix CI
---------
Co-authored-by: James Munns <james@onevariable.com>
* Move current state of "feature overview" into public docs
* Version bump for trivial release
* Fix headings
* Mostly working demo
* Cargo fmt
* Messing around with higher data rates
* End of day Sat, before start Sun
* With GPIO scope traces
* Monday's stream status
* Update scripts + CI
* Revert changes to ergot-nusb-router
These now live in tilt-app instead
* Add some docs stuff
* stuff
* Update with v0.9 changes
* Do format, update CI + scripts
* Revert some rp2040 changes
* Fix build scripts
* Fix doc comments
* Add docs, prepare for release
* Add notes doc
* Add links, finished kickoff
Add a fmt based logger, and also embedded-io-async support, and also esp32c6 support (busy weekend)
Extract the CobsAccumulator to make it reusable in ergot and other places.
This commit makes somewhat significant changes to the InterfaceManager sections of the stack, in order to better support reusable components.
This rebrands InterfaceManager to Profiles.
This is a first step in reworking InterfaceManagers to be a bit more composable.
Condense nrf52840 and std demos into workspaces, like the rp2040 in #55
* Combine rp2040 examples into a workspace
* Add serial-pair project
* UART to UART ping is mostly working
* fmt example
* A couple of fixes while testing ping timing
* Adds defmt derives to some types
* endpoint servers now update the src port
* restores task arena configs - they are still needed in crates-io embassy-exec v0.7
This PR adds a `Services` proxy object, obtainable with `NetStack::services()`, that has helper async functions that perform some behavior.
This is the first test of "we provide an out-of-the-box service you might want", which is what I'm thinking for device/socket discovery.
I might also break more items up into proxy objects to logically arrange some of the methods on NetStack, like low level/raw sockets, endpoint/topic sockets, and operations like req_resp.
This PR essentially undoes https://github.com/jamesmunns/ergot/pull/22, as I don't plan to necessarily support a non-integrated net stack world.
It's very possible some day I will decide to revert this revert, but for now, this seems to be a pragmatic way to reduce some of the friction that I've been struggling with.