ecal.ini
eCAL has many options that can be configured via an .ini file which is located at:
- Windows:
C:\ProgramData\eCAL\ecal.ini - Ubuntu:
/etc/ecal/ecal.ini
Loading strategy (Priority)
The eCAL configuration file is loaded based on the following priorities, whereever it is found first.
If you want a specific eCAL Node to run with another ecal.ini than the others, you can set the ECAL_DATA variable before starting the process, e.g. from a batch or shell skript.
In addition, some eCAL applications support providing a path from the command line option --ecal-ini-file.
-
Windows:
%ECAL_DATA%/ecal.ini%ProgramData%/ecal/ecal.ini
-
Ubuntu:
$ECAL_DATA/ecal.ini/etc/ecal/ecal.ini(fromCMAKE_INSTALL_SYSCONFDIR)/etc/ecal/ecal.ini(fallback)
ecal.ini options
[network]
The network setting drive how and which …
network_enabled
true / false, default: true
true= all eCAL components communicate over network boundariesfalse= local host only communication
multicast_config_version
v1 / v2, default: v1
- UDP configuration version (Since eCAL 5.12.)
v1= default behaviorv2= new behavior, comes with a bit more intuitive handling regarding masking of the groups
multicast_group
IPV4 Address, default 239.0.0.1
- UDP multicast group base. All registration and logging information is sent on this address.
multicast_mask
v1 behavior:
0.0.0.1-0.0.0.255- Mask maximum number of dynamic multicast group
v2 behavior:
255.0.0.0-255.255.255.255- Mask for the multicast group. Topic traffic may be set on any of the unmasked addresses.
- With
multicast_group:239.0.0.1andmulticast_mask:255.255.255.0, topic traffic will be sent on addresses239.0.0.0-239.0.0.255.
multicast_port
14000 + x
- UDP multicast port number (eCAL will use at least the 2 following port numbers too, so please modify in steps of 10 (e.g. 1010, 1020 …)
multicast_ttl
0 + x
- UDP ttl value, also known as hop limit, is used in determining the intermediate routers being traversed towards the destination
multicast_sndbuf
1024 * x
- UDP send buffer in bytes
multicast_rcvbuf
1024 * x
- UDP receive buffer in bytes
bandwidth_max_udp
1048576
- UDP bandwidth limit for eCAL udp layer (-1 == unlimited)
inproc_rec_enabled
true
- Enable to receive on eCAL inner process layer
shm_rec_enabled
true
- Enable to receive on eCAL shared memory layer
udp_mc_rec_enabled
true
- Enable to receive on eCAL udp multicast layer
npcap_enabled
false
- Enable to receive UDP traffic with the Npcap based receiver
[common]
registration_timeout
1000 + (x * 1000), default 60000
- Timeout for topic registration in ms
registration_refresh
< registration_timeout/2, default 1000
- Topic registration refresh cycle (has to be smaller than registration timeout!)
[time]
timesync_module_rt
default: "ecaltime-localtime"
- Module (dll / so) name time sync interface. The name will be extended with debug suffix (d) and platform extension (.dll|.so)
Available modules are:
ecaltime-localtimelocal system time without synchronizationecaltime-linuxptpFor PTP / gPTP synchronization over ethernet on Linux (device configuration in ecaltime.ini)ecaltime-simtimeSimulation time as published by the eCAL Player.
[process]
terminal_emulator
default: ""
- Command for starting applications with an external terminal emulator. If empty, the command will be ignored. Ignored on Windows.
e.g:
/usr/bin/x-terminal-emulator -e/usr/bin/gnome-terminal -x/usr/bin/xterm -e
[publisher]
use_inproc
Use inner process transport layer
0= off1= on2= auto
default = 0
use_shm
Use shared memory transport layer
0= off1= on2= auto
default = 2
use_udp_mc
Use udp multicast transport layer
0= off1= on2= auto
default = 2
memfile_minsize
x * 4096 kB
- Default memory file size for new publisher (
x * 4096 kB)
default = 4096
memfile_reserve
Dynamic file size reserve before recreating memory file if topic size changes (20 .. x)
default = 50
memfile_ack_timeout
Publisher timeout for ack event from subscriber that memory file content is processed
default = 0
share_ttype
Share topic type via registration layer (0, 1)
default = 1
share_tdesc
Share topic description via registration layer (0, 1). If set to 0, reflection is completely disabled. It is not possible then to monitor the content of messages in the eCAL Monitor.
default = 1
[monitoring]
Monitor settings are listed in the section monitoring
timeout
Timeout for topic monitoring in ms (1000 + (x * 1000)). If no additional registration information for the topic has be received in that time period, topics will no longer be shown in eCAL Monitor.
default = 5000
filter_excl
Topics blacklist as regular expression (will not be monitored). By default includes all eCAL internal topics.
default = ^__.*$
filter_incl
Topics whitelist as regular expression (will be monitored only)
default = “
filter_log_con
Log messages to console (all, info, warning, error, fatal, debug1, debug2, debug3, debug4)
default = error, fatal
filter_log_file
Log messages to log file
default = error, fatal
filter_log_udp
Log messages to udp bus
default = info, warning, error, fatal
[sys]
filter_excl
Apps blacklist to be excluded when importing tasks from cloud.