An open API service indexing awesome lists of open source software.

https://github.com/alireza787b/mavsdk_drone_show

All in one Drone Show and Smart Swarm Solutin for PX4
https://github.com/alireza787b/mavsdk_drone_show

drone mavlinkk mavsdk px4 swarm swarm-robotics

Last synced: about 1 month ago
JSON representation

All in one Drone Show and Smart Swarm Solutin for PX4

Awesome Lists containing this project

README

          

# MAVSDK Drone Show (MDS)

**All-in-One PX4 Framework for Drone Shows, Smart Swarms, and SAR**

[![Version](https://img.shields.io/badge/version-5.0-blue.svg)](CHANGELOG.md)
[![License](https://img.shields.io/badge/license-PolyForm%20Dual-blue.svg)](LICENSE)
[![Python](https://img.shields.io/badge/python-3.11%20%7C%203.12%20%7C%203.13-blue.svg)](docs/guides/python-compatibility.md)

MDS combines the drone-side runtime, GCS/backend services, and React operator dashboard into one PX4-oriented stack. It is built to stay simple enough for a quick SITL demo while remaining structured enough for serious multi-drone validation, operations, and custom deployments.

## What MDS Covers

- **Offline drone shows** with SkyBrush-imported trajectories and synchronized execution
- **Smart swarm missions** with live leader-follower coordination and runtime control
- **QuickScout SAR / recon** with multi-drone coverage planning and PX4 Mission Mode execution
- **Unified operations tooling** with SITL, GCS services, trajectory planning, and live/historical logs

## Start Here

| If you want to... | Start here |
|-------------------|------------|
| run the first demo quickly | [SITL Comprehensive Guide](docs/guides/sitl-comprehensive.md) |
| import and launch a drone show | [Drone Show Guide](docs/features/drone-show.md) |
| run Smart Swarm from the dashboard | [Smart Swarm Guide](docs/features/smart-swarm.md) |
| author, process, and launch a Swarm Trajectory mission | [Swarm Trajectory Guide](docs/features/swarm-trajectory.md) |
| point MDS at a customer/private repo | [Custom Repo Workflow](docs/guides/custom-repo-workflow.md) |
| install a GCS on a VPS or Ubuntu box | [GCS Setup Guide](docs/guides/gcs-setup.md) |
| deploy real drone hardware | [MDS Init Setup Guide](docs/guides/mds-init-setup.md) |
| build or ship a validated custom SITL image | [SITL Custom Release Workflow](docs/guides/sitl-custom-release-workflow.md) |
| browse everything else | [Documentation Index](docs/README.md) |

## Quick Demo

For a normal first run, use the official SITL archive and the full guide:

- **[SITL Comprehensive Guide](docs/guides/sitl-comprehensive.md)** for the current MEGA download, archive validation, extraction, GCS bootstrap, and container launch flow

Once the official image is loaded and the GCS bootstrap is complete, the minimal 2-drone demo path is:

```bash
cd ~/mavsdk_drone_show
bash multiple_sitl/create_dockers.sh 2
bash app/linux_dashboard_start.sh --sitl
```

Then open `http://:3030`.

If you prefer a memorable command wrapper, the root `Makefile` exposes the same
canonical scripts without replacing them:

```bash
make help
make gcs-sitl
make gcs-real START_FLAGS="--prod --skip-deps"
make fleet-sync
```

See the [Operator Makefile Guide](docs/guides/operator-makefile.md) for the
full command map and the rule that `make` targets must remain thin wrappers.

`bash app/linux_dashboard_start.sh --sitl` now keeps the FastAPI backend single-process by default, even in development mode, so telemetry, heartbeats, command tracking, and other in-memory operational state stay coherent during live SITL runs. Only enable backend auto-reload for backend code editing with `MDS_GCS_BACKEND_RELOAD=true`.

For the stock official SITL package, Mission Config starts from the tracked Azadi Stadium demo origin in `data/origin.sitl.default.json`. If you later set a different origin in the dashboard or via the API, MDS writes a local runtime override to `data/origin.json` on that server. Remove that local file when you want the stock Azadi default to apply again.

For the default official HTTPS demo path, the GCS now treats git write-back as disabled by default (`MDS_GIT_AUTO_PUSH=false`). That keeps imports/config saves clean on read-only evaluation setups; move to the fork/SSH workflow when you want the GCS to commit and push changes.

If you skipped the bootstrap installer and do not have the repo yet:

```bash
git clone -b main https://github.com/alireza787b/mavsdk_drone_show.git
cd mavsdk_drone_show
```

For a first dashboard-driven Smart Swarm run after SITL launch:

1. open `Overview` and confirm the target drones show `READY` with live telemetry
2. open `Swarm Design` and review the saved follow chain / cluster layout
3. use `Formation Analysis` to choose the cluster you want to operate on
4. use `Smart Swarm Runtime` to verify the `Formation Preview` and live readiness snapshot
5. start `Selected Drone` or `Selected Cluster`, then use `Stop Swarm (Hold)`, `Land Swarm`, or `RTL Swarm` for explicit swarm-level control

For the validated 5-drone Smart Swarm acceptance flow after a SITL launch, use:

```bash
python3 tools/validate_smart_swarm_runtime.py
```

If you need your own fork, custom image, or a pinned redistribution workflow, do not improvise from the demo path. Use:

- **[Custom Repo Workflow](docs/guides/custom-repo-workflow.md)**
- **[Advanced SITL Guide](docs/guides/advanced-sitl.md)**
- **[SITL Custom Release Workflow](docs/guides/sitl-custom-release-workflow.md)**

These advanced and real-hardware paths require stronger PX4/Linux/networking knowledge plus licensing, regulatory, and operational review. If you need private assistance or deployment consulting, contact [Alireza on LinkedIn](https://www.linkedin.com/in/alireza787b/) or [p30planets@gmail.com](mailto:p30planets@gmail.com).

## More Guides

- **[Advanced SITL Guide](docs/guides/advanced-sitl.md)** for custom runtime env vars, mutable boot-sync behavior, and debug-oriented SITL tuning
- **[Logging System Guide](docs/guides/logging-system.md)** for live and historical GCS / drone logs
- **[QuickScout Guide](docs/quickscout.md)** for SAR / recon workflows
- **[Documentation Index](docs/README.md)** for the full map, APIs, archived notes, and deeper references

## Product Highlights

- **Single operator surface**: React dashboard for monitoring, control, QuickScout, trajectory planning, and log review
- **Modern SITL workflow**: prebuilt PX4 Gazebo SITL image, fast container startup, and reproducible custom-image tooling
- **Operational visibility**: unified logging across GCS, drones, and frontend error reporting with exportable sessions
- **Drone Show pipeline**: staged SkyBrush ZIP import, processed trajectory plots, readiness gating, and synchronized launch control
- **Scalable architecture**: designed for anything from a small demo to large validated multi-container runs

## Dashboard Scope

The dashboard covers:

- live fleet monitoring and control
- mission upload and execution
- 3D trajectory planning
- QuickScout mission planning and monitoring
- live and historical Log Viewer workflows

Map-heavy features such as trajectory planning and QuickScout require a Mapbox token. See the relevant guides in [Documentation Index](docs/README.md).

## Videos




MDS 3 Complete Feature Showcase



Feature Showcase



100-Drone SITL Test



100-Drone SITL



Smart Swarm Demo



Smart Swarm Demo

- **Project history and walkthrough playlist:** [YouTube playlist](https://www.youtube.com/watch?v=dg5jyhV15S8&list=PLVZvZdBQdm_7ViwRhUFrmLFpFkP3VSakk&pp=sAgC)
- **MDS 5 walkthrough:** coming soon, to be linked here when published

## Documentation

- **[Documentation Index](docs/README.md)**: full guide map
- **[CHANGELOG.md](CHANGELOG.md)**: notable changes
- **[VERSIONING.md](docs/VERSIONING.md)**: release/version workflow
- **[Python Compatibility](docs/guides/python-compatibility.md)**: supported Python versions

## Licensing

MDS uses dual licensing:

- **PolyForm Noncommercial** for education, research, and other non-commercial use
- **PolyForm Small Business** for qualifying small commercial operators
- **Commercial license** for larger commercial deployments

See [LICENSE](LICENSE) and [LICENSE-COMMERCIAL.md](LICENSE-COMMERCIAL.md).

## Contact And Contributions

- **Commercial / deployment inquiries:** [p30planets@gmail.com](mailto:p30planets@gmail.com)
- **GitHub issues:** [bug reports and feature requests](https://github.com/alireza787b/mavsdk_drone_show/issues)
- **Contributing guide:** [CONTRIBUTING.md](CONTRIBUTING.md)

Contributors should start feature branches from `main`. Use short-lived feature or client branches for work-in-progress, then merge back to `main` only after SITL/hardware validation.

## Safety Note

Real-drone deployment requires appropriate flight-test discipline, regulatory compliance, and failsafe validation. Treat SITL success as a prerequisite, not as proof of real-world readiness.