Use Teleoperation Devices#



In our codebase, the default teleoperation device is the SpaceMouse. The Spacemouse provides a 6DoF control over both positions and orientation, and the two keys on the side provide grasping functionality and resetting functions. This codebase majorly inherit from the infrastructure from robosuite.


Assitive Note - Setup spacemouse

We've provided a list of checkboxes for you to keep track of all the necessary steps.

Step 1. Setup a udev rule

Installation (Linux): Before using a SpaceMouse in the system, you need to install: 1) hidapi python package and 2) udev system (in order to avoid sudo). You might need to install libmotif-dev.

udev rules: In order for hidapi to open the device without sudo, we need to do the following steps: Step 1. First of all, create a rule file xx-spacemouse.rules under the folder /etc/udev/rules.d/ (Replace xx with a number larger than 50).

KERNEL=="hidraw*", ATTRS{idVendor}=="256f", ATTRS{idProduct}=="c62e", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}=="256f", ATTRS{idProduct}=="c62e", MODE="0666", GROUP="plugdev"

Step 2. Reload the udev rule

We need to reload the defined udev rule to take effect. Reload can be done through:

sudo udevadm control --reload-rules

Step 3. Get vendor_id and product_id of your Spacemouse

Then let’s install hidapi, which is for getting the device information (vendor_id and product_id) of Spacemouse using python. To acquire hidapi, install it in your virtual environment through:

pip install hidapi

And to find out the spacemouse configuration, connect the spacemouse to the machine, and do:

import hid

This will show the information for a list of devices connected. Locate the information about the spacemouse, and take a note on the vendor_id and product_id.

If there is no device shown as Spacemouse, that means there is some installation process done inappropriately. Please check the installation process.

Example Usage#

We’ve provided a example script that allow users to control the robot through spacemouse. Make sure you are under the parent Deoxys folder, and run:

Commands on Desktop Under Deoxys, run

python examples/ 

You might need to change the following configurations:

  • spacemouse vendor_id and product_id (here)

  • the config file for configuring FrankaInterface (here) if necessary.

You might also check and change the PC / NUC names here.