ATLAS Upgrade Strip Cleanroom

Introduction

Collection of information for Strip ATLAS Upgrade test systems, database upload, scripts, ...

ITSDAQ Installation and Update

Mount local harddrive

  • create mount point: sudo mkdir ~/disk1
  • ##mount harddrive: sudo mount /dev/sdb3 ~/disk1
  • ##mount harddrive: sudo mount /dev/sda1 ~/disk1

##change /etc/fstab with:

  • sudo emacs /etc/fstab &
  • ##add line (change sda1 and atlas-itk2 when required)
  • /dev/sda1 /home/atlas-itk2/disk1 xfs rw,relatime,attr2,inode64,noquota 1 2

##check disk space:
  • df -H

Install ITSDAQ

https://twiki.cern.ch/twiki/bin/view/Atlas/StripsUpgradeDAQInstall

Prepare Network Card

##show network cards:
  • ip link show
  • or: ifconfig -a

  • atlas-itk:
    • MAC address of ethernet card:
    • 00:13:3B:10:29:3A (enp1s0)
  • atlas-itk2:
    • MAC address of ethernet card:
    • 00:13:3b:5a:1f:66 (enp2s0)

##set PC ethernet port for second network card:
  • ##use gui to do this (subnet 255.255.255.0)
  • sudo ifconfig enp1s0 192.168.222.10
  • sudo ifconfig enp2s0 192.168.222.10

Installation

#Dependencies
  • sudo yum install boost-devel

#Download software

#Linux install
  • python3 waf configure
  • python3 waf build
  • python3 waf install

or

  • python3 waf clean install

#create sctvar directory
  • mkdir/home/atlas-itk2/disk1/sctvar

##set environment variables for all users:
  • ##/etc/profile.d/itk-env.sh
  • ##- add new commands in this file (as sudo using emacs)
  • export SCTDAQ_ROOT=/home/atlas-itk2/disk1/itsdaq-sw
  • export SCTDAQ_VAR=/home/atlas-itk2/disk1/sctvar

Need to implement this and test

  • export ITSDAQ_LOCATION='Liverpool'
  • export BOOSTDIR=$BOOST__HOME/include

#create sub-directories in sctvar
  • mkdir /home/atlas-itk2/disk1/sctvar/config /home/atlas-itk2/disk1/sctvar/data /home/atlas-itk2/disk1/sctvar/etc /home/atlas-itk2/disk1/sctvar/ps /home/atlas-itk2/disk1/sctvar/results

#create desktop link to sctvar
  • ln -s $SCTDAQ_VAR /home/atlas-itk2/Desktop/sctvar

#copy old config files into new config directory in sctvar

#copy link to run to itsdaq onto desktop

#modify /home/atlas-itk2/disk1/itsdaq-sw/macros/parameters.h

ITSDAQ with Keithley

Following Instructions provided by Luise:

HV Supply

  • Connect Power supply to PC, it should now be visible in /dev/serial/by-id (e.g. usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0 from the usb-to-serial connector)
  • in 'itsdaq-sq/macros/Stavelet.cpp' ensure 'hvtype = -1' is set
  • Change Keithley menue to serial communication and set baud rate:
    • Keithley: Menu -> Communication -> RS232
    • Keithley: Menu -> Communication -> RS232 -> Baud -> 9600
  • settin up the communication (assuming the Keithley is connected to ttyUSB0
    • sudo chmod 666 /dev/ttyUSB0
    • sudo stty -F /dev/ttyUSB0 ispeed 9600 cs8 -cstopb -parenb -ixon
    • sudo stty -F /dev/ttyUSB0
      • -> check that buad really is 9600
  • set up 'power_supplies.json' in 'sctvar/config'
    • if file is not there, can copy a template from 'itsdaq-sw/config'
    • power_supplies.json: HV-Supply Json file
      • output defines which connectors are active: 0 for front, 1 for back

LV Supply

Alternative Instructions:

  • Keithley: RS232
  • TTI: USB Type B

Update ITSDAQ

  • cd $SCTDAQ_ROOT
  • git pull

#open parameters.h in /home/atlas-itk/disk1/itsdaq-sw change: #define DEFAULT_LOCATION_NAME "LIVERPOOL"

  • sudo yum install boost-devel

  • python3 waf configure #this step is not always necessary depending on what has changed
  • python3 waf install

ITSDAQ Issues

Full test crashes ITSDAQ

Caused by and issue in the GUI script that executes the full test

  • open itsdaq-sq/macros/STGUICommon.cpp
  • search for "ABCStarFullTest()"
  • change code:
    • from

#ifndef ITSDAQ_ROOT6_DEFINE
gROOT->ProcessLine(".L abc_star/StandardTests.cpp");
#else
loadmacro("abc_star/StandardTests");
#endif
gROOT->ProcessLine("ABCStarFullTest();");

    • to

loadmacro("abc_star/StandardTests");
gROOT->ProcessLine("ABCStarFullTest();");

IV Scans

Taking IV with ITSDAQ tutorial: https://indico.cern.ch/event/1084324/contributions/4558877/attachments/2332120/3974567/IVScaninningandUploadingTutorial.pdf

IV Procedure specification: https://edms.cern.ch/document/2647669

Check out a branch on an existing ITSDAQ installation:

or more explicitly

  • create an IV scan configuration file in itsdaq/config
    • Name: IVScanConfig.txt
    • Example: IVScanConfig.txt
    • Chane entries corresponding to tested object, they are printed to output file and are important for database upload

Name Value Comment
Type: ATLAS18R1 Sensor Name
Institute: LIV Institute Code
TestType: ATLAS18_IV_TEST_V1 CODE of test in DB
Vbias_SMU: Keithley 2410 High voltage supply
R_series: 14.3 MOhm Series resistor: 1 MOhm for bare sensor or module without powerboard, ... for module with powerboard
Test_DMM: none optional if a DMM is used for current measurement
Rshunt: 0.00 MOhm optional, if shunt resistor is used
Software type and version, fw version: ITSDAQ describe used software/hardware

For every test:

  • Set Powersuply limit to -700V if bare sensors are measured: HVSupplies[0]->SetLimit(-700);

* plotIV.cpp: updated file for IV test (should be merged to branch soon)

Carl's Database JSON Uploader and GUIs

Carl Gwilliam has written a python script to upload test results in JSON form to the ATLAS ITk production database. GUI interfaces have been written to use everything without prior python knowledge.

To run the scripts, install python 3.9 or newer on the PC from https://www.python.org/ (choosing to also install pip in the advanced settings)

In command line terminal (https://www.businessinsider.com/how-to-open-command-prompt?r=US&IR=T), enter
  • pip install itkdb
  • pip install Pillow

Unzip the files where you want your scripts to be stored.

Run the script main_interface.py (for windows, the PC should automatically run it with python

Packages can be updated by
  • pip install itkdb --upgrade
  • pip install Pillow --upgrade

Kenny's Streamlit Web App

Developed by Kenneth Gibb Wraight from the University of Glasgow, the streamlit web app creates a unser-friendly onlye application for interacting with the itk production database.

http://uk-itk-pdb-webapp-strips.web.cern.ch/

Implemented for strips: - uploading IV files - uploading pull test files

Useful Linux Tips

  • search for expression in files and show all files:
    • grep -Ril "Expression" ./
    • where './' is the path (and all recursive directories) that will be searched

-- SvenWonsak - 17 Nov 2021

Topic attachments
I Attachment Action Size Date Who Comment
2022-01-11_Scripts.zipzip 2022-01-11_Scripts.zip manage 96 K 11 Jan 2022 - 07:36 SvenWonsak Python Scripts
20USBXX9999999_MODULE_STAGE_IV_667.datdat 20USBXX9999999_MODULE_STAGE_IV_667.dat manage 934 bytes 09 Dec 2021 - 11:37 SvenWonsak Example File for Module IV Scan (without Powerboard)
ITSDAQ-HV_UK-Discussion.txttxt ITSDAQ-HV_UK-Discussion.txt manage 9 K 03 Dec 2021 - 09:13 SvenWonsak UK ITSDAQ HV with niVisa
IVScanConfig.txttxt IVScanConfig.txt manage 197 bytes 09 Dec 2021 - 11:15 SvenWonsak IV Scan Config File
Module_IV_HelpEXT Module_IV_Help manage 310 bytes 10 Dec 2021 - 10:37 SvenWonsak Help to fill out IV fields
Sensor_Batch_W00999_IV_666.datdat Sensor_Batch_W00999_IV_666.dat manage 845 bytes 09 Dec 2021 - 11:30 SvenWonsak Example File for Sensor IV Scan
how to read out power supplies through ITSDAQ.txttxt how to read out power supplies through ITSDAQ.txt manage 1 K 03 Dec 2021 - 09:08 SvenWonsak HV suppy ITSDAQ (Luise)
plotIV.cppcpp plotIV.cpp manage 7 K 09 Dec 2021 - 15:45 SvenWonsak updated file for IV test (should be merged to branch soon)
power_supplies.jsonjson power_supplies.json manage 168 bytes 03 Dec 2021 - 11:02 SvenWonsak HV-Supply Json file
Topic revision: r15 - 11 Jan 2022, SvenWonsak
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback