This repository contains the version of the open-source autopilot called ArduPilot that runs on T3 Gemstone development boards.
All details related to the project can be found at docs.t3gemstone.org/en/projects/ardupilot. Below, only a summary of how to perform the building is provided.
Run all commands in the host PC. ArduPilot is cross-compiled for T3 Gemstone boards using T3 Gemstone Toolchains.
You can select which vehicle you want to compile by changing the VEHICLE variable defined inside Taskfile.yml.
git clone https://github.com/t3gemstone/ardupilot
cd ardupilot
git submodule update --init --recursivesh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/binVEHICLE=plane task buildRun following command in the host PC. Board setup is automated via SSH connections.
VEHICLE=plane task build board-setupYou need to reboot the board for overlay changes to take effect. After the reboot, ArduPilot should start automatically and on-board green LED located to the right of the HDMI port should be blinking. Check ArduPilot docs to learn more about LEDs meaning.
If you have done Board Setup once and only want to upload new firmware then run the following commands in the host PC:
VEHICLE=plane task build board-uploadThis repository includes a complete SITL environment for ArduPilot development and testing, orchestrated through Docker Compose. The setup integrates ArduPilot SITL with QGroundControl and Gazebo simulation for realistic vehicle testing.
The SITL environment consists of three containerized services:
- ArduPilot SITL: Flight controller simulation running your vehicle firmware
- QGroundControl: Ground control station for mission planning and monitoring
- Gazebo: 3D physics simulation environment for realistic vehicle dynamics
Start the SITL environment:
task sitl-startStop the SITL environment:
task sitl-stopQGroundControl automatically connects to 14550 UDP port.
SITL parameters are configured in the Taskfile:
SITL_LOCATION: ARDUCOPTER_AUTOTEST
SITL_VEHICLE: ArduPlane
SITL_FRAME: gazebo-skywalker-x8-quad
SITL_WORLD: skywalker_x8_quad_runway.sdfSITL_LOCATION: Starting location for the simulated vehicle
- Find available locations in ArduPilot locations.txt
- Examples:
ARDUCOPTER_AUTOTEST,KSFO,CMAC
SITL_VEHICLE: Vehicle type to simulate
- Examples:
ArduPlane,ArduCopter,ArduSub,Rover
SITL_FRAME: Frame type for vehicle configuration
- Examples:
gazebo-skywalker-x8-quad,gazebo-iris,gazebo-zephyr
SITL_WORLD: Gazebo world file for simulation environment
- Examples:
skywalker_x8_quad_runway.sdf,iris_runway.sdf,zephyr_runway.sdf
After modifying any SITL variables in the Taskfile, restart the environment:
task sitl-startThe Docker Compose configuration will automatically pick up the new environment variables and restart the services with the updated settings.
Checkout SITL_Models documentation for more information about Gazebo models.




















