This guide helps you set up the DIA workspace on a new computer.
- Ubuntu 22.04 (or compatible)
- ROS 2 Humble (or your ROS 2 distribution)
- Git
git clone --recursive https://github.com/YOUR_USERNAME/DIA.git
cd DIAThe --recursive flag will automatically clone all submodules including:
PX4-Autopilot(branch: dia)px4_msgsego-planner-swarm(branch: ros2_version)lio_pipeline/Point-LIO(LIO implementation for localization)
Run the dependency installation script:
chmod +x setup_dependencies.sh
./setup_dependencies.shThis script will install:
- Micro XRCE-DDS Agent: PX4 communication bridge
- nvblox: NVIDIA's ESDF mapping library (requires manual installation)
cd ros2_ws
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build
source install/setup.bashros2 launch super_launch system.launch.pyIf you already cloned the repository without --recursive:
cd DIA
git submodule update --init --recursiveTo update submodules to the latest commits:
git submodule update --remotesensor_interface: LiDAR + IMU data providerlio_pipeline/: LIO implementations directoryPoint-LIO: HKU-MARS Point-LIO for localization- (Future: FAST-LIO, etc.)
esdf_mapping: NVBlox ESDF mappingego_planning: EGO-Swarm planner (single UAV)trajectory_control: B-spline → PX4 TrajectorySetpointpx4_interface: Micro XRCE-DDS Agent launchersuper_launch: System-wide launch file
If you encounter build errors, try building packages in order:
colcon build --packages-select px4_msgs
colcon build --packages-select traj_utils
colcon buildEnsure the agent is installed:
which MicroXRCEAgentIf not found, run the setup script again or install manually.
Install nvblox following the official guide: https://nvidia-isaac.github.io/nvblox/
Or use apt (requires CUDA):
sudo apt-get install ros-$ROS_DISTRO-nvblox-ros