Skip to content

docs: add OSD HUD and Craft Radar page - #24

Open
Raffi1202 wants to merge 2 commits into
iNavFlight:masterfrom
Raffi1202:docs/port-osd-hud-radar
Open

docs: add OSD HUD and Craft Radar page#24
Raffi1202 wants to merge 2 commits into
iNavFlight:masterfrom
Raffi1202:docs/port-osd-hud-radar

Conversation

@Raffi1202

Copy link
Copy Markdown

Part of moving the GitHub wiki onto the docs site. Ports "OSD-Hud-and-ESP32-radars" to docs/06-advanced-features/osd-hud-and-craft-radar.mdx and repoints the related-documents entry on the OSD page at it.

The old defaults were wrong

Every setting was checked against src/main/fc/settings.yaml on maintenance-10.x, and most of the values on the wiki page had drifted:

  • osd_hud_homing, osd_hud_homepoint, osd_hud_radar_disp and osd_hud_wp_disp all default to off / zero, not enabled. The wiki showed the peer display as 3; it is actually off by default, so following the old page left readers waiting for markers that could never appear.
  • osd_hud_radar_range_min defaults to 3 m, not 10 m.
  • There are eight crosshair styles, not seven.

Three settings the wiki never documented at all are now covered: osd_hud_radar_alt_difference_display_time, osd_hud_radar_distance_display_time and osd_radar_peers_display_time.

The peer data path is described from the firmware

Peers arrive over MSP2_COMMON_SET_RADAR_POS, the payload is parsed in fc_msp.c, stored in the radar_pois slots and drawn by osd_hud.c.

Two things readers regularly get wrong are now stated explicitly:

  • The peer element is OSD_FORMATION_FLIGHT. OSD_RADAR is a home-point map, which is not the same thing and is the usual source of confusion.
  • The firmware applies no timeout to peer positions, so a stale marker stays on screen until the module updates it.

Third-party hardware

ESP32 and FormationFlight hardware and firmware are kept as external links only, with no version or capability claims, so the page does not go stale when they change.

Image

static/img/features-adv/osd-hud-craft-radar-layout.png was not in the wiki repository, only as an attachment URL. It was fetched, viewed and checked against the code before being committed here.

Ports the "OSD-Hud-and-ESP32-radars" page from the GitHub wiki into the
Docusaurus site as docs/06-advanced-features/osd-hud-and-craft-radar.mdx,
and repoints the related-documents entry in the OSD page at it.

Every setting was checked against src/main/fc/settings.yaml on
maintenance-10.x and the defaults and ranges corrected where they had
drifted: osd_hud_homing, osd_hud_homepoint, osd_hud_radar_disp and
osd_hud_wp_disp all default to off/zero rather than enabled,
osd_hud_radar_range_min defaults to 3 m and not 10 m, and eight
crosshair styles exist rather than seven. The three settings the wiki
never documented are now covered:
osd_hud_radar_alt_difference_display_time,
osd_hud_radar_distance_display_time and osd_radar_peers_display_time.

The peer data path is described from the firmware rather than from the
old text: peers arrive over MSP2_COMMON_SET_RADAR_POS with the payload
parsed in fc_msp.c, are stored in the radar_pois slots, and are drawn by
osd_hud.c. Two points that readers regularly get wrong are now stated
explicitly - the peer element is OSD_FORMATION_FLIGHT while OSD_RADAR is
a home-point map, and the firmware applies no timeout to peer positions,
so a stale marker stays on screen until the module updates it.

Third-party ESP32 and FormationFlight hardware and firmware are kept as
external links only, with no version or capability claims.
@Raffi1202
Raffi1202 marked this pull request as ready for review September 11, 2026 15:00
@qodo-free-for-open-source-projects

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)

Grey Divider

Great, no issues found!

Qodo reviewed your code and found no material issues that require review

Grey Divider

Tip of the day
💡 Did you know, you can switch off images and animations for a plain-text comment

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

@qodo-free-for-open-source-projects

Copy link
Copy Markdown

PR Summary by Qodo

Document OSD HUD and craft radar configuration

📝 Documentation 🕐 20-40 Minutes

Grey Divider

AI Description

• Adds a firmware-validated guide for configuring OSD HUD, waypoints, and craft radar.
• Documents peer MSP flow, display behavior, wiring, limitations, and troubleshooting.
• Replaces the external wiki reference with the new first-party documentation page.
Diagram

sequenceDiagram
  actor Pilot
  participant Module as Radar Module
  participant MSP as MSP Handler
  participant Slots as Peer Slots
  participant OSD as OSD HUD
  Module->>MSP: Send peer position
  MSP->>Slots: Store peer state
  OSD->>Slots: Read active peers
  OSD-->>Pilot: Render HUD markers
Loading
High-Level Assessment

A firmware-validated first-party guide is preferable to retaining the drifting wiki page. Keeping configuration, protocol behavior, limitations, and troubleshooting together provides one discoverable reference, while external hardware details remain links to avoid duplicating volatile third-party information.

Files changed (2) +275 / -1

Documentation (2) +275 / -1
osd.mdxLink OSD documentation to the new HUD and radar guide +1/-1

Link OSD documentation to the new HUD and radar guide

• Replaces the external GitHub wiki link with an internal link to the new OSD HUD and Craft Radar documentation page.

docs/05-core-features/osd.mdx

osd-hud-and-craft-radar.mdxAdd comprehensive OSD HUD and craft radar guide +274/-0

Add comprehensive OSD HUD and craft radar guide

• Adds firmware-validated documentation for HUD geometry, markers, peer displays, MSP radar messages, hardware setup, and CLI configuration. It corrects outdated defaults, distinguishes OSD_FORMATION_FLIGHT from OSD_RADAR, warns that peer positions do not expire, and includes troubleshooting and operational limitations.

docs/06-advanced-features/osd-hud-and-craft-radar.mdx

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant