Skip to main content
Hand Controlled Drone

Hand Controlled Drone

Hand Controlled Drone based on LeapC, PX4, ROS2 and Gazebo running in SITL

Overview

This project explores intuitive drone control by translating hand motion into offboard flight commands. The full stack runs in SITL: PX4 for the autopilot, ROS 2 for the control bridge, Gazebo for simulation, and Leap Motion (LeapC) for hand tracking input.

System architecture

  • Hand tracking (LeapC): reads hand pose / motion signals
  • ROS 2 control node: filters + maps hand motion to flight setpoints
  • PX4 offboard control: receives setpoints and stabilizes the vehicle
  • Gazebo simulation: provides the world + vehicle dynamics for repeatable testing

Control mapping (concept)

  • Hand position → lateral motion (x/y)
  • Hand height → climb / descent
  • Hand orientation / gesture → yaw or mode/safety actions

To keep control stable, the pipeline applies smoothing and safety limits (rate limiting, dead-zones, and bounded setpoints).

Highlights

  • End-to-end integration across LeapC → ROS 2 → PX4 → Gazebo
  • Realtime feel: low-latency inputs with filtering to avoid jitter
  • Safety-first design: conservative defaults and bounded commands for simulation testing

Repository

What I learned

  • Offboard control is less about “sending commands” and more about managing dynamics + constraints.
  • Small UX details (dead-zones, smoothing, and gesture semantics) make a big difference in how “natural” control feels.