Grading GUI for CMS Tracker Phase2 Acquisition & Control Framework
Using docker is the easiest and most simple way to install and run this software. A compiled version of Ph2_ACF is included.
- Clone GUI repo
git clone --recurse-submodules https://github.com/OSU-CMS/Ph2_ACF_GUI.git
or pull the latest changes while inside the Ph2_ACF_GUI directory:
git pull --recurse-submodules
- Get the latest docker image:
docker pull majoyce2/ph2_acf_gui:latest
-
Specify device ports: In run_Docker.sh you need to update the devices in the "mydevicelist" to reflect the ports you will be using.
-
Start the docker container:
bash run_Docker.sh
- That's it! At this point the GUI should be open and ready to use.
This software has not been designed to work in a conda environment.
- Clone GUI repo
git clone --recurse-submodules https://github.com/OSU-CMS/Ph2_ACF_GUI.git
or pull the latest changes
git pull --recurse-submodules
- Go into Ph2_ACF_GUI directory and update submodules
git submodule update --init --recursive
- Install python packages
python3 -m pip install --upgrade pip
python3 -m pip install -r requirements.txt
- Compile submodules
source compileSubModules.sh
- Default settings are specified in the
Gui/siteSettings.py
file. This is where you set the default configurations for your system. This file does not exist on the repository, but instead there is aGui/siteSettings_template.py
file. Copy this file:
cp Gui/siteSettings_template.py Gui/siteSettings.py
and then edit it to match the settings needed at your site. If you are updating Ph2_ACF_GUI, then you should check the difference for any additions that are not site-specific:
vim -d Gui/siteSettings_template.py Gui/siteSettings.py
and then copy and paste whatever lines are needed to your Gui/siteSettings.py
file.
cd Gui
python3 QtApplication.py
On the login screen you can use either of the following usernames to log in locally (bypassing connection to the database).
For non-expert mode: username = local
For expert mode: username = localexpert
After logging in you will see status indicators for the database, HV, LV, FC7, Temp/Humidity. If you are running locally, then the database indicator will be red. If anything else is red you can click the "Refresh" button to attempt to reconnect all the devices. If you are ready to test a module you should:
- Either manually (on a keyboard) enter an module id into the appropriate box and press "enter" on the keyboard or scan a QR code with your scanner (if you have one).
- (Optional) Choose "Quick Test" if you don't want to run the full suite of tests.
- Click the green "Go" button to start the tests.
After logging in you will need to specify some hardware configurations.
- Choose FC7 by click the "Use" button next to the appropriate FC7.
- If you are using the Peltier control you should click "Start Peltier", enter you temperature setting, click "Set Temperature", click "Turn on Peltier".
- If you are using the default HV and LV configuration that you set in
Gui/siteSettings.py
, you can click "Connect all devices" to connect HV and LV devices as well as your Arduino device if you have that set up. Otherwise, you can select the port for each device from a list or uncheck the boxes next to them if you prefer to control them manually. - Clicking "New" will open a window for running a new test. You will choose which test(s) you would like to run and which type of module you are testing. You will also need to enter the Module serial number, FMC number, and Chip ID number in the provided fields. Once you've done that, you can choose the power mode (direct or SLDO) and click "Next". If you are manually controlling your HV and LV, a window will open asking if you want to continue. Click "Yes" to open a new window for running test.
- When the next window opens, click "Run" to begin the test(s).