- Install Ubuntu 18.04 LTS or Ubuntu 20.04 LTS to the carrier PC.
Please make sure that the operation is confirmed only with the above versions.
It is not confirmed, for example, 18.04.2 LTS and so on.
After the installation, /etc/apt/apt.conf.d/20auto-upgrades should be modified as follows to avoid the kernel upgrade. from
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";
to
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Unattended-Upgrade "0";
- Install the low-latency kernel
For Ubuntu 18.04 LTS
$ sudo apt install linux-image-4.15.0-20-lowlatency
$ sudo reboot
For Ubuntu 20.04 LTS
$ sudo apt install linux-image-5.4.0-42-lowlatency
$ sudo reboot
- Install the related packages those will be used later.
$ sudo apt install -y build-essential libelf-dev libreadline-dev linux-headers-$(uname -r)
$ sudo apt install -y automake autoconf subversion git mokutil openssh-server vim net-tools
- Install the KEK version of the WR starting kit.
Download it from the KEK repository.
4.1 Create wr directory under /opt and unpack the tar ball.
$ cd /opt
$ sudo mkdir wr
$ sudo chown USER_NAME wr
$ cd wr
$ mv ~/Downloads/fmc-tdc-sw-kekYYMMDD-revX.tar.gz .
$ tar xzf fmc-tdc-sw-kekYYMMDD-revX.tar.gz
4.2 Build them
$ cd wr-starting-kit
$ make
$ sudo make install
4.3 Setup to load the kernel module when it is booted.
$ sudo vi /etc/modules-load.d/modules.conf
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
spec <- add
htvic <- add
wr_nic <- add
wr_dio <- add
- Install EPICS R3.15.8
5.1 Download EPICS R.3.15.8 under /opt
$ cd /opt
$ sudo mkdir -p epics
$ sudo chown USER_NAME epics
$ cd epics
$ mkdir R3-15-8
$ cd R3-15-8
$ wget https://epics.anl.gov/download/base/base-3.15.8.tar.gz
$ tar xzf base-3.15.8.tar.gz
$ mv base-3.15.8 base
5.2 Edit CONFIG_SITE
$ cd base
$ vi configure/CONFIG_SITE
Set USE_POSIX_THREAD_PRIORITY_SCHEDULING to be "YES"
USE_POSIX_THREAD_PRIORITY_SCHEDULING = YES
5.3 Build it
$ export EPICS_BASE=$PWD
$ export EPICS_HOST_ARCH=linux-x86_64
$ make
- Install the EPICS device support of FMC-DIO
Download the device support from the KEK repository
6.1 Unpack it under /opt/epics/R3-15-8/modules
$ cd /opt/epics/R3-15-8
$ mkdir modules
$ mv ~/Downloads/devWrtdc-YYMMDD-revX.tar.gz .
$ tar xzf devWrtdc-YYMMDD-revX.tar.gz
6.2 Build it
$ cd devWrdio
$ make
For how to use the device support, please refer to this.
For the distributed TDC, you can utilize the slave node with the SPEC and FMC-TDC. Please see here for the setup.
Contact: Hiroshi Kaji
13 October 2022