# this file specifies options which apply globally to several programs, and all services

# having these options in one place avoids repeated ini file changes.
# it sits at a well-known place ($EMC2_HOME//etc/linuxcnc/machinekit.ini), thus
# is accessible to all programs.

[MACHINEKIT]

# -------------- Unique UUID of a Machinekit instance  -----------------
# All network-accessible services of a running Machinekit instance are
# identified by a unique id; see 'man uuidgen'
# Clients browsing zeroconf for services belonging to a particular instance
# use this MKUUID value as a unique key.
#
# All MKUUID's must be different, so if there are several Machinekit instances
# running on a LAN, there might be collisions
# hence,  change this UUID by using the output of 'uuidgen':
MKUUID=72c3f16f-59c3-4116-ba4f-709959abb157

# -------------- enabling remote operation -----------------

# enable remote service access - defaults to local; set to 1 for enabling remote operation
# regardless of INTERFACES section below
# REMOTE=1 means: zeroMQ sockets will use TCP on the preferred interface as per INTERFACES
# REMOTE=0 means: zeroMQ will use IPC sockets in RUNDIR/<rtapi_instance>.<service>.<uuid>
#
# REMOTE=0 also means that zeroconf announcements are be disabled
REMOTE=1

# -------------- network setup -----------------

# by default, services are bound to Unix IPC sockets, meaning the service cannot
# be reached from outside.

# if services should be remotely accessible, a primary interface can be chosen
# by giving a list of preferred interfaces or interface prefices:
# the first IPv4 address of the first matching interface is used to bind(2):

# bind to the first Ethernet interface
# prefer to bind to ethX; then wlanX if eth* is not present; then usbX:

INTERFACES = eth wlan usb

# localhost only - for testing TCP, but within a single machine
#INTERFACES = lo
