Field Computer Operation

This guide assumes you know basic terminal usage (how to cd, run commands, etc). Otherwise, everything is explicitly laid out. Note: when the instructions say “new terminal”, a new tab will also do.

In a new terminal, run cd ~/robocup-software, then run git checkout ros2.

Manual Control

In a new terminal:

  1. cd ~/robocup-software

  2. Source ROS2 and our build files:

. ./source.bash
  1. Launch soccer in manual control mode

make run-manual

In a second new terminal:

  1. cd ~/robocup-software

  2. Source everything (see above)

  3. Run the utility script to connect a controller to a robot:


This will output a help message. In nearly every case you will only have to change the robot ID, like so:

./util/manual_control_connect.bash -r 1

Other options for args can be found in the source code: soccer/src/soccer/joystick/.

After you run this utility script, you will see printed confirmation in the first terminal where you launched soccer.

For keyboard control, keep focus on the small black window (as in, you should click on that window if you can’t see it).

  • WASD to move

  • QE to pivot

  • K to kick

  • J to chip

  • Spacebar to dribble

Launching Soccer

In a new terminal, run the following lines one-by-one:

source /opt/ros/foxy/setup.bash
make perf
source install/setup.bash
ros2 launch rj_robocup

This should open soccer, good for testing radio connection. If you want to run gameplay, you have to start autoref and vision (keep scrolling).

Open Ref

In a new terminal:

  1. cd ~/ssl-game-controller

  2. ./ssl-game-controller_v2.12.7_linux_amd64 (Just hit tab after typing ssl)

  3. Click open link on the line that states UI is available at http://...

  4. Make sure at least one team is named RoboJackets. If not, click the top left gear, click pen next to one of the names and find RoboJackets in the dropdown.

Starting Vision

Assuming you have soccer running (see top section), you need the league-provided vision software to give our gameplay system what it needs to work.

In a new terminal: (cd ~/ssl-vision && ./bin/vision)

This should pull up a GUI of the ssl-vision system. In said GUI, start capture by going to the left sidebar and clicking the arrows to dropdown:

Thread 0 -> Image Capture -> Capture Control -> Start Capture

Then push the start button. (If you can’t see this button, try scrolling to the right with the bar on bottom.) Do the same for Thread 1 for full-field coverage.

If our system isn’t picking up on vision’s input, try: 1. restarting soccer 2. launching the graphical client (cd ~/ssl-vision && ./bin/graphicalClient)

If the graphical client doesn’t show any robots, vision is broken and something is terribly wrong. Give an experienced software member a shout.

If you are the experienced member or there is not an experienced member to help, you can try using this guide in our computer-config repo to fix vision.