diff --git a/kortex_bringup/launch/gen3.launch.py b/kortex_bringup/launch/gen3.launch.py
index c9bd50e72..0f4c6ca20 100644
--- a/kortex_bringup/launch/gen3.launch.py
+++ b/kortex_bringup/launch/gen3.launch.py
@@ -61,6 +61,13 @@ def generate_launch_description():
description="Robot controller to start.",
)
)
+ declared_arguments.append(
+ DeclareLaunchArgument(
+ "vision",
+ default_value="false",
+ description="Is vision module (camera) present on the robot?",
+ )
+ )
declared_arguments.append(
DeclareLaunchArgument(
"controllers_file",
@@ -115,6 +122,7 @@ def generate_launch_description():
use_fake_hardware = LaunchConfiguration("use_fake_hardware")
fake_sensor_commands = LaunchConfiguration("fake_sensor_commands")
robot_controller = LaunchConfiguration("robot_controller")
+ vision = LaunchConfiguration("vision")
gripper = LaunchConfiguration("gripper")
use_internal_bus_gripper_comm = LaunchConfiguration("use_internal_bus_gripper_comm")
gripper_max_velocity = LaunchConfiguration("gripper_max_velocity")
@@ -132,6 +140,7 @@ def generate_launch_description():
"use_fake_hardware": use_fake_hardware,
"fake_sensor_commands": fake_sensor_commands,
"robot_controller": robot_controller,
+ "vision": vision,
"gripper": gripper,
"use_internal_bus_gripper_comm": use_internal_bus_gripper_comm,
"gripper_max_velocity": gripper_max_velocity,
diff --git a/kortex_bringup/launch/kortex_control.launch.py b/kortex_bringup/launch/kortex_control.launch.py
index 88da2fe81..6a50725c8 100644
--- a/kortex_bringup/launch/kortex_control.launch.py
+++ b/kortex_bringup/launch/kortex_control.launch.py
@@ -44,6 +44,7 @@ def launch_setup(context, *args, **kwargs):
description_file = LaunchConfiguration("description_file")
robot_name = LaunchConfiguration("robot_name")
prefix = LaunchConfiguration("prefix")
+ vision = LaunchConfiguration("vision")
gripper = LaunchConfiguration("gripper")
gripper_max_velocity = LaunchConfiguration("gripper_max_velocity")
gripper_max_force = LaunchConfiguration("gripper_max_force")
@@ -59,7 +60,7 @@ def launch_setup(context, *args, **kwargs):
# if we are using fake hardware then we can't use the internal gripper communications of the hardware
use_fake_hardware_value = use_fake_hardware.perform(context)
- if use_fake_hardware_value == "true":
+ if use_fake_hardware_value == "true" or gripper.perform(context) == "":
use_internal_bus_gripper_comm = "false"
robot_description_content = Command(
@@ -91,6 +92,9 @@ def launch_setup(context, *args, **kwargs):
"fake_sensor_commands:=",
fake_sensor_commands,
" ",
+ "vision:=",
+ vision,
+ " ",
"gripper:=",
gripper,
" ",
@@ -300,6 +304,13 @@ def generate_launch_description():
have to be updated.",
)
)
+ declared_arguments.append(
+ DeclareLaunchArgument(
+ "vision",
+ default_value="false",
+ description="Is vision module (camera) present on the robot?",
+ )
+ )
declared_arguments.append(
DeclareLaunchArgument(
"gripper",
diff --git a/kortex_description/arms/gen3/6dof/urdf/kortex.ros2_control.xacro b/kortex_description/arms/gen3/6dof/urdf/kortex.ros2_control.xacro
index 2d890845c..bd5df87e3 100644
--- a/kortex_description/arms/gen3/6dof/urdf/kortex.ros2_control.xacro
+++ b/kortex_description/arms/gen3/6dof/urdf/kortex.ros2_control.xacro
@@ -51,7 +51,7 @@
${connection_inactivity_timeout_ms}
"${tf_prefix}"
${use_internal_bus_gripper_comm}
- ${gripper_joint_name}
+ ${prefix}${gripper_joint_name}
${gripper_max_velocity}
${gripper_max_force}
diff --git a/kortex_description/arms/gen3/7dof/urdf/kortex.ros2_control.xacro b/kortex_description/arms/gen3/7dof/urdf/kortex.ros2_control.xacro
index 6dc5f1339..db712ba80 100644
--- a/kortex_description/arms/gen3/7dof/urdf/kortex.ros2_control.xacro
+++ b/kortex_description/arms/gen3/7dof/urdf/kortex.ros2_control.xacro
@@ -51,7 +51,7 @@
${connection_inactivity_timeout_ms}
"${tf_prefix}"
${use_internal_bus_gripper_comm}
- ${gripper_joint_name}
+ ${prefix}${gripper_joint_name}
${gripper_max_velocity}
${gripper_max_force}