CCGSRobotics / RoboHUD

The RoboHUD GUI stack developed by CCGS Robotics
https://robohud.readthedocs.io
MIT License
10 stars 4 forks source link

Modular server redesign #40

Closed Finchiedev closed 5 years ago

Finchiedev commented 5 years ago

As part of the push towards RoboHUD v2.0.0, which focuses on a shift to a modular design and an improvement in code quality, the RoboCupServer-Current code, which enables driving, was identified as a major weak point in the stack. This pull request introduces a complete redesign of the server, towards a more modular, class based system that focuses on address descriptions rather than addresses themselves.

The code introduced in this pull request enables multiple Dynamixels to be connected to the server under different protocols, as well as unlocking functionality at a lower level, such as reading from any readable address.

The Dynamixel class introduced in dynamixels.py contains the following functionality:

Additionally, dynamixels.py provides:

server.py features less drastic updates, instead implementing the Dynamixel class for the following to be able to:

Please feel free to comment with any queries, suggestions or issues before I merge this code!

codeclimate[bot] commented 5 years ago

Code Climate has analyzed commit 2ca99a51 and detected 6 issues on this pull request.

Here's the issue category breakdown:

Category Count
Complexity 6

View more on Code Climate.