diff --git a/gz_ros2_control_tests/tests/position_test.py b/gz_ros2_control_tests/tests/position_test.py
index 7080c719..66a200fe 100755
--- a/gz_ros2_control_tests/tests/position_test.py
+++ b/gz_ros2_control_tests/tests/position_test.py
@@ -93,8 +93,17 @@ def generate_test_description():
         output='screen'
     )
 
+    # Bridge
+    bridge = Node(
+        package='ros_gz_bridge',
+        executable='parameter_bridge',
+        arguments=['/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock'],
+        output='screen'
+    )
+
     ld = launch.LaunchDescription([
         included_launch,
+        bridge,
         gz_spawn_entity,
         node_robot_state_publisher,
         RegisterEventHandler(
diff --git a/ign_ros2_control_demos/launch/ackermann_drive_example.launch.py b/ign_ros2_control_demos/launch/ackermann_drive_example.launch.py
index dc55b619..5abdd038 100644
--- a/ign_ros2_control_demos/launch/ackermann_drive_example.launch.py
+++ b/ign_ros2_control_demos/launch/ackermann_drive_example.launch.py
@@ -96,6 +96,7 @@ def generate_launch_description():
                 on_exit=[load_ackermann_controller],
             )
         ),
+        bridge,
         node_robot_state_publisher,
         gz_spawn_entity,
         # Launch Arguments
diff --git a/ign_ros2_control_demos/launch/cart_example_effort.launch.py b/ign_ros2_control_demos/launch/cart_example_effort.launch.py
index 4bd27da5..4f28e1c1 100644
--- a/ign_ros2_control_demos/launch/cart_example_effort.launch.py
+++ b/ign_ros2_control_demos/launch/cart_example_effort.launch.py
@@ -71,6 +71,14 @@ def generate_launch_description():
         output='screen'
     )
 
+    # Bridge
+    bridge = Node(
+        package='ros_gz_bridge',
+        executable='parameter_bridge',
+        arguments=['/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock'],
+        output='screen'
+    )
+
     return LaunchDescription([
         # Launch gazebo environment
         IncludeLaunchDescription(
@@ -90,6 +98,7 @@ def generate_launch_description():
                 on_exit=[load_joint_effort_controller],
             )
         ),
+        bridge,
         node_robot_state_publisher,
         ignition_spawn_entity,
         # Launch Arguments
diff --git a/ign_ros2_control_demos/launch/cart_example_position.launch.py b/ign_ros2_control_demos/launch/cart_example_position.launch.py
index ffbeae6a..aca8fff9 100644
--- a/ign_ros2_control_demos/launch/cart_example_position.launch.py
+++ b/ign_ros2_control_demos/launch/cart_example_position.launch.py
@@ -72,6 +72,14 @@ def generate_launch_description():
         output='screen'
     )
 
+    # Bridge
+    bridge = Node(
+        package='ros_gz_bridge',
+        executable='parameter_bridge',
+        arguments=['/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock'],
+        output='screen'
+    )
+
     return LaunchDescription([
         # Launch gazebo environment
         IncludeLaunchDescription(
@@ -98,4 +106,5 @@ def generate_launch_description():
             'use_sim_time',
             default_value=use_sim_time,
             description='If true, use simulated clock'),
+        bridge,
     ])
diff --git a/ign_ros2_control_demos/launch/cart_example_velocity.launch.py b/ign_ros2_control_demos/launch/cart_example_velocity.launch.py
index d69b4130..f68e81fd 100644
--- a/ign_ros2_control_demos/launch/cart_example_velocity.launch.py
+++ b/ign_ros2_control_demos/launch/cart_example_velocity.launch.py
@@ -77,6 +77,14 @@ def generate_launch_description():
         output='screen'
     )
 
+    # Bridge
+    bridge = Node(
+        package='ros_gz_bridge',
+        executable='parameter_bridge',
+        arguments=['/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock'],
+        output='screen'
+    )
+
     return LaunchDescription([
         # Launch gazebo environment
         IncludeLaunchDescription(
@@ -109,4 +117,5 @@ def generate_launch_description():
             'use_sim_time',
             default_value=use_sim_time,
             description='If true, use simulated clock'),
+        bridge,
     ])
diff --git a/ign_ros2_control_demos/launch/gripper_mimic_joint_example.launch.py b/ign_ros2_control_demos/launch/gripper_mimic_joint_example.launch.py
index bf12d3d8..5c3b92b8 100644
--- a/ign_ros2_control_demos/launch/gripper_mimic_joint_example.launch.py
+++ b/ign_ros2_control_demos/launch/gripper_mimic_joint_example.launch.py
@@ -75,6 +75,14 @@ def generate_launch_description():
         output='screen'
     )
 
+    # Bridge
+    bridge = Node(
+        package='ros_gz_bridge',
+        executable='parameter_bridge',
+        arguments=['/clock@rosgraph_msgs/msg/Clock[ignition.msgs.Clock'],
+        output='screen'
+    )
+
     return LaunchDescription([
         # Launch gazebo environment
         IncludeLaunchDescription(
@@ -101,4 +109,5 @@ def generate_launch_description():
             'use_sim_time',
             default_value=use_sim_time,
             description='If true, use simulated clock'),
+        bridge,
     ])
diff --git a/ign_ros2_control_demos/launch/pendulum_example_effort.launch.py b/ign_ros2_control_demos/launch/pendulum_example_effort.launch.py
index cd2eaf16..13adde63 100644
--- a/ign_ros2_control_demos/launch/pendulum_example_effort.launch.py
+++ b/ign_ros2_control_demos/launch/pendulum_example_effort.launch.py
@@ -67,6 +67,14 @@ def generate_launch_description():
         output='screen'
     )
 
+    # Bridge
+    bridge = Node(
+        package='ros_gz_bridge',
+        executable='parameter_bridge',
+        arguments=['/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock'],
+        output='screen'
+    )
+
     return LaunchDescription([
         # Launch gazebo environment
         IncludeLaunchDescription(
@@ -87,6 +95,7 @@ def generate_launch_description():
                 on_exit=[load_joint_effort_controller],
             )
         ),
+        bridge,
         node_robot_state_publisher,
         gz_spawn_entity,
         # Launch Arguments
diff --git a/ign_ros2_control_demos/launch/pendulum_example_position.launch.py b/ign_ros2_control_demos/launch/pendulum_example_position.launch.py
index 18a6b8f9..31fe1e80 100644
--- a/ign_ros2_control_demos/launch/pendulum_example_position.launch.py
+++ b/ign_ros2_control_demos/launch/pendulum_example_position.launch.py
@@ -67,6 +67,14 @@ def generate_launch_description():
         output='screen'
     )
 
+    # Bridge
+    bridge = Node(
+        package='ros_gz_bridge',
+        executable='parameter_bridge',
+        arguments=['/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock'],
+        output='screen'
+    )
+
     return LaunchDescription([
         # Launch gazebo environment
         IncludeLaunchDescription(
@@ -87,6 +95,7 @@ def generate_launch_description():
                 on_exit=[load_tricycle_controller],
             )
         ),
+        bridge,
         node_robot_state_publisher,
         gz_spawn_entity,
         # Launch Arguments