Reflash Unitree G1 PC2
Replace the Unitree G1 PC2 image and firmware with Unitree's JetPack 6.2 release
Overview
This guide replaces the operating system and module firmware on the Unitree G1 development computer, known as PC2, with Unitree's JetPack 6.2 image.
You do not need to reflash PC2 to install Wendy Agent.
This process erases the target NVMe drive and replaces the PC2 firmware. Preserve the original NVMe and verify every device path before writing an image.
What You Need
- The original PC2 NVMe, removed and preserved as a backup
- A replacement NVMe with at least 1 TB of storage
- A native Ubuntu x86-64 computer
- An NVMe-to-USB enclosure
- A USB data cable
- Unitree system image:
g1-nx-j6.2.img.bz2 - Unitree PC2 firmware:
Jetpack_6.2_nx.tar.bz2
Download both files from the package folder linked by NVIDIA's G1 JetPack 6 flashing guide. Confirm the filenames and integrity against NVIDIA's current instructions before continuing.
The two files update different parts of PC2:
Orin NX module
├── QSPI and boot firmware Jetpack_6.2_nx.tar.bz2 over recovery USB
└── NVMe operating system g1-nx-j6.2.img.bz2 written to the replacement NVMeUse Unitree's G1-specific image. A generic NVIDIA Orin NX image does not include the G1 carrier-board configuration.
Reflash PC2
Preserve the Original NVMe
Remove the original NVMe from PC2 and keep it unchanged. Write the new image only to the replacement drive.
The original drive preserves its data, but restoring an older JetPack release also requires restoring the matching PC2 module firmware.
Write the PC2 Image
Attach the replacement NVMe to the Ubuntu computer with the USB enclosure. List the connected drives and identify the Ubuntu system drive:
lsblk -d -o NAME,PATH,SIZE,MODEL,SERIAL,TRAN
findmnt -no SOURCE /Replace /dev/sdX below with the whole-disk path for the replacement NVMe:
lsblk -o NAME,PATH,SIZE,MODEL,SERIAL,TRAN,FSTYPE,LABEL,MOUNTPOINTS /dev/sdXStop unless /dev/sdX identifies the replacement NVMe and is different
from the Ubuntu system drive. Writing to the wrong path destroys that
drive.
Unmount the replacement drive, then write the Unitree image:
sudo umount /dev/sdX*
bzip2 -dc g1-nx-j6.2.img.bz2 | \
sudo dd of=/dev/sdX bs=4M status=progress conv=fsync
sudo sync
sudo udisksctl power-off -b /dev/sdXDisconnect the replacement NVMe from the enclosure and set it aside. Install it after the PC2 firmware flash is complete.
Enter Recovery Mode
PC2 has two buttons inside the rear electronics compartment. PWR is the upper button. REC is the lower button above the PC2 USB-C flashing port.
- Power on the G1 and wait for all three power indicators to remain lit.
- Connect the Ubuntu computer to the PC2 USB-C flashing port.
- Hold PWR and REC together for about two seconds.
- Release PWR while continuing to hold REC until only two power indicators remain lit.
- Release REC.
Verify that PC2 appears in recovery mode:
lsusbContinue when the output includes NVIDIA Corp. APX.
Flash the PC2 Firmware
Keep the firmware archive on the Ubuntu computer. From the directory that contains the archive, run:
sudo tar -xjvf Jetpack_6.2_nx.tar.bz2
cd Jetpack_6.2_nx/Linux_for_Tegra
lsusb | grep -i nvidia
sudo ./flash_nx_module.shKeep the G1 powered on and connected over USB until the script reports success. The flash takes about eight minutes.
Boot and Verify PC2
Power off the G1 and disconnect the recovery USB cable. Install the replacement NVMe in PC2, close the rear compartment, then power on the G1. Wait several minutes for PC2 to boot.
Connect to PC2 and check the installed release:
ping 192.168.123.164
ssh unitree@192.168.123.164
cat /etc/nv_tegra_release
cat /etc/os-release
uname -aJetPack 6.2 includes Jetson Linux R36.4.3 and an Ubuntu 22.04-based root
filesystem. Use /etc/nv_tegra_release as the source of truth for the BSP
version.
Follow NVIDIA's current G1 guide for any required post-flash packages and power-mode configuration.
Verify G1 Hardware
After installing Wendy Agent, check the RealSense camera and other hardware from your development machine:
wendy device camera list --device unitree-g1-nx.local:50052
wendy device hardware list --device unitree-g1-nx.local:50052Check the G1 in this order:
- Ethernet and Wi-Fi
- USB devices and cameras
- GPU and CUDA
- Unitree services and DDS communication
- G1 app video and image display
- Controlled motion
If a camera app reports that the RealSense is busy, stop only the known service that owns the camera, then retry.
Keep the G1 supported on its gantry and keep the physical remote and E-stop with the operator for the first controlled-motion check.