StepIt plugin for controlling Unitree Go2, B2, A2, and G1 robots, and with the Unitree joysticks.
STEPIT_NETIF(string, default: auto-detect): the network interface for communication. If unset, StepIt requires exactly one IPv4 address in the192.168.123.xsubnet and uses its interface name automatically.STEPIT_UNITREE2_DOMAIN_ID(int, default: 0): the DDS domain ID used by unitree_sdk2.
stepit::RobotApi:- Quadrupeds:
a2,b2,go2,go2w - Humanoids:
g1(29DoF),g1_bfs(29DoF)
- Quadrupeds:
stepit::joystick::Joystick:unitree2: providing joystick input with the Unitree joystick. TheLASbutton is binded to theL1+L2buttons, and theRASbutton is binded to theR1+R2buttons.
-
unitree2_switch_motion: Switch or query the builtin Unitree2 locomotion state.unitree2_switch_motion help unitree2_switch_motion status unitree2_switch_motion activate <mode> unitree2_switch_motion deactivate unitree2_switch_motion disable unitree2_switch_motion enable
-
unitree2_switch_service: Switch Unitree service state.unitree2_switch_service help unitree2_switch_service switch <service> off unitree2_switch_service enable <service> unitree2_switch_service disable <service>
-
Add unitree_sdk2 thirdparty library path to the front of
LD_LIBRARY_PATHif stepit is also built with ROS2.export LD_LIBRARY_PATH=<stepit_dir>/extern/robot_sdk/unitree_sdk2/thirdparty/lib/$(uname -m):$LD_LIBRARY_PATH
-
Set environment variable
STEPIT_NETIFtoloto use unitree_mujoco for sim-to-sim transfer.export STEPIT_NETIF=lo