Dear all,
I use Jetson Xavier.
Host OS Jetpack R32.4.3
The Docker run on the Xavier.
Docker image: jetson-containers dustynv/ros:galactic-ros-base-l4t-r32.4.4
I want to set QoS parameters by command line.
But it set fail.
Could you give me suggestion?
Following are my test steps on Docker.
Creat a yaml file : demo_params.yaml
root@nvidia-desktop:/home/nvidia/workspace# cat demo_params.yaml
/talker:
ros__parameters:
qos_overrides:
/parameter_events:
publisher:
depth: 5
durability: volatile
history: keep_last
reliability: best_effort
use_sim_time: false
set QoS parameters by yaml file
root@nvidia-desktop:/home/nvidia/workspace# ros2 run demo_nodes_cpp talker __params:=demo_params.yaml
[INFO] [1657011523.551291089] [talker]: Publishing: 'Hello World: 1'
[INFO] [1657011524.551193044] [talker]: Publishing: 'Hello World: 2'
....
Open another terminal to watch QoS parameters
root@nvidia-desktop:/home/nvidia/workspace# ros2 param dump /talker
Saving to: ./talker.yaml
root@nvidia-desktop:/home/nvidia/workspace# cat talker.yaml
/talker:
ros__parameters:
qos_overrides:
/parameter_events:
publisher:
depth: 1000
durability: volatile
history: keep_last
reliability: reliable
use_sim_time: false
root@nvidia-desktop:/home/nvidia/workspace#
Question:
The reliability no change to “best_effort”.
The depth no change to 5.
Why new QoS parameters set fail?
Best regards
-Jason