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.
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.
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
-
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.
thirdparty/files/udev/60-ros-melodic-husky-bringup.rules
is copied from: https://github.com/husky/husky/blob/melodic-devel/husky_bringup/debian/udev (commit cf7a47e)thirdparty/50-clearpath.list
is copied from: https://github.com/clearpathrobotics/public-rosdistro/blob/master/rosdep/50-clearpath.list (commit 1e88245)thirdparty/*
is copied from: https://github.com/clearpathrobotics/ros_computer_setup/tree/main (commit 90de83b)thirdparty/install.sh
is further modified to meet our needs.
Uninstallation of udev rules must be done on the host machine:
./remove_udev_rules.sh
You should see done
if everything works correctly.
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)