ecmc server cfg
Repo containing cfg for ecmc servers, only ecmc servers.
THE SETTINGS IN THIS REPO IS ONLY SUPPOSED TO BE A TEMPLATE AND WILL NOT WORK FOR ALL MACHINES
THE PERSON COMMISSIONING THE SERVER IS RESPONSIBLE FOR THE SETTINGS
Usage
Clone this repository to hosts:
cd /ioc/hosts/<hostname>
git clone git@git.psi.ch:motion/ecmc_server_cfg.git cfg
then check the settings are valid. A reboot is needed for the settings to take effect.
note on IGB driver
The file ETHERCATDRVR defines what drivers to use:
DEVICE_MODULES="igb generic"
The default setup is that igb-driver will be used if possible and fallback to generic otherwise.
The "S10-eth-irq-prio" script will only have effect if generic driver is used. In the default case when igb-drivber is used the script might give some error messages but should not affect anything in a negative way.
check which driver is in use:
On ecmc server:
lsmod | grep ec_
ec_generic 16384 0
ec_igb 249856 1
ec_master 421888 4 ec_igb,ec_generic
In this case igb (ec_igb) driver is in use.
add EtherCAT network interfaces
In ETHERCATDRVR define the EtherCAT interfaces by adding LINK_DEVICES and LINK_DEVICE_MACS
NOTE: Always specify the MACS with lower case letters!!
DEVICE_MODULES="igb generic"
LINK_DEVICES="ens2f0 ens2f1 ens2f2 ens2f3"
LINK_DEVICE_MACS="d4:f5:ef:b3:7b:d8 d4:f5:ef:b3:7b:d9 d4:f5:ef:b3:7b:da d4:f5:ef:b3:7b:db"
The number of entries in LINK_DEVICES and LINK_DEVICE_MACS must be the same. If igb and LINK_DEVICE_MACS are defined then the names in LINK_DEVICES are not important but must be defined (dummy1, dummy2..). However, if generic driver is used, then the LINK_DEVICES names must correspond to the actual interface names.
workflow for new server
See WORKFLOW