| π§ UMI-3D Hardware | π°οΈ UMI-3D SLAM Pipeline | π€ UMI-3D Policy |
|
|
|
| Hardware design, BOM, CAD, 3D-print parts | SLAM, synchronization, calibration, and data processing |
Policy training, deployment, inference π¦ Dataset & Models |
Target total cost: β Β₯5,000 (β $700, subject to actual purchase)
Left: real UMI-3D handheld gripper. Right: CAD overview (view in Onshape).
| Component | Description | STL Files | Price | Preview | Assembled View |
|---|---|---|---|---|---|
| Gripper Mount |
3D Print, PLA Infill: 20% Gyroid |
π Link | β |
|
![]() |
| Soft Finger |
3D Print, TPU 95A Infill: 100% Lines |
π Link | β |
|
|
| 150mm MG9NC Linear Module |
Aluminum, CNC Bracket |
β | β |
|
| Component | Model / Name | Price | Image |
|---|---|---|---|
| LiDAR | Livox MID-360/MID-360S | Β₯3999/Β₯3599 ($560/$510) | ![]() |
| Camera | Hikrobot MV-CB013-A0UC-S | Β₯700 (β $100) | ![]() |
| Lens | ZLKC MTV185IR12MP | Β₯139 (β $20) | ![]() |
| Component | Model / Name | Price | Image |
|---|---|---|---|
| Synchronizer | LiDARβCamera Hardware Synchronizer |
Β₯288 (β $40) | ![]() |
| Battery | 12V DC Battery | Β₯79 (β $10) | ![]() |
| Component | Description | STL Files | Price | Preview | Assembled View |
|---|---|---|---|---|---|
| Sensor Mount | 3D Print, PLA Infill: 20% Gyroid |
π Link | β |
|
![]() |
| Headband | TELESIN GoPro Headband | β | Β₯35.9 (β $5) |
|
| Component | Description | STL Files | Price | Preview | Assembled View |
|---|---|---|---|---|---|
| Finger Mount |
3D Print, PLA Infill: 40% Gyroid |
π Link | β |
|
![]() ARX-mounted UMI-3D setup |
| Camera Mount |
3D Print, PLA Infill: 40% Gyroid |
π Link | β |
|
| Component | Description | STL Files | Price | Preview | Assembled View |
|---|---|---|---|---|---|
| Finger Mount |
3D Print, PLA Infill: 40% Gyroid |
π Link | β |
|
![]() |
| Camera Mount |
3D Print, PLA Infill: 40% Gyroid |
π Link | β |
|
UMI-3D wiring overview. The 12V battery powers the LiDAR and the hardware synchronizer. The synchronizer provides trigger/sync signals between the LiDAR and camera. LiDAR data and camera images are transmitted to the host computer, recorded in rosbag format, and subsequently used for SLAM, sensor calibration, data processing, and policy training.
| Module | Connects To | Purpose |
|---|---|---|
| 12V Battery | LiDAR | Main power supply for Livox MID-360 |
| 12V Battery | Hardware Synchronizer | Power supply for synchronization board |
| Hardware Synchronizer | Camera | Trigger / sync signal for image capture |
| Hardware Synchronizer | LiDAR | Shared timing reference |
| LiDAR | Host Computer | Point cloud data transmission |
| Camera | Host Computer | Power supply and Image data transmission |
Note
- Please make sure the battery polarity is correct before powering on.
- Power on the synchronizer and LiDAR first, then check whether the camera trigger is working properly.
- Secure all cables to avoid motion-induced looseness during handheld or robot-arm operation.
This repository provides the ROS drivers and helper scripts for the UMI-3D sensing setup:
- Livox MID-360 / MID-360S LiDAR driver
- Hikrobot industrial camera ROS driver
- MVS launcher (for camera configuration)
- Rosbag recording tools
umi_3d_ros_driver/
βββ camera.sh
βββ lidar.sh
βββ mvs.sh
βββ record.sh
βββ src/
βββ livox_ros_driver2/
βββ mvs_ros_driver/- Ubuntu 20.04
- ROS Noetic
- System Python (required)
Note
- Always run
conda deactivatebefore building or launching ROS drivers. Using Conda may cause ROS dependency conflicts.
-
MVS (camera SDK)
https://github.com/bitcat-tech/MVS_V3.0.1 -
Livox-SDK2
https://github.com/Livox-SDK/Livox-SDK2 -
ROS Noetic
cd ~/umi_3d_ros_driver
conda deactivate
# 1. Build Livox driver
cd src/livox_ros_driver2
./build.sh ROS1
cd ../..
# 2. Build full workspace
catkin_make
source devel/setup.bash
# 3. Configure camera if needed
bash mvs.sh
# β set trigger mode, then CLOSE MVS
# 4. Launch drivers
bash lidar.sh
bash camera.sh
# 5. Record data
bash record.shNote
livox_ros_driver2must be built with:./build.sh ROS1
conda deactivate
source devel/setup.bash
roslaunch livox_ros_driver2 msg_MID360.launchconda deactivate
export LD_LIBRARY_PATH=/opt/MVS/lib/64:/opt/MVS/lib/32:/opt/ros/noetic/lib:$LD_LIBRARY_PATH
source devel/setup.bash
roslaunch mvs_ros_driver mvs_camera_trigger.launchrosbag record /livox/lidar /livox/imu /left_camera/imageNote
- Before launching the camera ROS driver, make sure:
- MVS has been closed
- the camera has already been set to hardware trigger mode
LD_LIBRARY_PATHincludes the MVS runtime libraries
rostopic hz /livox/lidar
rostopic hz /left_camera/imageExpected:
- LiDAR publishes normally
- Camera β 20 Hz
Note
- Do not run MVS and
mvs_ros_driverat the same time. Use MVS only for camera configuration, then close it before launching ROS.- If the image publishing rate is lower than 20 Hz, check the USB 3.0 port and USB 3.0 cable quality.
- If build issues occur, re-run:
cd src/livox_ros_driver2 ./build.sh ROS1 cd ../.. catkin_make- Data is recorded in rosbag format and can be used for:
- SLAM
- Sensor calibration
- Data processing for Policy learning
If you find this work useful for your research, please consider citing:
@misc{wang2026umi3dextendinguniversalmanipulation,
title={UMI-3D: Extending Universal Manipulation Interface from Vision-Limited to 3D Spatial Perception},
author={Ziming Wang},
year={2026},
eprint={2604.14089},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2604.14089}
}This work builds upon several outstanding open-source projects, including UMI (Universal Manipulation Interface), UMI-on-Legs, and LIV-Eye. We gratefully acknowledge the authors for their pioneering contributions to embodied intelligence, perception, and robot learning.



















