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.1
andmulticast_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-localtime
local system time without synchronizationecaltime-linuxptp
For PTP / gPTP synchronization over ethernet on Linux (device configuration in ecaltime.ini)ecaltime-simtime
Simulation 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.