bluerobotics / bluerobotics/BlueOS
core: frontend: vehicle-setup: add 3D coverage visualiser for compass calibration
- Dominant language
- Vue
- Stars
- 453
- Forks
- 151
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 174
Description
### Current behaviour
During full onboard calibration we provide a completeness percentage / progress bar, but don't display or specify which angles are missing, so it's hard to know where the vehicle should be pointed to complete the calibration.
### Expected or desired behaviour
1. We should provide a rotation protocol for consistently and efficiently getting through compass calibration, instead of just recommending users do it randomly
2. We should provide a visualiser for which orientations need more data in the calibration
- I'm aware @Williangalvani has mentioned wanting to do something like this for ages, but I'm not sure if he's got any ideas or things written down anywhere 🤷♂️
- MAVProxy has its [magical module](https://github.com/ArduPilot/MAVProxy/tree/master/MAVProxy/modules/mavproxy_magical)
>
> https://github.com/user-attachments/assets/5d767893-d11c-4549-9c29-e3c7c59cba56
>
> -Nate Mailhot, [in the ArduPilot Discord](https://discord.com/channels/674039678562861068/998764260257693706/1545262977308033185)
- @muramura is [working on](https://discord.com/channels/674039678562861068/998764260257693706/1544856783083016212) "a real-time 3D Sphere Point-Cloud UI driven directly by ArduPilot's MAG_CAL_PROGRESS 80-bit completion mask (completion_mask)":
>
>
> 💡 Key Features & Benefits:
>
> - Real-time 3D Dot Status (80 points): Missing directions are highlighted in Red (● Missing), turning Green (● Ready) instantly as sampled.
> - Interactive 360° Drag & Rotate: Rotate the sphere with touch/mouse during live calibration to inspect missing points on any side.
> - Real-time Vehicle Attitude Aim Cursor: Simply orient the yellow crosshair toward any remaining red dots to capture data effortlessly.
> - Sphere Quality (Fit Score) Badge: Automatically evaluates fitness from MAG_CAL_REPORT to show 🟢 Sphere Quality: Good (Fit: 19.45) and offset values.
>
> In real flight-controller testing, this eliminated all guesswork, allowing a quick 100% full-sphere sample and a clean fit every time!
### Prerequisites
- [x] I have checked to make sure that a similar request has not already been filed or fixed.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the frontend vehicle-setup calibration flow and review the MAVProxy magical module plus the MAG_CAL_PROGRESS completion_mask described in the issue. Define the rotation protocol and 3D orientation visualizer around the 80 calibration points, with missing directions clearly shown and completion reflected as data is sampled.
Written by the indexing model from the issue text.
Assessment
- Domain
- frontend, robotics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100