-
Notifications
You must be signed in to change notification settings - Fork 1
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
Arm Brake & 2-Note Auto with Simulated Note #110
Conversation
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.
Overall looks good. Next time if it's not too much overhead though please consider breaking this up into the ~3 kinda unrelated changes it is. Would make it easier to review and understand the git history.
// Drive to the middle note while collecting | ||
queueMessageToAutoSelector("Drive to middle note"); | ||
var driveToMiddleSpike = swerveProvider.get(); | ||
driveToMiddleSpike.logic.setEnableConstantVelocity(true); |
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.
⭐ I think these longer command group constructors start getting hard to read. What do you think about logic like all this stuff for setting up a particular command ending up in a function so the top level constructor is just "do these 5 commands in this sequence"
stopDrive)); | ||
} | ||
|
||
private void queueMessageToAutoSelector(String message) { |
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.
⭐ fun idea! But maybe something that should live on a base class?
if (dynamicBrakingEnabled) { | ||
// Engage the brake so we don't backdrive away from this point | ||
// (vibrations from the shooter can cause that) | ||
arm.setBrakeEnabled(true); |
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.
⭐ just out of curiosity, why not manage the break inside the subsystem based on the power that's sent, how would it be different to disengage with non-zero power and engage with zero-ish power?
Why are we doing this?
Add some manual brake control, and disabled automatic brake control, add 2-note auto
Asana task URL:
Whats changing?
Questions/notes for reviewers
How this was tested