Skip to content

Docker image for Clearpath's Husky A200 on ROS 1 Melodic

Notifications You must be signed in to change notification settings

j3soon/docker-ros-husky

Repository files navigation

Docker image for Clearpath's Husky A200 on ROS 1 Melodic

Prerequisites

Hardware:

  • Husky base
  • Power supply cable (for recharging the battery)
  • USB cable

We choose not to use the MINI-ITX computer, and control Husky directly through a Jetson board or laptop.

More information such as User Guide and Manual Installation steps can be found in this post.

Installation

Clone the repo:

git clone https://github.com/j3soon/docker-ros-husky.git
cd docker-ros-husky

Installation of udev rules must be done on the host machine:

./setup_udev_rules.sh

You should see done if everything works correctly.

You need to reboot the host machine to make the udev rules take effect.

Teleoperation

sudo apt-get update && sudo apt-get install -y docker.io docker-compose
# Connect and power on husky
docker-compose up -d
./docker-exec-bringup.sh
# Open a new terminal
./docker-exec-teleop.sh
# Control husky with keyboard
# Press Ctrl+C to exit
docker-compose down

The pre-built docker images will be pulled automatically.

Although the docker container support hot plugging, if Husky is re-plugged or re-booted, you still need to re-run the following commands:

./docker-exec-bringup.sh
./docker-exec-teleop.sh

Build Docker Images Locally

  • On amd64 machine:

    docker build -f Dockerfile -t j3soon/ros-melodic-husky:latest .
  • On arm64 machine:

    docker build -f Dockerfile.jetson -t j3soon/ros-melodic-husky:latest .

If you want to build an image that supports multiple architectures, please refer to the build workflow.

Third Party Scripts

Uninstall

Uninstallation of udev rules must be done on the host machine:

./remove_udev_rules.sh

You should see done if everything works correctly.

Tests

Last tested manually on 2023/10/26:

  • Ubuntu 18.04.6 LTS (amd64) on Intel CPU

Last tested manually on 2023/10/27:

  • Ubuntu 20.04.6 LTS (arm64) on Jetson AGX Xavier (Jetpack 5.1.2)

Troubleshooting

  • Most command failures can be resolved by simply re-running the command or rebooting Husky.
  • Exec into the container with bash for debugging:
    ./docker-exec-debug.sh
  • See this post for troubleshooting ROS.
  • See this post for troubleshooting Husky.

Releases

No releases published

Packages

No packages published