Skip to content

Learn drone autonomy from simulation to real flight: ROS2 Humble, ArduPilot SITL, Gazebo Harmonic, MAVROS, Raspberry Pi companion computer. Step-by-step beginner tutorials, hardware-verified.

License

Notifications You must be signed in to change notification settings

simtofly/simtofly-guide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SimToFly — Drone Autonomy Guide

SimToFly Cover

From Simulation to Flight
Complete beginner-friendly tutorials for autonomous drones using ROS2 Humble, ArduPilot, and Gazebo Harmonic

DocumentationGetting StartedTutorial PhasesCommunity

ROS2 Humble Gazebo Harmonic ArduPilot GitHub Stars License Documentation


Overview

Learn autonomous drone development from simulation to real hardware deployment using modern tools: ROS2, ArduPilot SITL, and Gazebo Harmonic.

Who this is for:

  • Beginners with no prior ROS or ArduPilot experience
  • Developers wanting to learn modern drone autonomy stack
  • Students and hobbyists building autonomous drones
  • Anyone interested in transitioning from simulation to real hardware

What you'll build:

  • Complete SITL simulation environment
  • 3D visualization with Gazebo Harmonic
  • ROS2 integration with MAVROS
  • Companion computer deployment on Raspberry Pi
  • Real autonomous flight system

Documentation

Visit Documentation Website

Professional documentation with search, dark mode, mobile support, and video tutorials.


Tutorial Phases

Phase 1: Simulation Mastery ✅

Master drone fundamentals in safe virtual environment.

Topics:

  • Prerequisites and environment setup
  • ArduPilot SITL installation
  • MAVProxy command-line control
  • Gazebo Harmonic 3D simulation
  • First autonomous waypoint mission

Status: Complete
Time: 6-8 hours
Start: Phase 1 Documentation


Phase 2: ROS2 Integration

Connect ArduPilot to Robot Operating System.

Topics:

  • ROS2 Humble installation
  • MAVROS setup and configuration
  • Understanding topics and services
  • Custom ROS2 control nodes
  • Autonomous missions via ROS2

Status: In Development
Expected: February 2026


Phase 3: Companion Computer

Deploy ROS2 on Raspberry Pi for onboard processing.

Topics:

  • Raspberry Pi configuration
  • Serial connection to flight controller
  • ROS2 node deployment
  • Hardware-in-the-loop testing
  • Network communication

Status: Planned
Expected: March 2026


Phase 4: Real Hardware

Deploy complete system on actual drone.

Topics:

  • Hardware assembly and wiring
  • Pre-flight safety procedures
  • Ground testing
  • First real flight test
  • Complete mission deployment

Status: Planned
Expected: April 2026


Getting Started

Prerequisites

Hardware:

  • Computer with 8GB RAM minimum (16GB recommended)
  • Ubuntu 22.04 LTS (native or VM)
  • 30GB free disk space
  • Stable internet connection

Knowledge:

  • Basic terminal/command-line familiarity
  • No prior ROS or ArduPilot experience required

Quick Start

  1. Check system requirements: Prerequisites Guide
  2. Set up environment: Environment Setup
  3. Start learning: Phase 1 Overview

👉 Begin Phase 1: Simulation Mastery


Verified System

All tutorials tested and verified on:

Software Stack:

  • Ubuntu 22.04 LTS
  • ArduPilot Copter 4.5.7
  • ROS2 Humble
  • Gazebo Harmonic
  • MAVProxy 1.8+

Hardware (Phase 4):

  • Flight Controller: Cube Orange / Pixhawk 6X
  • Companion Computer: Raspberry Pi 4 (4GB+)
  • Frame: Various quadcopter frames tested

Last verified: December 2025


Repository Structure

simtofly-guide/
├── docs/
│   ├── phase-1-simulation/      # SITL and Gazebo tutorials
│   ├── phase-2-ros2/            # ROS2 integration guides
│   ├── phase-3-companion/       # Raspberry Pi setup
│   ├── phase-4-hardware/        # Real drone deployment
│   ├── appendix/                # Ubuntu install, terminal setup
│   └── images/                  # Logos and shared assets
├── mkdocs.yml                   # Documentation configuration
└── README.md                    # This file

Community

Get Help

Contribute

We welcome contributions! Ways to help:

  • Report bugs or errors in tutorials
  • Suggest improvements or new topics
  • Submit fixes via pull requests
  • Share your success stories
  • Help other learners in discussions

See CONTRIBUTING.md for guidelines.

Stay Updated


Related Repositories

SimToFly Ecosystem:


License

This project is licensed under the MIT License - see the LICENSE file for details.

Permissions

  • Commercial use
  • Modification
  • Distribution
  • Private use

Conditions

  • License and copyright notice must be included

Limitations

  • No Liability
  • No Warranty

Note: While attribution is not legally required, it is appreciated and helps the project grow.


Acknowledgments

Built with knowledge from:

  • ArduPilot community and documentation
  • ROS2 official guides
  • MAVROS maintainers
  • Open-source drone community

Special thanks to everyone who contributes to open-source robotics and drone software.


About

Author: Sidharth Mohan Nair

Project Goals:

  • Make drone autonomy accessible to beginners
  • Provide complete workflow from simulation to hardware
  • Use modern tools (ROS2, latest ArduPilot)
  • Verify all tutorials on real hardware
  • Maintain active documentation

Ready to start your journey?
Begin Phase 1: Simulation Mastery

Made with ❤️ for the drone community
SimToFly@sidharthmohannair


About

Learn drone autonomy from simulation to real flight: ROS2 Humble, ArduPilot SITL, Gazebo Harmonic, MAVROS, Raspberry Pi companion computer. Step-by-step beginner tutorials, hardware-verified.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published