PX4 Playground Demo

A complete beginner-friendly environment for learning PX4 autopilot software and drone simulation.

🚀 Quick Start

1. Setup (One-time)

macOS (Apple Silicon):

chmod +x scripts/setup/install_px4_macos.sh
./scripts/setup/install_px4_macos.sh

Linux (Ubuntu 24.04):

chmod +x scripts/setup/install_px4_linux.sh
./scripts/setup/install_px4_linux.sh

2. Test Installation

chmod +x scripts/utilities/quick_test.sh
./scripts/utilities/quick_test.sh

3. Your First Flight

# Start lightweight simulator
./scripts/simulation/start_jmavsim.sh

# OR start full 3D simulator
./scripts/simulation/start_gazebo.sh

4. Try Flying Commands

In the PX4 shell that opens:

commander takeoff
commander land

📚 Learning Path

  1. Start Here: docs/tutorials/01-getting-started.md
  2. First Mission: docs/tutorials/02-first-mission.md
  3. Try Examples: examples/basic_missions/
  4. Python Control: examples/mavlink_demos/

🗂️ Repository Structure

├── docs/                    # Learning materials and tutorials
├── scripts/
│   ├── setup/              # Installation scripts for your platforms
│   ├── simulation/         # Start simulators quickly
│   └── utilities/          # Testing and helper scripts
├── examples/
│   ├── basic_missions/     # Simple flight patterns
│   ├── mavlink_demos/      # Communication examples
│   └── custom_modules/     # Advanced modifications
├── configs/                # Vehicle and world configurations
└── logs/                   # Flight logs and data

🎯 What You'll Learn

  • PX4 Basics: Autopilot software fundamentals
  • Simulation: Test flights without hardware
  • Mission Planning: Autonomous flight paths
  • MAVLink: Drone communication protocol
  • Python Control: Programmatic flight control
  • Safety Systems: Failsafes and emergency procedures

🖥️ System Requirements

Minimum (jMAVSim):

  • 4GB RAM, any modern CPU
  • Works on most modern systems

Recommended (Gazebo):

  • 8GB+ RAM
  • Dedicated graphics preferred
  • Better graphics performance

🆘 Need Help?

Common Issues:

  • Build errors: Run scripts/utilities/quick_test.sh
  • Python errors: Check virtual environment activation
  • Simulation won't start: Try jMAVSim first

Resources:

🎮 Ready to Fly?

# Quick test everything works
./scripts/utilities/quick_test.sh

# Start your first simulation
./scripts/simulation/start_jmavsim.sh

Perfect for field applications and cloud-native development! 🛡️☁️