Sensor_Combined_listner has no output with ROS2 and uXRCE

Hello,
I am running ROS2: humble on Ubuntu: 22.04 with uXRCE-dds and PX4 autopilot as per
ROS 2 User Guide | PX4 User Guide.
I’ve also managed to get this working with gazebo classic despite being on Ubuntu 22.04.

As mentioned in the title the last example provided has no output other than “Starting sensor_combined_listener node…”.
I have not setup microros and I’ve tried multiple things before coming here, most references I’ve found seem to use micrortps instead, I’m fairly new to this and any help would be much appreciated.

aniketh@pyro:~/ros2_ws/ws_sensor_combined$ ros2 launch px4_ros_com sensor_combined_listener.launch.py 
[INFO] [launch]: All log files can be found below /home/aniketh/.ros/log/2023-07-23-18-17-19-448588-pyro-25847
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [sensor_combined_listener-1]: process started with pid [25848]
[sensor_combined_listener-1] Starting sensor_combined listener node...

topics list for sensor_combined

aniketh@pyro:~$ ros2 topic list
/fmu/out/sensor_combined
/parameter_events
/rosout

for the gazebo client agent interaction

aniketh@pyro:~$ MicroXRCEAgent udp4 -p 8888
[1690116517.923149] info     | UDPv4AgentLinux.cpp | init                     | running...             | port: 8888
[1690116517.923334] info     | Root.cpp           | set_verbose_level        | logger setup           | verbose_level: 4
[1690116553.949083] info     | Root.cpp           | create_client            | create                 | client_key: 0x00000001, session_id: 0x81
[1690116553.949546] info     | SessionManager.hpp | establish_session        | session established    | client_key: 0x00000001, address: 127.0.0.1:20864
[1690116553.953607] info     | ProxyClient.cpp    | create_participant       | participant created    | client_key: 0x00000001, participant_id: 0x001(1)
[1690116553.953918] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3E8(2), participant_id: 0x001(1)
[1690116553.954009] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3E8(4), participant_id: 0x001(1)
[1690116553.955861] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3E8(6), subscriber_id: 0x3E8(4)
[1690116553.956023] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3E9(2), participant_id: 0x001(1)
[1690116553.956057] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3E9(4), participant_id: 0x001(1)
[1690116553.956207] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3E9(6), subscriber_id: 0x3E9(4)
[1690116553.956352] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3EA(2), participant_id: 0x001(1)
[1690116553.956396] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3EA(4), participant_id: 0x001(1)
[1690116553.956548] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3EA(6), subscriber_id: 0x3EA(4)
[1690116553.956689] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3EB(2), participant_id: 0x001(1)
[1690116553.956724] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3EB(4), participant_id: 0x001(1)
[1690116553.956851] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3EB(6), subscriber_id: 0x3EB(4)
[1690116553.956990] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3EC(2), participant_id: 0x001(1)
[1690116553.957033] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3EC(4), participant_id: 0x001(1)
[1690116553.957147] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3EC(6), subscriber_id: 0x3EC(4)
[1690116553.957283] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3ED(2), participant_id: 0x001(1)
[1690116553.957315] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3ED(4), participant_id: 0x001(1)
[1690116553.957410] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3ED(6), subscriber_id: 0x3ED(4)
[1690116553.957531] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3EE(2), participant_id: 0x001(1)
[1690116553.957568] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3EE(4), participant_id: 0x001(1)
[1690116553.957666] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3EE(6), subscriber_id: 0x3EE(4)
[1690116553.957811] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3EF(2), participant_id: 0x001(1)
[1690116553.957835] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3EF(4), participant_id: 0x001(1)
[1690116553.957928] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3EF(6), subscriber_id: 0x3EF(4)
[1690116553.958035] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3F0(2), participant_id: 0x001(1)
[1690116553.958066] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3F0(4), participant_id: 0x001(1)
[1690116553.958152] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3F0(6), subscriber_id: 0x3F0(4)
[1690116553.958262] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3F1(2), participant_id: 0x001(1)
[1690116553.958298] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3F1(4), participant_id: 0x001(1)
[1690116553.958383] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3F1(6), subscriber_id: 0x3F1(4)
[1690116553.958491] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3F2(2), participant_id: 0x001(1)
[1690116553.958525] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3F2(4), participant_id: 0x001(1)
[1690116553.958629] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3F2(6), subscriber_id: 0x3F2(4)
[1690116553.958744] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3F3(2), participant_id: 0x001(1)
[1690116553.958769] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3F3(4), participant_id: 0x001(1)
[1690116553.958868] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3F3(6), subscriber_id: 0x3F3(4)
[1690116553.958965] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x3F4(2), participant_id: 0x001(1)
[1690116553.959009] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x00000001, subscriber_id: 0x3F4(4), participant_id: 0x001(1)
[1690116553.959090] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x00000001, datareader_id: 0x3F4(6), subscriber_id: 0x3F4(4)
[1690116553.959275] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x050(2), participant_id: 0x001(1)
[1690116553.959324] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x050(3), participant_id: 0x001(1)
[1690116553.959502] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x050(5), publisher_id: 0x050(3)
[1690116553.959603] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x099(2), participant_id: 0x001(1)
[1690116553.959634] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x099(3), participant_id: 0x001(1)
[1690116553.959739] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x099(5), publisher_id: 0x099(3)
[1690116553.959831] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0AC(2), participant_id: 0x001(1)
[1690116553.959854] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0AC(3), participant_id: 0x001(1)
[1690116553.959960] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0AC(5), publisher_id: 0x0AC(3)
[1690116553.960134] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0C3(2), participant_id: 0x001(1)
[1690116553.960168] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0C3(3), participant_id: 0x001(1)
[1690116553.960272] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0C3(5), publisher_id: 0x0C3(3)
[1690116553.960356] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0D8(2), participant_id: 0x001(1)
[1690116553.960385] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0D8(3), participant_id: 0x001(1)
[1690116553.960492] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0D8(5), publisher_id: 0x0D8(3)
[1690116553.960605] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0E9(2), participant_id: 0x001(1)
[1690116553.960641] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0E9(3), participant_id: 0x001(1)
[1690116553.960779] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0E9(5), publisher_id: 0x0E9(3)
[1690116554.149279] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0DB(2), participant_id: 0x001(1)
[1690116554.149332] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0DB(3), participant_id: 0x001(1)
[1690116554.149465] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0DB(5), publisher_id: 0x0DB(3)
[1690116554.393374] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0DF(2), participant_id: 0x001(1)
[1690116554.393428] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0DF(3), participant_id: 0x001(1)
[1690116554.393578] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0DF(5), publisher_id: 0x0DF(3)
[1690116554.393683] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0E4(2), participant_id: 0x001(1)
[1690116554.393721] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0E4(3), participant_id: 0x001(1)
[1690116554.393854] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0E4(5), publisher_id: 0x0E4(3)
[1690116554.701798] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0D2(2), participant_id: 0x001(1)
[1690116554.701870] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0D2(3), participant_id: 0x001(1)
[1690116554.702078] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0D2(5), publisher_id: 0x0D2(3)
[1690116559.357659] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x00000001, topic_id: 0x0D9(2), participant_id: 0x001(1)
[1690116559.357766] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x00000001, publisher_id: 0x0D9(3), participant_id: 0x001(1)
[1690116559.358043] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x00000001, datawriter_id: 0x0D9(5), publisher_id: 0x0D9(3)

launching gazebo from PX4 output

aniketh@pyro:~$ cd PX4-Autopilot/
aniketh@pyro:~/PX4-Autopilot$ make px4_sitl gazebo-classic_iris
[0/4] Performing build step for 'sitl_gazebo-classic'
ninja: no work to do.
[3/4] cd /home/aniketh/PX4-Autopilot/b...h/PX4-Autopilot/build/px4_sitl_default
SITL ARGS
sitl_bin: /home/aniketh/PX4-Autopilot/build/px4_sitl_default/bin/px4
debugger: none
model: iris
world: none
src_path: /home/aniketh/PX4-Autopilot
build_path: /home/aniketh/PX4-Autopilot/build/px4_sitl_default
GAZEBO_PLUGIN_PATH :/home/aniketh/PX4-Autopilot/build/px4_sitl_default/build_gazebo-classic
GAZEBO_MODEL_PATH /usr/share/gazebo-11/models:/opt/ros/humble/share/turtlebot3_gazebo/models:/home/aniketh/PX4-Autopilot/Tools/simulation/gazebo-classic/sitl_gazebo-classic/models
LD_LIBRARY_PATH /usr/lib/x86_64-linux-gnu/gazebo-11/plugins:/opt/ros/humble/opt/rviz_ogre_vendor/lib:/opt/ros/humble/lib/x86_64-linux-gnu:/opt/ros/humble/lib:/home/aniketh/PX4-Autopilot/build/px4_sitl_default/build_gazebo-classic
empty world, setting empty.world as default
Using: /home/aniketh/PX4-Autopilot/Tools/simulation/gazebo-classic/sitl_gazebo-classic/models/iris/iris.sdf
SITL COMMAND: "/home/aniketh/PX4-Autopilot/build/px4_sitl_default/bin/px4" "/home/aniketh/PX4-Autopilot/build/px4_sitl_default"/etc

______  __   __    ___ 
| ___ \ \ \ / /   /   |
| |_/ /  \ V /   / /| |
|  __/   /   \  / /_| |
| |     / /^\ \ \___  |
\_|     \/   \/     |_/

px4 starting.

INFO  [px4] startup script: /bin/sh etc/init.d-posix/rcS 0
INFO  [init] found model autostart file as SYS_AUTOSTART=10015
INFO  [param] selected parameter default file parameters.bson
INFO  [param] importing from 'parameters.bson'
INFO  [parameters] BSON document size 274 bytes, decoded 274 bytes (INT32:11, FLOAT:3)
INFO  [param] selected parameter backup file parameters_backup.bson
INFO  [dataman] data manager file './dataman' size is 7866640 bytes
etc/init.d-posix/rcS: 39: [: Illegal number: 
INFO  [init] PX4_SIM_HOSTNAME: localhost
INFO  [simulator_mavlink] Waiting for simulator to accept connection on TCP port 4560
INFO  [simulator_mavlink] Simulator connected on TCP port 4560.
INFO  [lockstep_scheduler] setting initial absolute time to 3300000 us
INFO  [commander] LED: open /dev/led0 failed (22)
WARN  [health_and_arming_checks] Preflight Fail: ekf2 missing data
INFO  [uxrce_dds_client] synchronized with time offset 1690116550591145us
INFO  [uxrce_dds_client] successfully created rt/fmu/out/failsafe_flags data writer, topic id: 80
INFO  [uxrce_dds_client] successfully created rt/fmu/out/position_setpoint_triplet data writer, topic id: 153INFO  [uxrce_dds_client] successfully created rt/fmu/out/sensor_combined data writer, topic id: 172
INFO  [uxrce_dds_client] successfully created rt/fmu/out/timesync_status data writer, topic id: 195
INFO  [uxrce_dds_client] successfully created rt/fmu/out/vehicle_control_mode data writer, topic id: 216
INFO  [uxrce_dds_client] successfully created rt/fmu/out/vehicle_status data writer, topic id: 233
INFO  [mavlink] mode: Normal, data rate: 4000000 B/s on udp port 18570 remote port 14550
Gazebo multi-robot simulator, version 11.10.2
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org

[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://127.0.0.1:11345
[Msg] Publicized address: 10.1.40.62
INFO  [mavlink] mode: Onboard, data rate: 4000000 B/s on udp port 14580 remote port 14540
INFO  [mavlink] mode: Onboard, data rate: 4000 B/s on udp port 14280 remote port 14030
INFO  [mavlink] mode: Gimbal, data rate: 400000 B/s on udp port 13030 remote port 13280
INFO  [logger] logger started (mode=all)
INFO  [logger] Start file log (type: full)
INFO  [logger] [logger] ./log/2023-07-23/12_49_14.ulg	
INFO  [logger] Opened full log file: ./log/2023-07-23/12_49_14.ulg
INFO  [mavlink] MAVLink only on localhost (set param MAV_{i}_BROADCAST = 1 to enable network)
INFO  [mavlink] MAVLink only on localhost (set param MAV_{i}_BROADCAST = 1 to enable network)
INFO  [px4] Startup script returned successfully
pxh> INFO  [uxrce_dds_client] successfully created rt/fmu/out/vehicle_gps_position data writer, topic id: 219
INFO  [tone_alarm] home set
INFO  [uxrce_dds_client] successfully created rt/fmu/out/vehicle_local_position data writer, topic id: 223
INFO  [uxrce_dds_client] successfully created rt/fmu/out/vehicle_odometry data writer, topic id: 228
INFO  [uxrce_dds_client] successfully created rt/fmu/out/vehicle_attitude data writer, topic id: 210
[Wrn] [Event.cc:61] Warning: Deleting a connection right after creation. Make sure to save the ConnectionPtr from a Connect call
INFO  [tone_alarm] notify negative
INFO  [uxrce_dds_client] successfully created rt/fmu/out/vehicle_global_position data writer, topic id: 217
INFO  [commander] Ready for takeoff!

If there is any other information I could provide, please ping me.

Hi @pyromania99 !

From the outputs of the Agent and PX4 you can see that the Agent - client connection is working properly.
However, the Agent is not forwarding the topics to ROS (you can see that from the topic list).

Are you working on a DOMAIN_ID different from 0? Try running all the ros commands from terminals where you unset ROS_DOMAIN_ID:

unset ROS_DOMAIN_ID

Moreover, make sure that the PX4 parameter UXRCE_DDS_DOM_ID is zero or matches ROS_DOMAIN_ID.

Hey @Benja
this is with

unset ROS_DOMAIN_ID
aniketh@pyro:~$ unset ROS_DOMAIN_ID
aniketh@pyro:~$ printenv | grep ROS
ROS_VERSION=2
ROS_PYTHON_VERSION=3
ROS_LOCALHOST_ONLY=0
ROS_DISTRO=humble
aniketh@pyro:~$ export UXRCE_DDS_DOM_ID=0
aniketh@pyro:~$ cd ros2_ws/ws_sensor_combined/
aniketh@pyro:~/ros2_ws/ws_sensor_combined$ . install/local_setup.bash
aniketh@pyro:~/ros2_ws/ws_sensor_combined$ ros2 launch px4_ros_com sensor_combined_listener.launch.py 
[INFO] [launch]: All log files can be found below /home/aniketh/.ros/log/2023-07-24-16-59-08-610401-pyro-35566
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [sensor_combined_listener-1]: process started with pid [35567]
[sensor_combined_listener-1] Starting sensor_combined listener node...

this is with the ROS_DOMAIN_ID=0

aniketh@pyro:~$ printenv |grep ROS
ROS_VERSION=2
ROS_PYTHON_VERSION=3
ROS_DOMAIN_ID=0
ROS_LOCALHOST_ONLY=0
ROS_DISTRO=humble
aniketh@pyro:~$ export UXRCE_DDS_DOM_ID=0
aniketh@pyro:~$ cd ros2_ws/ws_sensor_combined/
aniketh@pyro:~/ros2_ws/ws_sensor_combined$ . install/local_setup.bash
aniketh@pyro:~/ros2_ws/ws_sensor_combined$ ros2 launch px4_ros_com sensor_combined_listener.launch.py 
[INFO] [launch]: All log files can be found below /home/aniketh/.ros/log/2023-07-24-16-59-42-296317-pyro-35664
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [sensor_combined_listener-1]: process started with pid [35665]
[sensor_combined_listener-1] Starting sensor_combined listener node...

I’m afraid there’s been no luck, I noticed params was a command I might’ve needed to execute but I’m not sure how i’d go about doing it.

Dear @Benja ,
I had originally set up ROS_LOCALHOST_ONLY=1, and have since changed it.
I’ve been trying to run the listener code on its own and it worked when I ran it together with the gazebo simulation, maybe this could be made clearer in the docs.
Thank you for all your help, I’ll look forward to more in the future. :grin:

1 Like

Just to clarify, you where running your ROS nodes and application with ROS_LOCALHOST_ONLY=1 while the uxrce_dds_client was running in normal mode?
Unsetting it solved the issue?

Precisely, perhaps it prevents communication between ROS and uxrce.
That and as for the docs, it wasn’t explicitly mentioned to run all the applications simultaneously. Since I’m new to this, it took some fiddling to figure that out.

Thanks for confirming it!

If you want to use ROS with the LOCALHOST_ONLY feature enabled, then you have to start the uxrce_dds_client with the -l option, see

However, as you said, there is no explicit mention of this in the doc. Moreover, there is no PX4 parameter to set it therefore it can only be used when starting the client from the nuttx shell / px4 console / microsd.