-
Notifications
You must be signed in to change notification settings - Fork 13.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
drivers/uavcan: subtree merge last working libuavcan (preserving history) #23819
Conversation
Missing features for LPC11C24
…uilds, but unit tests are failing horribly
The server will now attempt to provide files from the primary path RootPath and then the alternate AltRootPath. This alows a layered approch to file service. Setting the RootPath to an SD card and the AltRootPath to a ROM FS will allow a user to provide an updated uavcan firware file that will be used instead of the baked in one without any copying. The path as been removed from the interactions with nodes. There by supporting Non-compliant nodes that could not handle the specified path length. The vitrual pathing has been moved into the FDCache.
fb6b189
to
d800496
Compare
d800496
to
d85ab9e
Compare
…ory) - upstream libuavcan was broken and then marked deprecated, this fully absorbs the submodule (renamed libdronecan to deconflict) up to our last good working commit and all commit history is kept - fixes #23727 (regression introduced in #23113) - this puts us in a much better position to evolve the library as needed now that we have full control
d85ab9e
to
e59cc9a
Compare
@dagar will this break CubeID? I guess I can check. And how does this relate to https://github.com/dronecan/libcanard? Should we move over to that one? |
This includes the latest DSDL, so I believe it should work, but yes please check.
I believe there's some interest in that, but to be honest I don't think it's actually going to be any better. In fact I would guess it's probably a lateral move after quite a lot of effort. I don't think the hate for libuavcan is completely justified, there's actually quite a lot it does very well, it's just somewhat inaccessible template heavy c++ code. By bringing it in tree we could potentially keep some of the good parts while dropping unnecessary extras and duplication. For example libuavcan needs its own dedicated timer for monotonic time and we could more tightly integrated it with our own subscription callback and scheduling mechanisms. |
@dagar you're right, Remote ID still works. I tested both CubePilot CubeID and the Holybro's AP_Periph based remote ID. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like this is working. Tested parameters through QGC, firmware dating from the FC, and sensor data from an ARK Flow.
This also saves about 3kB of flash. Thanks everyone. |
Upstream libuavcan was broken and then marked deprecated. This pull request fully absorbs the libuavcan submodule (renamed libdronecan to deconflict) up to our last good working commit and all commit history is kept.
Other than fixing the regression introduced in #23113 the goal here is to put us in a much better position to easily evolve the library as needed now that we have full control.
Fixes #23727