Skip to content
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

SysID MotorLog Overloads or Reworks #6285

Open
ColinBalfour opened this issue Jan 21, 2024 · 0 comments · May be fixed by #7172
Open

SysID MotorLog Overloads or Reworks #6285

ColinBalfour opened this issue Jan 21, 2024 · 0 comments · May be fixed by #7172
Labels
component: sysid SysId app type: fix Iterations on existing features or infrastructure.

Comments

@ColinBalfour
Copy link

Is your feature request related to a problem? Please describe.
edu.wpi.first.wpilibj.sysid.SysIdRoutineLog.MotorLog.angularPosition,

public MotorLog angularPosition(Measure<Angle> position) {
    return value("position", position.in(Rotations), Rotations.name());
}

angularPosition() method takes a Measure as an input, but logs only rotations. There's no other overloads, making it impossible to log radians without using an inaccurate Measure.

Describe the solution you'd like
An overload to select the unit type: public MotorLog angularPosition(Measure<Angle> position, Angle unit)

Additionally, documentation that the current method defaults to rotations

Describe alternatives you've considered
An overload without measures: public MotorLog angularPosition(double position, String unit), though it's similar to just using public MotorLog value(String name, double value, String unit)

Coordination in the SysID application Data Selector that allows users to select what units are used, potentially using the unit name in MotorLog. Related to #6284

Additional context
All of the above should be for all MotorLog unit methods (e.g., voltage(), linearPosition, angularVelocity, etc.), I simply used angularPosition as an example.

@calcmogul calcmogul added component: sysid SysId app type: fix Iterations on existing features or infrastructure. labels Jan 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: sysid SysId app type: fix Iterations on existing features or infrastructure.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants