Fix setup_motors & calibrate configs

This commit is contained in:
Simon Alibert
2025-05-13 17:06:24 +02:00
parent 81de27dc9a
commit 3e87b09d34
2 changed files with 21 additions and 7 deletions

View File

@@ -19,9 +19,9 @@ Example:
```shell
python -m lerobot.calibrate \
--device.type=so100_leader \
--device.port=/dev/tty.usbmodem58760431551 \
--device.id=blue
--teleop.type=so100_leader \
--teleop.port=/dev/tty.usbmodem58760431551 \
--teleop.id=blue
```
"""
@@ -51,7 +51,14 @@ from .common.teleoperators import koch_leader, so100_leader # noqa: F401
@dataclass
class CalibrateConfig:
device: RobotConfig | TeleoperatorConfig
teleop: TeleoperatorConfig | None = None
robot: RobotConfig | None = None
def __post_init__(self):
if bool(self.teleop) == bool(self.robot):
raise ValueError("Choose either a teleop or a robot.")
self.device = self.robot if self.robot else self.teleop
@draccus.wrap()

View File

@@ -19,8 +19,8 @@ Example:
```shell
python -m lerobot.setup_motors \
--device.type=so100_leader \
--device.port=/dev/tty.usbmodem575E0031751
--teleop.type=so100_leader \
--teleop.port=/dev/tty.usbmodem575E0031751
```
"""
@@ -46,7 +46,14 @@ COMPATIBLE_DEVICES = [
@dataclass
class SetupConfig:
device: RobotConfig | TeleoperatorConfig
teleop: TeleoperatorConfig | None = None
robot: RobotConfig | None = None
def __post_init__(self):
if bool(self.teleop) == bool(self.robot):
raise ValueError("Choose either a teleop or a robot.")
self.device = self.robot if self.robot else self.teleop
@draccus.wrap()