From 028d95308ed1fc8129eac1e3428b35bad5e49388 Mon Sep 17 00:00:00 2001 From: Javier Izquierdo Hernandez Date: Thu, 12 Feb 2026 18:21:45 +0100 Subject: [PATCH 1/2] Add config for real robots --- manager/manager/launcher/launcher_tools.py | 2 +- manager/manager/launcher/launcher_world.py | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/manager/manager/launcher/launcher_tools.py b/manager/manager/launcher/launcher_tools.py index e7ea628..f95caaa 100644 --- a/manager/manager/launcher/launcher_tools.py +++ b/manager/manager/launcher/launcher_tools.py @@ -85,7 +85,7 @@ class LauncherTools(BaseModel): def run(self, consumer): for tool in self.tools: if tool == "simulator": - if self.world_type is None: + if self.world_type is None or self.world_type == "physical": continue tool = simulator[self.world_type]["tool"] module = tools[tool] diff --git a/manager/manager/launcher/launcher_world.py b/manager/manager/launcher/launcher_world.py index d9ba862..4c2ed94 100644 --- a/manager/manager/launcher/launcher_world.py +++ b/manager/manager/launcher/launcher_world.py @@ -41,7 +41,16 @@ } ], }, - "physical": {}, + "physical": { + "2": [ + { + "type": "real", + "module": "ros2_api", + "parameters": [], + "launch_file": [], + } + ], + }, } From 09d2dda50198292932ca697e108a2ef15d9ee5c0 Mon Sep 17 00:00:00 2001 From: Javier Izquierdo Hernandez Date: Thu, 12 Feb 2026 18:59:08 +0100 Subject: [PATCH 2/2] Linter --- manager/manager/launcher/launcher_o3de.py | 3 ++- manager/manager/launcher/launcher_o3de_api.py | 13 +++++++------ manager/manager/launcher/launcher_rviz.py | 9 ++++----- manager/manager/vnc/vnc_server.py | 8 ++++---- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/manager/manager/launcher/launcher_o3de.py b/manager/manager/launcher/launcher_o3de.py index f633dc0..a977da3 100644 --- a/manager/manager/launcher/launcher_o3de.py +++ b/manager/manager/launcher/launcher_o3de.py @@ -13,6 +13,7 @@ from typing import List, Any from manager.ram_logging.log_manager import LogManager + class LauncherO3de(ILauncher): running: bool = False threads: List[Any] = [] @@ -50,7 +51,7 @@ def unpause(self): pass def reset(self): - #TODO: add reset + # TODO: add reset pass def get_dri_path(self): diff --git a/manager/manager/launcher/launcher_o3de_api.py b/manager/manager/launcher/launcher_o3de_api.py index b5c8697..0d97b14 100644 --- a/manager/manager/launcher/launcher_o3de_api.py +++ b/manager/manager/launcher/launcher_o3de_api.py @@ -15,6 +15,7 @@ import logging + class LauncherO3deApi(ILauncher): display: str internal_port: int @@ -31,19 +32,19 @@ def run(self, callback): DRI_PATH = self.get_dri_path() ACCELERATION_ENABLED = self.check_device(DRI_PATH) - #TODO: add run here + # TODO: add run here xserver_cmd = f"/usr/bin/Xorg -quiet -noreset +extension GLX +extension RANDR +extension RENDER -logfile ./xdummy.log -config ./xorg.conf :0" xserver_thread = DockerThread(xserver_cmd) xserver_thread.start() self.threads.append(xserver_thread) - - LevelSelect=f'echo "LoadLevel Levels/{self.launch_file}" > data/workspace/ROS2Demo/autoexec.cfg' - + + LevelSelect = f'echo "LoadLevel Levels/{self.launch_file}" > data/workspace/ROS2Demo/autoexec.cfg' + LevelSelect_thread = DockerThread(LevelSelect) LevelSelect_thread.start() self.threads.append(LevelSelect_thread) - + if ACCELERATION_ENABLED: # Starts xserver, x11vnc and novnc self.gz_vnc.start_vnc_gpu( @@ -61,7 +62,7 @@ def run(self, callback): gzclient_thread.start() self.threads.append(gzclient_thread) - process_name = 'ROS2Demo.GameLauncher' + process_name = "ROS2Demo.GameLauncher" wait_for_process_to_start(process_name, timeout=360) def terminate(self): diff --git a/manager/manager/launcher/launcher_rviz.py b/manager/manager/launcher/launcher_rviz.py index 7ced22c..7fd83cb 100644 --- a/manager/manager/launcher/launcher_rviz.py +++ b/manager/manager/launcher/launcher_rviz.py @@ -23,8 +23,8 @@ def run(self, config_file, callback): config = "ros2 run rviz2 rviz2" if config_file != None: - config = f'ros2 launch {config_file}' - + config = f"ros2 launch {config_file}" + print(config) if ACCELERATION_ENABLED: self.console_vnc.start_vnc_gpu( @@ -69,7 +69,6 @@ def terminate(self): def died(self): pass - # rviz_node_full = Node( # package="rviz2", # executable="rviz2", @@ -80,7 +79,7 @@ def died(self): # robot_description, # robot_description_semantic, # kinematics_yaml, - + # pilz_planning_pipeline_config, # joint_limits, @@ -92,4 +91,4 @@ def died(self): # move_group_capabilities, # {"use_sim_time": True}, # ] - # ) \ No newline at end of file + # ) diff --git a/manager/manager/vnc/vnc_server.py b/manager/manager/vnc/vnc_server.py index 16c6372..d32f052 100755 --- a/manager/manager/vnc/vnc_server.py +++ b/manager/manager/vnc/vnc_server.py @@ -40,9 +40,9 @@ def start_vnc(self, display, internal_port, external_port): wait_for_xserver(display) certs = "" - + if os.path.isfile("/etc/certs/cert.pem"): - certs = "--cert /etc/certs/cert.pem --key /etc/certs/privkey.pem" + certs = "--cert /etc/certs/cert.pem --key /etc/certs/privkey.pem" # Start noVNC with default port 6080 listening to VNC server on 5900 if self.get_ros_version() == "2": @@ -89,9 +89,9 @@ def start_vnc_gpu(self, display, internal_port, external_port, dri_path): wait_for_xserver(display) certs = "" - + if os.path.isfile("/etc/certs/cert.pem"): - certs = "--cert /etc/certs/cert.pem --key /etc/certs/privkey.pem" + certs = "--cert /etc/certs/cert.pem --key /etc/certs/privkey.pem" # Start noVNC with default port 6080 listening to VNC server on 5900 if self.get_ros_version() == "2":