Start Reading Here
First Time Setup

Firmware

Firmware: is low-level code embedded directly into hardware (ROM/Flash) to control functionality, rarely updated, and essential for booting (e.g., BIOS, router OS).
Software: is high-level, user-facing applications (e.g., Windows, apps) stored on disk, designed for user interaction and updated frequently.
What Runs on/Used for Opensource License When to consider
ArduPilot See Below planes, copters, rovers, subs Yes GPL Long Range
ArduCopter Ardupilot version. multirotors and helicopters Yes GPL
PX4 Modern Firmware/Software runs NuttX OS commercial, academic, or research applications Yes BSD High Precision

Ardupilot

- Firmware/Software having very large hobbyist community
- Flying drone has a Circuit board(Central Zero H7) on which Ardupilot or PX4 runs
- Ardupilot/PX4 communicates with Radiolink, rotors, camera etc

Install & Start ardupilot on WSL


$ git clone https://github.com/ArduPilot/ardupilot
$ cd ardupilot
$ Tools/environment_install/install-prereqs-ubuntu.sh -y
$ sim_vehicle.py -v ArduCopter --console --map
..
BUILD SUMMARY
Build directory: /home/amit/ardupilot/build/sitl
Target          Text (B)  Data (B)  BSS (B)  Total Flash Used (B)  Free Flash (B)  External Flash Used (B)
----------------------------------------------------------------------------------------------------------
bin/arducopter   4344092    206421   223808               4550513  Not Applicable  Not Applicable
..
SIM_VEHICLE: Run MavProxy
SIM_VEHICLE: "mavproxy.py" "--retries" "5" "--out" "172.22.128.1:14550" "--master" "tcp:127.0.0.1:5760" "--sitl" "127.0.0.1:5501" "--map" "--console"

// out: ArduPilot SITL → sending MAVLink to Windows host IP (172.22.128.1),Port = 14550 (UDP)
    |- This is exactly what Mission Planner listens to.
      
It will pop up UI
trie

Hardware Board

What Bit
APM(ArduPilotMega) Older, obsolete flight controller board designed around 2011. 8 bit
Pixhawk Advanced 32 bit

SITL (Software-in-the-Loop)

SITL (Software-in-the-Loop) is a simulation technology allowing developers to run autopilot code (like ArduPilot or PX4) directly on a computer without physical hardware. It enables testing flight algorithms and vehicle behavior in a virtual environment, preventing damage to real drones.

Measuring Devices

Device Meaning
Gyroscope Gyro(meaning circle, ring), Scope(means to look at).
This is a device used for measuring angular velocity of a device
Accelerometer An accelerometer is a device that measures the proper acceleration of an object
Barometer A device that measures atmospheric pressure. It calculate the drone's altitude relative to a takeoff point. Because air pressure drops with altitude, barometer can determine how high drone is flying.