wpilibsuite / allwpilib

Official Repository of WPILibJ and WPILibC
https://wpilib.org/
Other
1.04k stars 606 forks source link

Filter design tool #5088

Open calcmogul opened 1 year ago

calcmogul commented 1 year ago

Is your feature request related to a problem? Please describe.

It's difficult for teams to select and tune filters to meet their signal processing requirements.

Describe the solution you'd like

Features

I'd like to a see a filter design tool akin to the one in MATLAB's DSP toolbox that supports the following:

UI framework

The DSP parts will need native performance. Options for a GUI framework include:

Finding long-term maintainers will be an important part of keeping the tool alive. We use Dear ImGUI a lot because many of the active WPILib developers are comfortable with C++. Web technologies are more popular nowadays, but none of the currently active maintainers know those; we'll need to recruit from outside.

Describe alternatives you've considered

A filter base class was suggested in https://github.com/wpilibsuite/allwpilib/issues/5083, but that still requires manual user plumbing to dashboard elements that could be done in a dedicated filter UI instead.

Starlight220 commented 1 year ago

Could this be made part of SysId?

calcmogul commented 1 year ago

There's nothing preventing that, but SysId is for a completely different use case. The UI layout requirements will almost certainly be different between the two tools.