diff --git a/unitree_sdk2py/g1/loco/g1_loco_api.py b/unitree_sdk2py/g1/loco/g1_loco_api.py index 2fdca7e..dfacdab 100644 --- a/unitree_sdk2py/g1/loco/g1_loco_api.py +++ b/unitree_sdk2py/g1/loco/g1_loco_api.py @@ -26,6 +26,7 @@ ROBOT_API_ID_LOCO_SET_STAND_HEIGHT = 7104 ROBOT_API_ID_LOCO_SET_VELOCITY = 7105 ROBOT_API_ID_LOCO_SET_ARM_TASK = 7106 +ROBOT_API_ID_LOCO_SET_SPEED_MODE = 7107 """ " error code diff --git a/unitree_sdk2py/g1/loco/g1_loco_client.py b/unitree_sdk2py/g1/loco/g1_loco_client.py index 9d3a632..5de5482 100644 --- a/unitree_sdk2py/g1/loco/g1_loco_client.py +++ b/unitree_sdk2py/g1/loco/g1_loco_client.py @@ -71,10 +71,21 @@ def SetTaskId(self, task_id: float): parameter = json.dumps(p) code, data = self._Call(ROBOT_API_ID_LOCO_SET_ARM_TASK, parameter) return code + + # 7107 + def SetSpeedMode(self, speed_mode: int): + p = {} + p["data"] = speed_mode + parameter = json.dumps(p) + code, data = self._Call(ROBOT_API_ID_LOCO_SET_SPEED_MODE, parameter) + return code def Damp(self): self.SetFsmId(1) + def StandUp(self): + self.SetFsmId(4) + def Start(self): self.SetFsmId(200) @@ -92,6 +103,15 @@ def StandUp2Squat(self): def ZeroTorque(self): self.SetFsmId(0) + + def WalkMotion(self): + self.SetFsmId(500) + + def WalkMotion_3Dof_waist(self): + self.SetFsmId(501) + + def Run(self): + self.SetFsmId(800) def StopMove(self): self.SetVelocity(0., 0., 0.)