Files
rover-ros2/README.md
2025-10-26 06:54:13 -05:00

2.8 KiB

ASTRA Rover ROS2 Nodes

License: AGPL v3

About

Includes all ROS2 packages for the rover. These are centrally located for modular rover operation.

You will use this package to launch all module-side ROS2 nodes.

Table of Contents

  1. Title
  2. Table of Contents
  3. Software Requirements
    1. ROS2 Humble
    2. IP Configuration
  4. Hardware Requirements
  5. Recommended Programs
  6. How to Use
  7. Common Problems/Troubleshooting
  8. Major To-Do Items
  9. Author(s)
  10. Maintainer(s)

Software Requirements

Since July/August of 2025, ASTRA uses NixOS. A functioning NixOS installation is assumed.

ROS2 Humble

We use ROS2 Humble, and plan on using that until support for it expires.

To install ROS2, run the following command in your /etc/nixos folder:

nix flake init --template github:lopsided98/nix-ros-overlay

After you install ROS2, you can install all dependencies needed by this repository by running the following commands:

$ sudo rosdep init  # only run once
$ rosdep update
$ rosdep install --from-path . --ignore-src -y

IP Configuration

  • IP Address: 192.168.1.x
    • This can be just about anything not already in use. I recommend something 30-39
  • Net Mask: 255.255.255.0
  • Gateway: 192.168.1.0

Hardware Requirements

  • A functioning computer.

Recommended Programs

VSCode

VSCode is a wonderful program. I used it to make this project and recommend anyone else working on it use it as well.

To install VSCode, add the following package to your pkgs array / packages.nix config file:

vscode-fhs

Alternatively, use a flake to install home-manager, and add to your home.nix:

vscode.enable = true;

How to Use

$ colcon build
$ source install/setup.bash
  # main launch files:
$ ros2 launch anchor_pkg rover.launch.py
$ ros2 run headless_pkg headless_full

Testing Serial

You can fake the presence of a Serial device (i.e., MCU) by using the following command:

socat -dd -v pty,rawer,crnl,link=/tmp/ttyACM9 pty,rawer,crnl,link=/tmp/ttyOUT

Connecting the GuliKit Controller

Connecting the GuliKit Controller (Recommended)

  • Connect controller to pc with USB-C
  • Select the "X-Input" control mode (Windows logo) on the controller.
  • Hold the button next to the symbols (windows, android, switch, etc...)
  • You'll need to release the button and press down again to cycle to the next mode

Common Problems/Troubleshooting

  • TBD

Major To-Do Items

  • TBD

Author(s)

Name Email
Tristan McGinnis tlm
David Sharpe ds0196@uah.edu

Maintainer(s)

Name Email
David Sharpe ds0196@uah.edu
Riley McClain email