Skip to content
This repository has been archived by the owner on Jan 9, 2023. It is now read-only.

UAVCAN 1.0 Progress Tracking #70

Open
7 of 16 tasks
davidlenfesty opened this issue Jan 17, 2021 · 0 comments
Open
7 of 16 tasks

UAVCAN 1.0 Progress Tracking #70

davidlenfesty opened this issue Jan 17, 2021 · 0 comments
Assignees
Milestone

Comments

@davidlenfesty
Copy link
Collaborator

davidlenfesty commented Jan 17, 2021

This issue tracks general progress to supporting v1.0 and a (potential) library 1.0 release. I've been working on a ground-up rewrite in my fork, but that is being moved into the branch david/rearchitecting. All further progress on this implementation will be based on this branch, with the hope of an eventual move to master once it's production ready.

(There are likely more tasks missing that I can't think of right now)

First Release Milestones

  • Full support for UAVCAN/CAN
  • Full std SessionManager implementation
    • Base implementation
    • Optimize
  • Proper support for no_std in the core of it.
    • Remove random Vec's
    • Validate that std::time::Instant can be implemented easily on a no_std system
  • no_std (but with an alloc) SessionManager implementation
  • Automated testing infrastructure of some sort
  • Verified inter-operability with pyuavcan and libcanard
  • Implementation of serialization using packed_struct or similar

V1.0 Milestones

  • Full support for UAVCAN/UDP
  • (Optional) Full support for UAVCAN/Serial
  • Finalized SessionManager API
  • Finalized Transport API
  • Full support for DSDL serialization/deserialization
    • Either nunavut generates annotated structs w/ a support crate, or
    • nunavut generates the structs and their impls.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant