update
This commit is contained in:
parent
e1de2cbf77
commit
a84ecce9b0
Binary file not shown.
7
scripts/ps4_controller_script.sh
Executable file
7
scripts/ps4_controller_script.sh
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Change directory to where docker-compose.yml is located
|
||||||
|
cd /home/bjorn/git/cps_loki
|
||||||
|
|
||||||
|
# Restart the teleop service using docker-compose
|
||||||
|
docker compose restart teleop
|
16
scripts/setup.sh
Executable file
16
scripts/setup.sh
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# copy script to a system directory
|
||||||
|
sudo cp ps4_controller_script.sh /etc/udev/rules.d
|
||||||
|
|
||||||
|
# Set execute permissions for the script
|
||||||
|
sudo chmod +x /etc/udev/rules.d/ps4_controller_script.sh
|
||||||
|
|
||||||
|
# Create or append the udev rule
|
||||||
|
echo 'ACTION=="add", SUBSYSTEM=="input", ATTRS{name}=="Wireless Controller", RUN+="/etc/udev/rules.d/ps4_controller_script.sh"' | sudo tee /etc/udev/rules.d/99-ps4-controller.rules
|
||||||
|
|
||||||
|
# Reload udev rules
|
||||||
|
sudo udevadm control --reload-rules
|
||||||
|
|
||||||
|
# Provide user feedback
|
||||||
|
echo "Setup completed. PS4 controller udev rule installed."
|
@ -1,88 +0,0 @@
|
|||||||
from launch import LaunchDescription
|
|
||||||
from launch_ros.actions import Node
|
|
||||||
from launch.actions import DeclareLaunchArgument
|
|
||||||
from launch.substitutions import LaunchConfiguration, ThisLaunchFileDir
|
|
||||||
from launch.conditions import IfCondition, UnlessCondition
|
|
||||||
from launch.substitutions import TextSubstitution
|
|
||||||
|
|
||||||
def generate_launch_description():
|
|
||||||
# Declare launch arguments
|
|
||||||
video_device_arg = DeclareLaunchArgument(
|
|
||||||
'video_device', default_value='/dev/video0',
|
|
||||||
description='Video device path')
|
|
||||||
|
|
||||||
pixel_format_arg = DeclareLaunchArgument(
|
|
||||||
'pixel_format', default_value='YUYV',
|
|
||||||
description='Pixel format')
|
|
||||||
|
|
||||||
output_encoding_arg = DeclareLaunchArgument(
|
|
||||||
'output_encoding', default_value='yuv422_yuy2',
|
|
||||||
description='Output encoding')
|
|
||||||
|
|
||||||
image_size_arg = DeclareLaunchArgument(
|
|
||||||
'image_size', default_value='[640, 480]',
|
|
||||||
description='Image size')
|
|
||||||
|
|
||||||
camera_frame_id_arg = DeclareLaunchArgument(
|
|
||||||
'camera_frame_id', default_value='camera_optical_link',
|
|
||||||
description='Camera frame ID')
|
|
||||||
|
|
||||||
params_file_arg = DeclareLaunchArgument(
|
|
||||||
'params_file', default_value='',
|
|
||||||
description='Path to the parameters file')
|
|
||||||
|
|
||||||
device_namespace_arg = DeclareLaunchArgument(
|
|
||||||
'device_namespace', default_value='camera',
|
|
||||||
description='Device namespace')
|
|
||||||
|
|
||||||
ffmpeg_encoding_arg = DeclareLaunchArgument(
|
|
||||||
'ffmpeg_encoding', default_value='libx264',
|
|
||||||
description='FFMPEG encoding')
|
|
||||||
|
|
||||||
ffmpeg_preset_arg = DeclareLaunchArgument(
|
|
||||||
'ffmpeg_preset', default_value='ultrafast',
|
|
||||||
description='FFMPEG preset')
|
|
||||||
|
|
||||||
ffmpeg_tune_arg = DeclareLaunchArgument(
|
|
||||||
'ffmpeg_tune', default_value='zerolatency',
|
|
||||||
description='FFMPEG tune')
|
|
||||||
|
|
||||||
# v4l2_camera node configuration
|
|
||||||
v4l2_camera_node = Node(
|
|
||||||
package='v4l2_camera',
|
|
||||||
executable='v4l2_camera_node',
|
|
||||||
name='camera',
|
|
||||||
namespace=LaunchConfiguration('device_namespace'),
|
|
||||||
parameters=[
|
|
||||||
{
|
|
||||||
'video_device': LaunchConfiguration('video_device'),
|
|
||||||
'pixel_format': LaunchConfiguration('pixel_format'),
|
|
||||||
'output_encoding': LaunchConfiguration('output_encoding'),
|
|
||||||
'image_size': LaunchConfiguration('image_size'),
|
|
||||||
'camera_frame_id': LaunchConfiguration('camera_frame_id'),
|
|
||||||
'camera_name': LaunchConfiguration('device_namespace'),
|
|
||||||
'camera_link_frame_id': [LaunchConfiguration('device_namespace'), TextSubstitution(text='_link')],
|
|
||||||
'ffmpeg_image_transport.encoding': LaunchConfiguration('ffmpeg_encoding'),
|
|
||||||
'ffmpeg_image_transport.preset': LaunchConfiguration('ffmpeg_preset'),
|
|
||||||
'ffmpeg_image_transport.tune': LaunchConfiguration('ffmpeg_tune'),
|
|
||||||
},
|
|
||||||
LaunchConfiguration('params_file')
|
|
||||||
],
|
|
||||||
# Add any necessary remappings here
|
|
||||||
)
|
|
||||||
|
|
||||||
# Assemble the launch description
|
|
||||||
return LaunchDescription([
|
|
||||||
video_device_arg,
|
|
||||||
pixel_format_arg,
|
|
||||||
output_encoding_arg,
|
|
||||||
image_size_arg,
|
|
||||||
camera_frame_id_arg,
|
|
||||||
params_file_arg,
|
|
||||||
device_namespace_arg,
|
|
||||||
ffmpeg_encoding_arg,
|
|
||||||
ffmpeg_preset_arg,
|
|
||||||
ffmpeg_tune_arg,
|
|
||||||
v4l2_camera_node
|
|
||||||
])
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user