Closed omelia-iliffe closed 1 month ago
I wanted to use the StdSystem
as the default generic System in Bus
but this was going to be really messy once StdSystem
was moved to a feature.
whoops realised my branch wasn't up to date with main so rebased and force pushed.
Lots more changes as I introduce feature gates to get a no_std compile working.
I've also created a no_std example for the rp2040, its avaliable on the no_std_example branch if you want to have a look: https://github.com/omelia-iliffe/dynamixel2-rs/tree/no_std_example
I'm jumping ahead but I've also created a device branch with an integration test that passes :) https://github.com/omelia-iliffe/dynamixel2-rs/tree/device
Very cool! I'll do a final review hopefully on friday (I should have time then). And probably I'll leave the bike shedding over names until after your second PR, so that I can bikeshed with the whole picture, and so that you don't get merge conflicts :)
Looks good! I do think I want to make some tweaks and thing about naming more, but since you're already working on embedded and the client/device side I will do all of that afterwards. No need to get merge conflicts in the mean time :)
Thanks for working on this!
Moving towards the goal of a
no_std
compatible crate, this pr addsSystem
andTransport
traits which can differ between system and serial port implementations.System
andTransport
traits.bus
to be generic overSystem/Transport
StdSystem
&SerialPort
structs and made them the default generic ofBus
to keep existing api similarTransport::Error