From b207babd9e660bfcd94d2838bd9520532fcb1720 Mon Sep 17 00:00:00 2001 From: Simon Alibert Date: Thu, 8 May 2025 12:51:32 +0200 Subject: [PATCH] Add make_teleoperator_from_config --- lerobot/common/teleoperators/utils.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 lerobot/common/teleoperators/utils.py diff --git a/lerobot/common/teleoperators/utils.py b/lerobot/common/teleoperators/utils.py new file mode 100644 index 000000000..fb9fafe53 --- /dev/null +++ b/lerobot/common/teleoperators/utils.py @@ -0,0 +1,27 @@ +from .config import TeleoperatorConfig +from .teleoperator import Teleoperator + + +def make_teleoperator_from_config(config: TeleoperatorConfig) -> Teleoperator: + if config.type == "keyboard": + from .keyboard import KeyboardTeleop + + return KeyboardTeleop(config) + elif config.type == "koch_leader": + from .koch_leader import KochLeader + + return KochLeader(config) + elif config.type == "so100_leader": + from .so100_leader import SO100Leader + + return SO100Leader(config) + elif config.type == "stretch3": + from .stretch3_gamepad import Stretch3GamePad + + return Stretch3GamePad(config) + elif config.type == "widowx": + from .widowx import WidowX + + return WidowX(config) + else: + raise ValueError(config.type)