DISCLAIMER: This page is a collection of information which may be useful when running ITSDAQ on a PC running Scientific Linux CERN 6.8. The following page which explain the s/w and installation in detail should be consulted first: ITSDAQHvLvInterlock and StripsUpgradeDAQInstall and StripsUpgradeDAQSoftware . The following has been tested at the DAQ setup in Birmingham. It may work on a CentOS7 PC, but will not work on Ubuntu or Debian. An admin (ie superuser, ie 'root') login is required for the installation steps. Before using the instructions here, please talk to your local Linux administrator.

Preparing installations: Installing Kernel sources

The following s/w packages require 'Kernel sources' to be installed, which are not there by default in SLC6.8. The command is:

   yum install kernel-devel

It is recommended to reboot the PC afterwards, as otherwise it can happen that the Kernel is not in the exact same version as the 'kernel sources'. If you haven't done so already, also install PCAP:

   yum install libpcap-devel

Again, please check StripsUpgradeDAQInstall for further details.

NI-VISA installation for remote-controlling a TTI-PSU

The following information has been tested with a AIM-TTI CPX-400DP power supply, connected via a USB cable. It will also work with the CPX-200DP which has an identical interface. Find a list of supported LV power supplies on ITSDAQHvLvInterlock.

Installation of NI-VISA

This is the same s/w package as used in Windows (explained on ITSDAQHvLvInterlock ). A suitable version for SLC6.8 is NI-VISA suitable for SL6, eg version 15.5, which can be downloaded from here:

It's free but registration is required. We did the installation using a superuser terminal ('su'), not 'sudo' ahead of every command. Follow the 'readme.txt' on the link above for the installations steps. The final command is ./INSTALL which should then finish without errors. We also installed DAQmx - which is meant to be the successor to the NI-MAX tool know from Windows - but this may not be necessary:

It requires this package:

   yum install avahi

Finding the device link of your PSU

To find which device is your TTI: Login as admin and type:


Probably unplug and replug the USB cable to the TTI to see which of the ASRL's appears/disappears. For us it is ASRL5. Double-click on the configuration manager's entry of that ARSL to see which device it is connected to. In our case it was /dev/ttyACM0. By default, this device can only be accessed by an admin, so this hack is needed to allow this for general users:

   cd /dev
   chmod 666 ttyACM0

This command is needed each time the device is reconnected or switched on/off while the PC is on, which is obviously not convenient. Note that this is not recommended by NI, but their alternative method (see again their readme.txt) doesn't seem to work for us. The device may swap to ttyACM1 after eg a reboot.

Compiling ITSDAQ with NI-VISA support enabled

This step can and should now be made using a regular user account. For the installation of ITSDAQ, find all details on: StripsUpgradeDAQ . ITSDAQ has NI-VISA support disabled by default on Linux. This can be switched by using this flag:

   python waf configure --enable-visa
Then build and install as usual:
   python waf build
   python waf install

If NI-VISA is not correctly installed, the 'build' step will fail.

Edit rootlogon.C for enable DCS control from the GUI

This is done very similar as on Windows, as explained on ITSDAQHvLvInterlock. A difference is that a switch is needed due to the different library name when using Linux. A snippet from our rootlogon.C here:

  Int_t lvtype = 4;
  Int_t nLVSupplies = 0;
  case 4:    // NI-VISA under Linux, one PSU for now...
      printf("Attempting to load");
      gSystem->Load("");    // Linux
    else {
      printf("Attempting to load ttidll.dll"); 
      gSystem->Load("ttidll.dll");   // Windows

    TTi* LVSupplies[8];
    LVSupplies[nLVSupplies] = new TTi("ASRL5::INSTR",1, "Module 0");
    if(LVSupplies[nLVSupplies]->isValid) nLVSupplies++;
    else LVSupplies[nLVSupplies] = 0;
    LVSupplies[1] = new TTi("ASRL5::INSTR",2, "Module 1");
    if(LVSupplies[nLVSupplies]->isValid) nLVSupplies++;
    else LVSupplies[nLVSupplies] = 0;

Now everything should set to see the LV output when starting-up ITSDAQ, and see the LV control in the DCS panel of the BurstData GUI. If you see a 'timeout' at the very first try, just try again shortly afterwards. Remember the privileges change described above.
Note in order to switch to channels together, the names need to start with 'Module', here this is the analogue and digital voltage of a ABC130-SingleChip board. Then 'LV On/Off' in the 'BurstData->DCS' GUI will be applied to both. If the name doesn't start with 'Module', the option 'LV On/Off One Channel' needs to be used.

Installation of Gigabit-Ethernet-USB3.0 adapter

We're using a StarTech USB31000S adapter to create the second ethernet port as required by ITSDAQ, for the network cable which connects to the Digilent Atlys' ethernet plug. This was there is no need to open the PC box to fit a PCI network adapter, also it is being used already by other people in the ITK:

The driver installation is quite easy, again provided the 'Kernel sources' are installed (see above). The chip inside this dongle is a 'AX88179', so this driver should be used:;71;112

Scroll down on this page for "Linux kernel 4.x/3.x/2.6.x Driver" and download it, login as admin, and install as explained in the 'readme' inside the downloaded zip file. Then reboot the computer. The second port should then appear as 'eth1', so adjust the hsioPipe command of ITSDAQ accordingly.

Setup using Root and Boost from ATLAS-CVMFS

Note: This method may not fully work and is under discussion ! Consult StripsUpgradeDAQInstall and StripsUpgradeDAQSoftware This is a possible setup script to avoid the need to install Root locally:

export ATLAS_LOCAL_ROOT_BASE=/cvmfs/
alias setupATLAS='source ${ATLAS_LOCAL_ROOT_BASE}/user/'

localSetupROOT 5.34.25-x86_64-slc6-gcc48-opt
localSetupBoost boost-1.55.0-python2.7-x86_64-slc6-gcc48

export SCTDAQ_ROOT=/home/username/sctdaq_r4421/trunk
export SCTDAQ_VAR=/home/username/sctdaq_r4421/sctvar
export SCTDB_USER=username

which then needs to be run:


before each time compiling and/or starting ITSDAQ.

-- JuergenThomas - 2016-10-25

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2016-10-25 - JuergenThomas
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback