# 12. Environment variables¶

This is the list of environment variables that affect the behavior of Fast DDS:

## 12.1. FASTRTPS_DEFAULT_PROFILES_FILE¶

Defines the location of the default profile configuration XML file. If this variable is set and its value corresponds with an existing file, Fast DDS will load its profiles. For more information about XML profiles, please refer to XML profiles.

 Linux export FASTRTPS_DEFAULT_PROFILES_FILE=/home/user/profiles.xml  Windows set FASTRTPS_DEFAULT_PROFILES_FILE=C:\profiles.xml 

## 12.2. SKIP_DEFAULT_XML¶

Skips looking for a default profile configuration XML file. If this variable is set to 1, Fast DDS will load the configuration parameters directly from the classes’ definitions without looking for the DEFAULT_FASTRTPS_PROFILES.xml in the working directory. For more information about XML profiles, please refer to XML profiles.

 Linux export SKIP_DEFAULT_XML=1  Windows set SKIP_DEFAULT_XML=1 

## 12.3. ROS_DISCOVERY_SERVER¶

Warning

The environment variable is only used in the case where discovery protocol is set to SIMPLE, SERVER, or BACKUP. In any other case, the environment variable has no effect.

Setting this variable configures the DomainParticipant to connect to one or more servers using the Discovery Server discovery mechanism.

• If ROS_DISCOVERY_SERVER is defined, and the DomainParticipant’s discovery protocol, is set to SIMPLE, then Fast DDS will instead configure it as CLIENT of the given server.

• If ROS_DISCOVERY_SERVER is defined, and the DomainParticipant’s discovery protocol is SERVER or BACKUP, then the variable is used to add remote servers to the given server, leaving the discovery protocol as SERVER or BACKUP respectively.

• The value of the variable must list the locator of the server in the form of the IP address (e.g., ‘192.168.2.23’) or IP-port pair (e.g., ‘192.168.2.23:24353’).

• If no port is specified, the default port 11811 is used.

• To set more than one server’s address, they must be separated by semicolons.

• The server’s ID is determined by their position in the list. Two semicolons together means the corresponding ID is free.

The following example shows how to set the address of two remote discovery servers with addresses ‘84.22.259.329:8888’ and ‘81.41.17.102:1234’ and IDs 0 and 2 respectively.

 Linux export ROS_DISCOVERY_SERVER=84.22.259.329:8888;;81.41.17.102:1234  Windows set ROS_DISCOVERY_SERVER=84.22.259.329:8888;;81.41.17.102:1234 

Important

This environment variable is meant to be used in combination with Fast DDS discovery CLI. The server’s ID is used by Fast DDS to derived the GuidPrefix_t of the server. If the server is not instantiated using the CLI, the server’s GUID prefix should adhere to the same schema as the one generated from the CLI. Else, the clients configured with this environment variable will not be able to establish a connection with the server, thus not being able to connect to other clients either. The server’s GUID prefixes generated by the CLI comply with the following schema: 44.53.<server-id-in-hex>.5f.45.50.52.4f.53.49.4d.41. This prefix schema has been chosen for its ASCII translation: DS<id_in_hex>_EPROSIMA.

## 12.4. FASTDDS_STATISTICS¶

Warning

The environment variable is only used in the case where the CMake option FASTDDS_STATISTICS has been enabled. In any other case, the environment variable has no effect. Please, refer to CMake options for more information.

Setting this variable configures the DomainParticipant to enable the statistics DataWriters which topics are contained in the list set in this environment variable. The elements of the list should be separated by semicolons and match the statistics topic name aliases.

For example, to enable the statistics DataWriters that report the latency measurements, the environment variable should be set as follows:

 Linux export FASTDDS_STATISTICS=HISTORY_LATENCY_TOPIC;NETWORK_LATENCY_TOPIC  Windows set FASTDDS_STATISTICS=HISTORY_LATENCY_TOPIC;NETWORK_LATENCY_TOPIC 

Important

This environment variable can be used together with the XML profiles (for more information please refer to Automatically enabling statistics DataWriters). The statistics DataWriters that will be enabled is the union between the ones specified in the XML file (if loaded) and the ones stated in the environment variable (if set).