setup dribbler interface#3732
Open
GrayHoang wants to merge 38 commits into
Open
Conversation
…are into motor_driver_integration
…or_driver_integration
sunghyuneun
reviewed
May 29, 2026
Contributor
There was a problem hiding this comment.
You should be able to see this on the Altium. This is the Power Board, on the ESP32. The pin number is 4 in our case, but being able to see this is a benefits of having Altium access.
GrayHoang
commented
May 29, 2026
| } | ||
| else | ||
| { | ||
| power_service_ = std::make_unique<PowerServiceWithDribble>(); |
Contributor
Author
There was a problem hiding this comment.
This needs to become a shared_ptr to be shared with the motor drivers, but in doing so it means that the trinamics instance also has to track a shared_ptr instead of a unique_ptr
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR adjusts our MotorService and powerboard firmware to incorporate the new dribbler motor.
Due to backward compatibility requirements and restrictions with the way dribble commands are packaged and sent to MotorService, this requires that the Stspin and Trinamic motor controllers handle dribble commands differently.
Namely, the Stspin motor controller is made aware of the PowerService instance owned by Thunderloop, and passes dribble commands to PowerService accordingly.
The effect is that Thunderloop must initiate the appropriate type of PowerService and feed it to the motor controller if needed (See thunderloop.cpp line 125 and stspin_motor_controller.cpp line 179).
Please look at the changed protobuf files, I have no idea if I setup message translation, uart framing, and protobuffer types correctly. (powerframe_msg.hpp/.proto).
Powerloop incorporates some rudimentary PWM ramping. RPM is expected to be passed down from somewhere in software. (powerloop_main.cc line 106).
Testing Done
Resolved Issues
Length Justification and Key Files to Review
Review Checklist
It is the reviewers responsibility to also make sure every item here has been covered
.hfile) should have a javadoc style comment at the start of them. For examples, see the functions defined inthunderbots/software/geom. Similarly, all classes should have an associated Javadoc comment explaining the purpose of the class.TODO(or similar) statements should either be completed or associated with a github issue