Skip to main content

Environment Setup

1. Quick Download​

# Clone the repository code
git clone git@github.com:UBTECH-Robot/GlobalHumanoidRobotChallenge_2026_Baseline.git

# Switch to the working directory (replace workspace with your own workspace)
cd workspace/GlobalHumanoidRobotChallenge_2026_Baseline

# Install huggingface-cli
pip install huggingface-hub

# Get simulation assets (Git submodules are recommended)
git submodule update --init --recursive

# Or manually download the assets to ./assets
# hf download UBTECH-Robotics/challenge2026_assets --local-dir ./assets --repo-type model

# Download the training dataset
hf download UBTECH-Robotics/challenge2026_dataset --local-dir ./datasets --repo-type dataset

If network issues occur during download, please download the simulation assets and training dataset from the official website manually.

2. Build the Environment​

This project builds the runtime environment using the Dockerfile in the repository root directory. The base image is:

nvcr.io/nvidia/isaac-sim:5.1.0

The image installs common dependencies required by Isaac Sim and copies the project into the following container path:

/workspace/GlobalHumanoidRobotChallenge_2026_Baseline

2.1 Preparation Before Building​

  • Docker is installed
  • NVIDIA Container Toolkit is installed
  • The host machine can use the NVIDIA GPU properly
  • The repository code, assets/ submodule, datasets/, challenge2026_baseline/, and other resources have been obtained

Run the following commands in the project root directory:

# Download through the Tsinghua mirror (preferred)
docker build --build-arg PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple/ -t ghrc_2026:v0 -f Dockerfile .

# Download through the Alibaba Cloud mirror
docker build --build-arg PIP_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/ -t ghrc_2026:v0 -f Dockerfile .

It is recommended to build the Docker container with the Tsinghua mirror command first.

If you need to specify another image name, you can override it through build parameters:

# Build the Docker image
# -t image_name:version
# . indicates that the Dockerfile in the current directory is used
docker build \
-t your-images-name:latest \
.

2.2 Find the evdev Path Corresponding to the Keyboard​

Before using keyboard teleoperation, you need to determine the evdev device path corresponding to the keyboard:

/dev/input/eventX

By default, the system automatically scans all:

/dev/input/event*

devices.

Method 1: Find by device ID (recommended)

ls -la /dev/input/by-id/
# Find the device link that contains the word keyboard, for example:
# usb-046D_C328-if01-event-kbd -> /dev/input/event2

Method 2: View all input devices

cat /proc/bus/input/devices | grep -A 3 -i keyboard
# Find eventX in the handlers line

Method 3: Use the evtest tool (interactive test)

apt install evtest
evtest
# Select the event device corresponding to the keyboard, then press keys to test whether it matches

When running inside a Docker container, make sure the input devices have been mounted correctly.