Setting Up RCE Pixel Application

Following the setup instructions here. Be sure to extract and install everything in exactly the same directories as listed below, because some scripts use hard-coded paths!

The pixel application has two parts - calibserver, which runs on the HSIO-2, and calibGui, which is run locally and used to interface with calibserver.

You don't need to edit /etc/hosts if your /etc/dhcp/dhcpd.conf file is set correctly. This automatically assigns IP addresses to external devices based on their MAC addresses. You can look at the leases created by DHCP in /var/lib/dhcpd/dhcpd.leases. This will tell you the IP address of the HSIO-2 board. You should be able to log on to the board using

ssh root@<IP>

If you get an error “No route to host”, this means you're using the wrong IP address.

Execute all the commands in this section as superuser:

yum install cmake  libXpm libX11 libXext libSM libICE python-devel rpm-devel
mkdir -p /sw/atlas
chmod a+w /sw/atlas
cd /sw/atlas
git clone  https://:@gitlab.cern.ch:8443/rce/ayum.git
cd /sw/atlas/ayum
./configure.ayum

Enter the following information:

AYUM package location: /sw/atlas/ayum
AYUM software installation location: /sw/atlas
AYUM RPM database location: [/sw/atlas/.rpmdb]
AYUM cache location: [/sw/atlas/.yumcache]

Keep executing commands:

cd /sw/atlas/ayum/src/rpmext
make clean
make
cd ~/ayum
./ayum install  -y LCG_81b_gcc_4.9.3_x86_64_slc6 gcc_4.9.3_x86_64-slc6 LCG_81b_ROOT_6.04.12_x86_64_slc6_gcc49_opt  Boost_1.59.0_python2.7_armv7l_archlinux_gcc52_opt_lcgcmt81b_armv7l_archlinux_gcc52_opt
cd ~
git clone https://:@gitlab.cern.ch:8443/rce/pixelrce.git
ln -s ~/pixelrce ~/daq
cd ~/daq/rce

Now you'll want to edit ./scripts/setup-gen3.sh. Add the following line before “source $LCG_INST_PATH/sw/lcg/contrib/gcc/4.9.3/x86_64-slc6/setup.sh": "source $LCG_INST_PATH/sw/lcg/ROOT/6.04.12-c016e/x86_64-slc6-gcc49-opt/bin/thisroot.sh”.

source ./scripts/setup-gen3.sh
git checkout -b V1.1.0
cd ~/daq/rce/build.slc6-rcf; make
cd ~/daq/rce/build.arm-rcf; make
cd ~/daq/rce/
rsync -e 'ssh -l root' -rlptDv /sw/atlas/sw/lcg/LCG_81b/Boost/1.59.0_python2.7/armv7l-archlinux-gcc52-opt/lib 192.168.3.3:/root/pixelrce/ 
rsync -rlptDv -e 'ssh -l root' build.arm-rcf/{bin,lib} 192.168.3.3:/root/pixelrce

You can ssh into the HSIO-2 to run calibserver. This is not necessary unless you want to see real-time outputs from the server.

ssh [email protected]
export PATH=/root/pixelrce/bin:$PATH; export LD_LIBRARY_PATH=/root/pixelrce/lib:$LD_LIBRARY_PATH
calibserver

In another window, run calibGui on the local computer.

cd ~/daq/rce
source scripts/setup-gen3.sh
calibGui

Use Inlink X+1, Outlink X+1, where the module is plugged into port AX. Use Rce 0.