diff --git a/lerobot/calibrate.py b/lerobot/calibrate.py index c58a2a395..6d1a63cdf 100644 --- a/lerobot/calibrate.py +++ b/lerobot/calibrate.py @@ -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() diff --git a/lerobot/setup_motors.py b/lerobot/setup_motors.py index d85e2810a..a42b9cac1 100644 --- a/lerobot/setup_motors.py +++ b/lerobot/setup_motors.py @@ -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()