Skip to content

core: frontend: vehicle-setup: add 3D coverage visualiser for compass calibration #4437

Description

@ES-Alexander

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
      magical-before-after-discord.mp4

      -Nate Mailhot, in the ArduPilot Discord

    • @muramura is working on "a real-time 3D Sphere Point-Cloud UI driven directly by ArduPilot's MAG_CAL_PROGRESS 80-bit completion mask (completion_mask)":
      Image

      💡 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

  • I have checked to make sure that a similar request has not already been filed or fixed.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    coreIssue related to BlueOS-coreenhancementNew feature or requesttriageNeeds triage from developersuiUser Interface feature

    Fields

    Priority

    None yet

    Start date

    None yet

    Target date

    None yet

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions