ShlkOfTheRa/scarab-osdPublic

MWOSD - UAV HUD

AI summary: Multipurpose open-source On-Screen Display (OSD) software for UAVs supporting major flight controllers.

Stars
1.5K
Forks
0
Watchers
535
Open issues
0
Open PRs
0
Contributors
~36
Commits
2.2K
Branches
4

CNo licenseCreated Mar 3, 2026Last push 5mo agoLatest release 2.0.0.1

Star history

since Mar 15, 2026
05001KMar 2026May 2026Jun 2026Aug 2026
1.5K stars as of Aug 7, 2026, tracked back to Mar 15, 2026. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks

What scarab-osd does

Scarab OSD is a versatile C-based firmware designed to provide On-Screen Display functionality for unmanned aerial vehicles. It acts as the visual bridge between the drone's telemetry data and the pilot's video feed, overlaying critical flight information like battery voltage, altitude, and artificial horizon. The software distinguishes itself through extremely broad compatibility, interfacing seamlessly with numerous popular flight control ecosystems including Betaflight, iNav, ArduPilot, and PX4, making it a universal tool for diverse custom drone builds.

FPV pilots, drone builders, and UAV hobbyists who require customizable video telemetry overlays. Users need basic familiarity with Arduino IDE and flight controller configuration.

  • Broad compatibility: natively supports telemetry from Betaflight, iNav, APM, Pixhawk, and PX4.
  • Real-time telemetry overlay: renders critical flight data directly onto analog video feeds.
  • Arduino environment support: easily flashable and configurable using standard Arduino tools.
  • Customizable layouts: allows pilots to configure exactly which data points appear on screen.
  • Lightweight C architecture: optimized to run on constrained microcontrollers without introducing video latency.

Where teams use it

FPV flying

Monitor vital statistics like battery voltage and RSSI without taking eyes off the video feed.

Long-range navigation

Overlay GPS coordinates, distance to home, and heading for autonomous or long-range missions.

Cross-platform builds

Use a single OSD solution across a fleet of drones running different flight controller firmwares.

Custom telemetry visualization

Modify the C code to display bespoke sensor data on specialized research UAVs.

Getting started: git clone https://github.com/ShikOfTheRa/scarab-osd.git

README

master branch

Click here for our WIKI for the latest documentation

Current development repository status : Build Status

MWOSD NextGeneration OSD for UAV


An Multipurpose Open Source OSD software with support for:

  • BETAFLIGHT
  • CLEANFLIGHT
  • RACEFLIGHT
  • BASEFLIGHT
  • iNAV
  • KISS
  • APM
  • PX4
  • MULTIWII
  • dRonin
  • LIBREPILOT
  • HARIKIRI
  • TAULABS
  • DJI NAZA
  • FIXEDWING (BF/MWII)
MWOSD also provides support a number of other configurations:
  • Traditional GPS based OSD with full GPS info - Altitude , Direction, Distance, Speed etc.
  • Basic OSD - basic Volts / Amps / RSSI / Timer
  • Groundstation OSD for GS voltage / RSSI and Timer
  • NAZA - test only

Click here for GUI Configurator with easy install firmware



View on GitHub

Recent activity

commits and pull requests

Releases and announcements

17 total
  1. R2.0.0.12.0.0.1Mar 17, 20261 downloads

    # R2.0.0.1 We are pleased to announce the R2.0 release of MWOSD Note: This release requires a minimum GUI version of 2.0.0.0 Note: This release will default settings for versions prior to 2.0.0.0 - back up in existing version GUI before upgrading. The latest GUI is available here for download here: https://github.com/ShikOfTheRa/scarab-osd-gui/tree/master/MW_OSD_GUI ### 2.0.0.1 Summary of changes : * OSD - Additional Ardupilot flight modes * OSD - ADSB AGL/ASL reference choice for coexisting with different FC operation * OSD - Support to display airspeed in knots * OSD - Improve speed accuracy with mavlink * FIX - Bugfix for loss of OSD elements from rare UBLOX GPS error message handling ### 2.0.0.0 Summary of changes : * OSD - Antenna tracking support - Sentinel AAT support * OSD - Display element for battery % remaining * OSD - Display element for embedded VTX * OSD - Display element for average cell voltage * OSD - Display element for PID * OSD - ESC Telemetry OSD target * OSD - Support for full screen layout in PAL * OSD - PAL/NTSC autocam option without PAL position manipulation * OSD - Improved serial performance - especially mavlink * OSD - Im

  2. R2.0.0.02.0.0.0Mar 17, 2026224 downloads

    !!BETA TEST RELEASE!! We are pleased to announce the R2.0 release of MWOSD Note: This release requires a minimum GUI version of 2.0.0.0 Note: This release will default settings for versions prior to 2.0.0.0 - back up in existing version GUI before upgrading. The latest GUI is available here for download here: https://github.com/ShikOfTheRa/scarab-osd-gui/tree/master/MW_OSD_GUI ### 2.0.0.0 Summary of changes : * OSD - Antenna tracking support - Sentinel AAT support * OSD - Display element for battery % remaining * OSD - Display element for embedded VTX * OSD - Display element for average cell voltage * OSD - Display element for PID * OSD - ESC Telemetry OSD target * OSD - Support for full screen layout in PAL * OSD - PAL/NTSC autocam option without PAL position manipulation * OSD - Improved serial performance - especially mavlink * OSD - Improved VSYNC performance * OSD - VSYNC - automatically use if supporting hardware detected * OSD - Support for APM take off mode. TKOF (fixed wing) * OSD - co-ordinates in DDMMSS (config.h option) * OSD - Support for Mavlink alternative altitude source (config.h option) * GUI - support for all OSD changes * GUI - 1.9

  3. R1.9.2.01.9.2.0Mar 17, 2026pre-release

    Note: This release requires a minimum GUI version of 1.9.1.0 Note: This release will default settings for versions prior to 1.9.1.0 - back up first if required. Latest GUI is available here for download: https://github.com/ShikOfTheRa/scarab-osd-gui/tree/master/MW_OSD_GUI 1.9.2.0 Summary of changes : OSD - Support for KISS GPS RTH (1.3RC44) - xavier OSD - Support for KISS Turtle mode (1.3RC44) - xavier OSD - Support for KISS Messaging (1.3RC44) - xavier OSD - Support for KISS screen swithc from channel 8-10 - xavier OSD - Support for Ardupilot ADSB - real aircraft proximity awareness OSD - Support for Ardupilot Buddyflight OSD - Kiss VTX Power / Channel display OSD - Dual timer support OSD - Support for average battery cell display OSD - Support for Steele PDB OSD - Low memory warning added OSD - Setting 0 disables all alarm flashing - except voltage OSD - filter disabled by default - faster sensor updates are more popular OSD - support for canvasOSD - OSD runs purely from OSD OSD - LTM2ADSB protocol converter for buddyflight OSD - UBLOX2ADSB protocol converter for buddyflight BUG - LTM O frame support removed for FC that do not use it. BUG - LTM home set i

  4. R1.9.1.6 Test release1.9.1.6Mar 17, 2026pre-release

    Note: This release requires a minimum GUI version of 1.9.1.0 Note: This release will default settings for versions prior to 1.9.1.0 - back up first if required. Latest GUI is available here for download: https://github.com/ShikOfTheRa/scarab-osd-gui/tree/master/MW_OSD_GUI 1.9.1.6 Summary of changes : OSD - Support for Ardupilot ADSB - real aircraft proximity awareness OSD - Support for Ardupilot Buddyflight OSD - Kiss VTX Power / Channel display OSD - Dual timer support OSD - Support for average battery cell display OSD - Support for Steele PDB OSD - Low memory warning added GUI - DJI Naza available to flash from GUI 1.9.1.5 Summary of changes : OSD - Support for KISS GPS OSD - Support for KISS PID menu support OSD - Support for KISS Filter menu OSD - Support for KISS VTX menu OSD - Support for ARDUSUB OSD - Support for MAVLINK dual GPS / Baro altitude display OSD - Support for MAVLINK high resolution altitude OSD - Significantly improved Mavlink messages. Full length and human readable OSD - Different indicator icons for GPS, Baro and high resolution altitude values OSD - Bugfix for iNav airspeed display OSD - Bugfix for altitude display. GPS can be d

  5. R1.9.1.51.9.1.5Mar 17, 2026

    Note: This release requires a minimum GUI version of 1.9.1.0 Note: This release will default settings for versions prior to 1.9.1.0 - back up first if required. Latest GUI is available here for download: https://github.com/ShikOfTheRa/scarab-osd-gui/tree/master/MW_OSD_GUI 1.9.1.5 Summary of changes : OSD - Support for KISS GPS OSD - Support for KISS PID menu support OSD - Support for KISS Filter menu OSD - Support for KISS VTX menu OSD - Support for ARDUSUB OSD - Support for MAVLINK dual GPS / Baro altitude display OSD - Support for MAVLINK high resolution altitude OSD - Significantly improved Mavlink messages. Full length and human readable OSD - Different indicator icons for GPS, Baro and high resolution altitude values OSD - Bugfix for iNav airspeed display OSD - Bugfix for altitude display. GPS can be displayed independently of Baro altitude OSD - Developer debug memory display functioning for newer compiler versions 1.9.1.4 Summary of changes : OSD - Support for up to 12s main battery OSD - Support for APM VTOL OSD - Support for NMEA 9600 baud option pre-compiled OSD - Support for SBUS OSD - Bugfix for when selected reversed ahi pitch OSD - Bugfix

Code frequency

additions and deletions

Commits per week

last 52 weeks

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 5 commitsSun 1:00 — 1 commitsSun 2:00 — 2 commitsSun 3:00 — 1 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 2 commitsSun 9:00 — 0 commitsSun 10:00 — 2 commitsSun 11:00 — 8 commitsSun 12:00 — 4 commitsSun 13:00 — 2 commitsSun 14:00 — 0 commitsSun 15:00 — 1 commitsSun 16:00 — 4 commitsSun 17:00 — 3 commitsSun 18:00 — 4 commitsSun 19:00 — 7 commitsSun 20:00 — 10 commitsSun 21:00 — 13 commitsSun 22:00 — 3 commitsSun 23:00 — 5 commitsMon 0:00 — 0 commitsMon 1:00 — 1 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 2 commitsMon 8:00 — 10 commitsMon 9:00 — 45 commitsMon 10:00 — 39 commitsMon 11:00 — 49 commitsMon 12:00 — 33 commitsMon 13:00 — 29 commitsMon 14:00 — 34 commitsMon 15:00 — 33 commitsMon 16:00 — 30 commitsMon 17:00 — 31 commitsMon 18:00 — 1 commitsMon 19:00 — 3 commitsMon 20:00 — 6 commitsMon 21:00 — 3 commitsMon 22:00 — 9 commitsMon 23:00 — 4 commitsTue 0:00 — 1 commitsTue 1:00 — 2 commitsTue 2:00 — 0 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 1 commitsTue 6:00 — 0 commitsTue 7:00 — 0 commitsTue 8:00 — 17 commitsTue 9:00 — 35 commitsTue 10:00 — 58 commitsTue 11:00 — 62 commitsTue 12:00 — 32 commitsTue 13:00 — 39 commitsTue 14:00 — 38 commitsTue 15:00 — 26 commitsTue 16:00 — 27 commitsTue 17:00 — 11 commitsTue 18:00 — 6 commitsTue 19:00 — 6 commitsTue 20:00 — 7 commitsTue 21:00 — 4 commitsTue 22:00 — 15 commitsTue 23:00 — 11 commitsWed 0:00 — 2 commitsWed 1:00 — 3 commitsWed 2:00 — 6 commitsWed 3:00 — 2 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 1 commitsWed 8:00 — 23 commitsWed 9:00 — 41 commitsWed 10:00 — 29 commitsWed 11:00 — 42 commitsWed 12:00 — 30 commitsWed 13:00 — 23 commitsWed 14:00 — 32 commitsWed 15:00 — 30 commitsWed 16:00 — 15 commitsWed 17:00 — 13 commitsWed 18:00 — 4 commitsWed 19:00 — 9 commitsWed 20:00 — 3 commitsWed 21:00 — 6 commitsWed 22:00 — 6 commitsWed 23:00 — 9 commitsThu 0:00 — 2 commitsThu 1:00 — 1 commitsThu 2:00 — 0 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 13 commitsThu 9:00 — 54 commitsThu 10:00 — 33 commitsThu 11:00 — 26 commitsThu 12:00 — 20 commitsThu 13:00 — 35 commitsThu 14:00 — 33 commitsThu 15:00 — 36 commitsThu 16:00 — 28 commitsThu 17:00 — 18 commitsThu 18:00 — 1 commitsThu 19:00 — 9 commitsThu 20:00 — 2 commitsThu 21:00 — 4 commitsThu 22:00 — 6 commitsThu 23:00 — 2 commitsFri 0:00 — 4 commitsFri 1:00 — 2 commitsFri 2:00 — 1 commitsFri 3:00 — 1 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 16 commitsFri 9:00 — 33 commitsFri 10:00 — 29 commitsFri 11:00 — 33 commitsFri 12:00 — 25 commitsFri 13:00 — 31 commitsFri 14:00 — 29 commitsFri 15:00 — 30 commitsFri 16:00 — 24 commitsFri 17:00 — 12 commitsFri 18:00 — 1 commitsFri 19:00 — 11 commitsFri 20:00 — 5 commitsFri 21:00 — 9 commitsFri 22:00 — 9 commitsFri 23:00 — 10 commitsSat 0:00 — 6 commitsSat 1:00 — 4 commitsSat 2:00 — 0 commitsSat 3:00 — 2 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 0 commitsSat 8:00 — 2 commitsSat 9:00 — 0 commitsSat 10:00 — 1 commitsSat 11:00 — 3 commitsSat 12:00 — 2 commitsSat 13:00 — 1 commitsSat 14:00 — 1 commitsSat 15:00 — 1 commitsSat 16:00 — 7 commitsSat 17:00 — 0 commitsSat 18:00 — 7 commitsSat 19:00 — 5 commitsSat 20:00 — 2 commitsSat 21:00 — 2 commitsSat 22:00 — 7 commitsSat 23:00 — 3 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Mar 15, 2026daily#15+264
  • Genymobile/scrcpy

    Display and control your Android device

    147.1K stars · C

  • microsoft/PowerToys

    Microsoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows

    137.6K stars · C

  • colbymchenry/codegraph

    Pre-indexed code knowledge graph, auto syncs on code changes, for Claude Code, Codex, Gemini, Cursor, OpenCode, AntiGravity, Kiro, and Hermes Agent — fewer tokens, fewer tool calls, 100% local

    65.2K stars · C

  • DeusData/codebase-memory-mcp

    High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

    37.8K stars · C

  • JustVugg/colibri

    Run frontier MoE models on hardware you already own — pure C, zero deps, experts streamed from disk. Tiny engine, immense model. 🐦

    23K stars · C

  • antirez/ds4

    DeepSeek 4 Flash and PRO local inference engine for Metal, CUDA and ROCm

    20.8K stars · C