VnRobo
AboutPricingBlogContact
🇻🇳VISign InStart Free Trial
🇻🇳VI
VnRobo logo

AI infrastructure for next-generation industrial robots.

Product

  • Features
  • Pricing
  • Knowledge Base
  • Services

Company

  • About Us
  • Blog
  • Contact

Legal

  • Privacy Policy
  • Terms of Service

© 2026 VnRobo. All rights reserved.

Made with♥in Vietnam
VnRobo
AboutPricingBlogContact
🇻🇳VISign InStart Free Trial
🇻🇳VI
  1. Home
  2. Blog
  3. Installing cuRoboV2 on Jetson AGX Orin 64GB: environment, CUDA, and smoke tests
manipulationcurobojetsoncudainstallationtutorial

Installing cuRoboV2 on Jetson AGX Orin 64GB: environment, CUDA, and smoke tests

A reproducible Jetson setup for cuRoboV2 with JetPack, uv, Python 3.11, CUDA 12.x, PyTorch, and deployment-focused checks.

Nguyen Anh TuanMay 20, 20263 min readUpdated: Jun 19, 2026
Installing cuRoboV2 on Jetson AGX Orin 64GB: environment, CUDA, and smoke tests

Goal

This guide builds the Jetson AGX Orin 64GB runtime environment. The current cuRobo documentation recommends Ubuntu Linux, an NVIDIA GPU newer than Turing, Python 3.10 or newer while avoiding unvalidated versions above 3.13, a driver that supports CUDA 12+, and installation through uv. On Jetson, the driver and CUDA stack come from JetPack, so the real task is pinning JetPack before installing PyTorch and cuRobo.

1. Inspect the Jetson

sudo nvpmodel -q
tegrastats
nvcc --version
python3 --version
df -h /

If your root filesystem is on eMMC, move the workspace and caches to NVMe. cuRobo pulls PyTorch, Warp, and CUDA build caches; small eMMC storage makes builds slow and fragile.

mkdir -p /mnt/nvme/robotics/{src,venvs,cache}
export UV_CACHE_DIR=/mnt/nvme/robotics/cache/uv
export TORCH_HOME=/mnt/nvme/robotics/cache/torch

2. Clone and create a venv

cd /mnt/nvme/robotics/src
git clone https://github.com/NVlabs/curobo
cd curobo

uv venv --python 3.11
source .venv/bin/activate
python -V

The official CUDA 12 fresh-install command is:

uv pip install .[cu12-torch]

If your Jetson already has a PyTorch wheel that matches its JetPack/CUDA version, prefer:

uv pip install .[cu12]

On Jetson this is often safer because aarch64 PyTorch wheels must match the L4T stack. Do not force x86_64 wheels from PyPI onto Jetson.

3. Minimal smoke test

python - <<'PY'
import torch
import curobo
print("torch", torch.__version__)
print("cuda", torch.version.cuda)
print("cuda available", torch.cuda.is_available())
print("device", torch.cuda.get_device_name(0))
print("curobo", curobo.__version__)
PY

Then run package tests if time allows:

pytest --pyargs curobo.tests

If the full test suite is too expensive, at least run the getting-started examples that do not require real robot hardware.

4. Containerize the environment

A minimal shape:

FROM nvcr.io/nvidia/l4t-pytorch:r36.4.0-pth2.4-py3

RUN apt-get update && apt-get install -y git curl build-essential && rm -rf /var/lib/apt/lists/*
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
ENV PATH="/root/.local/bin:${PATH}"

WORKDIR /opt/curobo
COPY . /opt/curobo
RUN uv venv --python 3.11 /opt/curobo/.venv
RUN . /opt/curobo/.venv/bin/activate && uv pip install .[cu12]

Do not treat this Dockerfile as universal. Match the base image to the actual JetPack release, keep PyTorch compatible, then install cuRobo.

5. Common failures

Symptom Likely cause Fix
torch.cuda.is_available() == False Wrong PyTorch wheel for JetPack/CUDA Reinstall the correct aarch64 PyTorch wheel
Build runs out of disk Cache on eMMC Move UV_CACHE_DIR, TORCH_HOME, and workspace to NVMe
Import works but examples crash CUDA/Warp/PyTorch ABI mismatch Rebuild in a clean pinned environment
First planning call is slow CUDA graph/kernel warmup Call warmup() during startup

6. Checklist

  • python -c "import curobo" succeeds.
  • torch.cuda.is_available() is True.
  • nvidia-smi is not expected on Jetson; use tegrastats.
  • Repo and venv are on NVMe.
  • You logged JetPack, Python, PyTorch, CUDA, and cuRobo commit versions.

Conclusion

The hard part is not the install command; it is pinning the version matrix. Once the environment is reproducible, move to robot model generation: URDF, meshes, collision spheres, and the self-collision matrix.

NT

Nguyễn Anh Tuấn

Robotics & AI Engineer. Building VnRobo — sharing knowledge about robot learning, VLA models, and automation.

Khám phá VnRobo

Fleet MonitoringROS 2 IntegrationAMR Solutions

Related Posts

Tutorial
ROS 2 bridge cho cuRobo trên Jetson: từ goal pose tới JointTrajectory
curoboros2jetson
manipulation

ROS 2 bridge cho cuRobo trên Jetson: từ goal pose tới JointTrajectory

Thiết kế node ROS 2 bọc cuRobo planner: topic/service/action, lifecycle warmup, joint state reorder, trajectory retiming và watchdog.

6/5/20262 min read
NT
Tutorial
Motion planning và grasp với cuRobo: obstacle, seed và trajectory
curobomotion-planninggrasp
manipulation

Motion planning và grasp với cuRobo: obstacle, seed và trajectory

Hướng dẫn chạy pose-to-pose planning, obstacle collision, warmup, grasp approach-lift và cách tune planner cho robot arm trên Jetson.

6/1/20263 min read
NT
Tutorial
cuRobo trên Jetson AGX Orin 64GB và Unitree G1: lộ trình 10 bài
curobojetsonunitree-g1
manipulation

cuRobo trên Jetson AGX Orin 64GB và Unitree G1: lộ trình 10 bài

Bài mở đầu series: cuRoboV2 dùng để làm gì, khi nào chạy trên Jetson AGX Orin 64GB, khi nào dùng workstation, và kiến trúc deploy cho robot arm lẫn Unitree G1.

5/16/20264 min read
NT
VnRobo logo

AI infrastructure for next-generation industrial robots.

Product

  • Features
  • Pricing
  • Knowledge Base
  • Services

Company

  • About Us
  • Blog
  • Contact

Legal

  • Privacy Policy
  • Terms of Service

© 2026 VnRobo. All rights reserved.

Made with♥in Vietnam