cockpit
cockpit copied to clipboard
joystick: add support for new ArduSub button functions
Current behaviour
ArduSub has some new button functions (already released in stable), which Cockpit does not yet support.
Related to #2063, we currently only consider a static list of ArduSub button functions, and there's no mechanism for keeping the available functions up to date with the latest (or in-use) firmware version.
Expected or desired behaviour
- We should add a versioning mechanism to segregate which functions are introduced after a given release, and only load supported functions for the connected firmware version
- We should update the list of available/known button functions to include the new ones
- Ideally this would be through "patch" updates, e.g. ArduSub 4.5.5 replaces
servo_*withactuator_*names, and adds some new ones, so the available functions should be a combination of the old ones, extended by the new ones / replacements (with the replacement mechanism including a provision for setting names of removed ones as something that indicates what should be used instead)
- Ideally this would be through "patch" updates, e.g. ArduSub 4.5.5 replaces
- As suggested in bluerobotics/BlueOS#3501, we need to have a discussion about processes to keep Cockpit up to date with relevant firmware changes, preferably before they get released as stable features
- @Williangalvani has suggested that at least for parameter changes, we could potentially fetch information from ArduPilot's parameter repository
Prerequisites
- [x] I have checked to make sure that a similar request has not already been filed or fixed.