core: frontend: Vehicle Setup: add sensor calibration / configuration
Current behaviour
We have PWM output configuration (including basic motor testing), and we display detected sensors but don't allow calibrating or configuring them. Accordingly the only way to configure sensors directly through BlueOS is to know about and modify relevant parameters by hand, which is not a pleasant or intuitive user experience.
Expected or desired behaviour
There's decent scope to make an intuitive interface for sensor setup, and doing so could help highlight several vehicle functionalities that exist but are currently under-utilised because they're not known about.
This has been the intent from the start, but hasn't been completed yet, so I'm adding this issue to track progress on it.
Prerequisites
- [X] I have checked to make sure that a similar request has not already been filed or fixed.
Per internal discussion it would be helpful to include nice configuration for things like compass declination, particularly since the units for the raw parameter are in radians (which generally requires some form of calculation software to determine values for).
Sensors:
- [x] Gyro Calibration
- [x] Baro zero-depth calibration
- [ ] Level Horizon
- [x] Temperature?
- Accelerometer
- [x] full calibration
- [x] dance-less calibration
- Compass
- [x] full dance and read feedback
- [x] fast calibration
- will need a location for mag declination
@Williangalvani this is done right ?
@Williangalvani this is done right ?
we are missing the gyro calibration and level horizon parts
It would also be nice to include an intuitive interface for specifying flight controller board orientation and sensor offsets (e.g. displaying the configured orientation and location via a 3D model of the flight controller / sensor relative to the vehicle's forward direction and centre of mass).
Similarly for BARO_ALT_OFFSET, and ArduSub's BARO_SPEC_GRAV and SURFACE_DEPTH parameters.