-
-
Notifications
You must be signed in to change notification settings - Fork 0
Setup Guide
Welcome! This guide will walk you through setting up the AUV software stack from scratch. Whether you're a new team member or setting up a fresh machine, you'll have everything running in no time.
Before we start, make sure you have:
- Ubuntu 20.04 (recommended-not mandatory)
- ROS Noetic installed (follow the official guide if you haven't)
Create a catkin workspace. Think of this as the home for all our ROS packages.
mkdir -p ~/catkin_ws/srccd src
git clone git@github.com:itu-auv/auv-software.gitWe use catkin_tools for building and vcstool for managing our third-party dependencies:
sudo apt install python3-catkin-tools python3-vcstoolcd ~/catkin_ws
catkin initOur project depends on several external packages (sensors, simulators, etc.). We manage these with .repos files:
# Import third-party packages (sensors, drivers, etc.)
vcs import src < src/auv-software/third_party.repos
# Import simulation packages (Gazebo worlds, UUV simulator, etc.)
vcs import src < src/auv-software/sim.reposThis will clone all the necessary repositories into your src folder.
ROS packages often need system libraries. Let's install them all at once using rosdep:
# First time only - initialize rosdep
sudo rosdep init
rosdep update
# Install all dependencies for packages in src/
rosdep install --from-paths src --ignore-src -r -ycd ~/catkin_ws
catkin buildThis might take a few minutes on the first run. If no errors, you are ready to go.
After building, you need to "source" the workspace to use the packages:
source ~/catkin_ws/devel/setup.bashPro tip: Add this line to your ~/.bashrc or ~/.zshrc so it runs automatically in every new terminal:
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.zshrcStill stuck? Ask the team!