Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
711 commits
Select commit Hold shift + click to select a range
7728356
Merge pull request #159 from UMN-CMS/UpdateREP
cros0400 Mar 25, 2025
c70e997
Updating wagon config with correct paths
Mar 25, 2025
098e4ea
Merge branch 'master' of github.com:UMN-CMS/HGCALTestGUI
Mar 25, 2025
e1a720c
Merge pull request #160 from UMN-CMS/UpdateREP
cros0400 Mar 25, 2025
8c81d96
Debugging REP Server update
Mar 25, 2025
512757c
Merge pull request #162 from UMN-CMS/UpdateREP
cros0400 Mar 25, 2025
63cd789
hopefully last fix for REP server
Mar 25, 2025
0590e52
Merge pull request #163 from UMN-CMS/UpdateREP
cros0400 Mar 25, 2025
d333e95
Merge pull request #164 from UMN-CMS/rand_dev
bovard-r Mar 25, 2025
1a9bb46
Automatically load teststand info on GUI start
bovard-r Mar 25, 2025
3bf8c8e
Merge pull request #165 from UMN-CMS/rand_dev
bovard-r Mar 25, 2025
a99da77
Experimental building of inspection GUI
Mar 27, 2025
7b9daae
Actually send comments when you say you will
bovard-r Mar 27, 2025
d73e4f3
Merge branch 'master' of github.com:UMN-CMS/HGCALTestGUI
bovard-r Mar 27, 2025
6ae05d9
Add path to tkinter search
Mar 27, 2025
da1aec3
Fix home dir
Mar 27, 2025
19fd79e
Change to $HOME
Mar 27, 2025
a829e11
Make desktop file executable
Mar 27, 2025
542b163
Fix Silly env var
Mar 27, 2025
7f6f6bd
Adding log rotation
Mar 27, 2025
76805a6
Fix vars
Mar 27, 2025
fd66c4d
Fix vars again
Mar 27, 2025
aaacad3
Fix vars for real
Mar 27, 2025
d1ee438
Fixed Issue with uploading test stand config
bovard-r Mar 28, 2025
3c3afbe
Merge pull request #166 from UMN-CMS/rand
bovard-r Mar 28, 2025
a0002e1
Deploying Photos
Mar 28, 2025
9fd943a
Update gui log path
Mar 28, 2025
c501809
Fix typo
Mar 28, 2025
6f44b55
Update for old Pillow version
Mar 28, 2025
121e8e3
Merge pull request #167 from UMN-CMS/deploy-other-guis
kapsiak Apr 1, 2025
4b37c35
Merge branch 'master' of github.com:UMN-CMS/HGCALTestGUI
bovard-r Apr 1, 2025
bdb766b
Merge pull request #168 from UMN-CMS/VICommentUpdate
cros0400 Apr 1, 2025
c72afcd
Fixed double add user
bovard-r Apr 2, 2025
4753d2c
Removing unneccesary location updates
bovard-r May 22, 2025
2de8ca0
Merge pull request #169 from UMN-CMS/rand_dev
bovard-r May 22, 2025
0b23ea5
Updated logging
bovard-r Jun 6, 2025
207fde0
Updated logging to include errors
bovard-r Jun 6, 2025
b9ae607
Overhauled logging for Main testing GUI
bovard-r Jun 6, 2025
38f658b
More robust image cropping
bovard-r Jun 9, 2025
f8e2975
More robust image cropping
bovard-r Jun 9, 2025
971d0ea
Updated logging for PhotoTakingGUI
bovard-r Jun 9, 2025
2971451
updated scanner logging
bovard-r Jun 9, 2025
a114ecc
Finished revamp of GUI logs
bovard-r Jun 12, 2025
b4f79fd
logging all uncaught errors correctly
bovard-r Jun 12, 2025
3ea1310
Removing vestigial files
bovard-r Jun 13, 2025
51357e9
Adding better keybindings
bovard-r Jun 17, 2025
ce0f69a
Added new keybindings
bovard-r Jun 18, 2025
59b643c
Removed dependance on LabelDB webpage
bovard-r Jun 18, 2025
ab9f424
Removed dependance on LabelDB webpage
bovard-r Jun 18, 2025
291fc9f
Improved debug messages and added error for VI test not uploaded
bovard-r Jun 19, 2025
82042a7
Improved debug messages and added error for VI test not uploaded
bovard-r Jun 19, 2025
325c44f
fixed bug
bovard-r Jun 20, 2025
4df5e9d
Merge pull request #176 from UMN-CMS/rand_dev
bovard-r Jun 20, 2025
559de0f
Hopefully last bug fix
bovard-r Jun 20, 2025
cb89f13
Removed test data feed from logs
bovard-r Jun 20, 2025
26d76f2
Merge pull request #177 from UMN-CMS/rand_dev
bovard-r Jun 20, 2025
6751d94
Fixed more info button on test summary
bovard-r Jun 24, 2025
1f4aa94
Fixed more info button on test summary
bovard-r Jul 2, 2025
747738f
fixed image submit bug
bovard-r Jul 7, 2025
c870e2d
fixed image submit bug
bovard-r Jul 7, 2025
2012bd9
Remove logging from exec
Jul 9, 2025
f21a2a3
Merge pull request #180 from UMN-CMS/update-logging
kapsiak Jul 9, 2025
d21f4c4
Added Mezz_cfg.yaml for Mezzanine GUI
Jul 17, 2025
67a4ee6
Added lpgbt setup and lpgbt ID test to Mezz_cfg.yaml
Jul 17, 2025
209715f
Created Thermal yaml; hard coded directories
gschindler17 Feb 14, 2025
d4c041c
Updates to Thermal_Cy_cfg
gschindler17 Feb 14, 2025
d10335e
ThermalTestConfigScene Creation
gschindler17 Feb 14, 2025
c2da607
Show TODO scenes
gschindler17 Feb 16, 2025
f4daad6
Layout 1 for ThermalTestConfigScene
gschindler17 Feb 18, 2025
4a757c3
Completed Skeleton of ThermalTestCheckResultsScene
gschindler17 Feb 19, 2025
a1a7aca
Thermal Begin Scene
gschindler17 Feb 19, 2025
cadc8bd
All Thermal Tester Scenes updated
gschindler17 Feb 21, 2025
949d456
New scene Functions
gschindler17 Feb 24, 2025
b3fc6a8
Formats according to Devin's comments
gschindler17 Feb 28, 2025
3244d4d
Coded entry to Thermal Tester GUI
gschindler17 Feb 28, 2025
046284a
Movement between scenes allowed v1
gschindler17 Feb 28, 2025
48da6bb
Removed "TODO" button
gschindler17 Feb 28, 2025
39ddab8
Tracing the dropdown for the engine (real-time feedback)
gschindler17 Mar 3, 2025
20e9647
Dynamic reading of checkboxes
gschindler17 Mar 3, 2025
cbfd46a
return_setup_check_results
gschindler17 Mar 3, 2025
0e77a7b
Boolean adjustments
gschindler17 Mar 3, 2025
04ddb00
Listed to-do's as "# TODO"
gschindler17 Mar 3, 2025
e776af7
small bug fixes
gschindler17 Mar 3, 2025
a60eefa
timer resets to 2 hours when raised
gschindler17 Mar 3, 2025
29b3f1a
removed comments
gschindler17 Mar 3, 2025
83262d4
Removed hardcoding in ComponentScanScene.py
gschindler17 Mar 10, 2025
b57e1c9
Console display version 1.0
gschindler17 Mar 10, 2025
13cab2f
Console v1.1 (cleaner GUIWindow creation)
gschindler17 Mar 10, 2025
a0c7fda
Understanding the SUBClient v0.0
gschindler17 Mar 12, 2025
1533e87
Install ThermalREQClient.py v0.1
gschindler17 Mar 12, 2025
1753a87
Install ThermalREQClient.py v0.2
gschindler17 Mar 12, 2025
9188d25
Adjusting for ThermalREQClient
gschindler17 Mar 19, 2025
16b6ffe
Update ThermalTestConfigScene.py
gschindler17 Mar 19, 2025
b7265ba
Sending to Thermal ZMQ
gschindler17 Mar 19, 2025
372162d
Commenting out old functions
gschindler17 Mar 21, 2025
4b671bf
Demo file in config
gschindler17 Mar 21, 2025
7d8b6c4
Updating the config
gschindler17 Mar 21, 2025
39ba97a
IP Address Configuration
joegehrke Mar 21, 2025
2c5b012
Implementing on thermal test stand.
joegehrke Mar 21, 2025
fd00db6
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
ee6a33e
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
35bb909
Updated naming scheme
gschindler17 Mar 21, 2025
46bd69e
Fixed to adjustment_vars
gschindler17 Mar 21, 2025
30dcb93
Updating naming scheme
gschindler17 Mar 21, 2025
6ca2cbb
changing order
gschindler17 Mar 21, 2025
683e5c0
Reformatting string sent message
gschindler17 Mar 21, 2025
7c7dea5
remove print statement
gschindler17 Mar 21, 2025
d2c2f82
Update sending style
gschindler17 Mar 21, 2025
cf743f9
naming scheme
gschindler17 Mar 21, 2025
0695fba
SUBClient interfacing with Thermal GUI
gschindler17 Mar 21, 2025
7d1374d
Updates to pulling subclient
gschindler17 Mar 21, 2025
ed2d0cc
changing the order
gschindler17 Mar 21, 2025
b50d54d
conn.receive
gschindler17 Mar 21, 2025
86989d3
Sending information print statements
gschindler17 Mar 21, 2025
31e2557
updating the order of begin_update
gschindler17 Mar 21, 2025
c0c54a0
conn_trigger fix
gschindler17 Mar 21, 2025
87d524c
Updating orderings
gschindler17 Mar 21, 2025
87235fe
Fixing comments
gschindler17 Mar 21, 2025
13e1cf1
remove error
gschindler17 Mar 21, 2025
4af4376
prior to assignment
gschindler17 Mar 21, 2025
5b476b3
testing print statments
gschindler17 Mar 21, 2025
83f9a4e
no more conn
gschindler17 Mar 21, 2025
e826ed9
new technique
gschindler17 Mar 21, 2025
6edb6c7
print statement updates
gschindler17 Mar 21, 2025
c37e7c0
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
b12ec91
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
b332529
indent fixed
gschindler17 Mar 21, 2025
10ade80
try except
gschindler17 Mar 21, 2025
21ac854
pass
gschindler17 Mar 21, 2025
c50864a
return False
gschindler17 Mar 21, 2025
3d57a51
moved print statements
gschindler17 Mar 21, 2025
d9291ff
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
f541670
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
d968814
xcreated
gschindler17 Mar 21, 2025
eb12b78
Update
gschindler17 Mar 21, 2025
4674869
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
cef2300
fix
gschindler17 Mar 21, 2025
df0d99c
Update ThermalTestInProgressScene.py
gschindler17 Mar 21, 2025
5b51e59
Update ThermalTestConfigScene.py
gschindler17 Mar 21, 2025
96f0a3c
Update ThermalTestConfigScene.py
gschindler17 Mar 21, 2025
4e55936
sys
gschindler17 Mar 21, 2025
908ba09
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
0d38b76
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 21, 2025
7f8a9ca
Update ThermalTestConfigScene.py
gschindler17 Mar 21, 2025
1c648aa
Update for debugging...
gschindler17 Mar 26, 2025
0055f42
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 26, 2025
4b45b19
more print statemnts
gschindler17 Mar 26, 2025
e1dde8f
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 31, 2025
74ca96a
Update ThermalTestSetupResultsScene.py
gschindler17 Mar 31, 2025
352efab
sys.stdout commented out
gschindler17 Apr 5, 2025
98cc64b
while loop statment
gschindler17 Apr 5, 2025
07b22cd
subclient print outs
gschindler17 Apr 5, 2025
0123fca
location of prints
gschindler17 Apr 5, 2025
2424a83
clear prints
gschindler17 Apr 5, 2025
59119e3
print out signal
gschindler17 Apr 5, 2025
cebf049
results received successfully change
gschindler17 Apr 5, 2025
181185c
conn variable name change
gschindler17 Apr 5, 2025
3a14185
passing conn into ThermalTestSetupResultsScene
gschindler17 Apr 5, 2025
5662eb0
results formatted in JSON in GUI
gschindler17 Apr 5, 2025
22c2626
results formatted in JSON from GUI
gschindler17 Apr 5, 2025
033e3da
Update the GUI with results
gschindler17 Apr 5, 2025
1baff90
changing where states are initialized (outside of loop)
gschindler17 Apr 5, 2025
f60e707
changed ordering in ThermalTestConfigScene
gschindler17 Apr 14, 2025
e3db9ed
reverted order of TestConfigScene
gschindler17 Apr 14, 2025
084546c
counter to break while loop after 5 seconds
gschindler17 Apr 14, 2025
8ba73b4
5 seconds counter (fixed)
gschindler17 Apr 14, 2025
336901e
Update ThermalTestSetupResultsScene.py
gschindler17 Apr 14, 2025
b9995ec
error handling
gschindler17 Apr 14, 2025
4b3d5da
Change thermal ordering when calling scene
gschindler17 Apr 14, 2025
3cb4bdb
remove counter print
gschindler17 Apr 14, 2025
6aca2c2
Updated readme
gschindler17 May 19, 2025
abb3ff3
committing
AndrewOlsen335 Jun 23, 2025
9a4a9a1
updated thermalsetupresults, now works
AndrewOlsen335 Jun 23, 2025
60cac88
a few tweaks made with Joe
AndrewOlsen335 Jun 24, 2025
e84ba52
changed scenes to be more updated for thermal test
AndrewOlsen335 Jun 26, 2025
b326733
all scenes up to thermaltestinprogess complete
AndrewOlsen335 Jul 1, 2025
aee7c82
small tweaks to scenes
AndrewOlsen335 Jul 1, 2025
6f17529
added pop ups to confirm early test ending or confirm green light is …
AndrewOlsen335 Jul 1, 2025
b4eed78
red timer now
AndrewOlsen335 Jul 1, 2025
c71b6c7
removed scrollbar for thermalGUI
AndrewOlsen335 Jul 1, 2025
5fdf53a
keeping scrollbar after all
AndrewOlsen335 Jul 3, 2025
d839fd5
Scrollbar, TestSummary, and ScanBoards removed from lefthand side onl…
AndrewOlsen335 Jul 3, 2025
f7f1cfb
Added confirm logout popups for each thermal scene.
AndrewOlsen335 Jul 3, 2025
6369292
commiting changes that track ready channels to be refrenced by Therma…
AndrewOlsen335 Jul 8, 2025
ebe6d71
changed config channel layout to be 4 rows by 5 columns
AndrewOlsen335 Jul 8, 2025
7522b27
Add files via upload
AndrewOlsen335 Jul 8, 2025
10f5ad0
Fixed recheck creating new tests
Jul 15, 2025
3213634
Added popups to scenes for user convenience
AndrewOlsen335 Jul 15, 2025
482bb62
Final results page now works
AndrewOlsen335 Jul 15, 2025
ccdaa5d
added new case scenarios for fullID check
AndrewOlsen335 Jul 17, 2025
f8893b0
Update ThermalTestSetupResults, cleanup unnecessary code
AndrewOlsen335 Jul 18, 2025
71c9171
Update ThermalTestBeginScene.py, Ensure master switch is turned on me…
AndrewOlsen335 Jul 18, 2025
8c3da82
SetupResults now has results and recheck boxes in 4x5 orientation
AndrewOlsen335 Jul 21, 2025
4a4c164
Added failure number display to setup results
AndrewOlsen335 Jul 21, 2025
4ed4efe
Hiding Buttons on left side that won't be implemented for ThermalCycler
AndrewOlsen335 Jul 24, 2025
548b3d4
hide admit button
AndrewOlsen335 Jul 24, 2025
8996a85
Autopopulate manufacturer
bovard-r Jul 14, 2025
9d8063d
Fixed two photo GUI bugs
bovard-r Jul 22, 2025
3862ba1
Removed test output from logs
bovard-r Jul 22, 2025
ceff3c0
Updated engine batch file
bovard-r Jul 25, 2025
2b4ddfd
added functionality to check in lpGBT mezzanines and flex cables
bovard-r Jul 25, 2025
88f35c2
Adding lpGBT Mezz to photo gui
bovard-r Jul 28, 2025
d07cb09
Update GUIWindow.py
bovard-r Jul 29, 2025
fcec7af
Update GUIWindow.py
bovard-r Jul 29, 2025
d462c21
Update GUIWindow.py
bovard-r Jul 29, 2025
5193987
Update GUIWindow.py
bovard-r Jul 29, 2025
7b9cf7b
Update GUIWindow.py
bovard-r Jul 29, 2025
8d9b275
Update ScanScene.py
bovard-r Jul 29, 2025
bd97b64
Update SUBClient.py
bovard-r Jul 29, 2025
2faa402
Update SUBClient.py
bovard-r Jul 29, 2025
cced3d2
Update __main__.py
bovard-r Jul 29, 2025
6751ac9
Update __main__.py
bovard-r Jul 29, 2025
7069115
Add config to spec
Jul 30, 2025
7dce8f3
Added scintillator cables
bovard-r Aug 1, 2025
24c6255
Updated flex cfg
bovard-r Aug 1, 2025
b4d001b
Restored flex cable testing
Aug 1, 2025
d9b54df
Update gui.spec
kapsiak Aug 6, 2025
56d29bb
Update Flex_cfg.yaml
kapsiak Aug 6, 2025
975dac0
Fix database issues causing crashes
joegehrke Aug 7, 2025
d021550
Cleaned up thermal cycler gui logging
bovard-r Aug 8, 2025
e4ca9cb
Fixed photo taking for zippers
bovard-r Aug 20, 2025
4b8d86a
Update for zippers
Aug 22, 2025
5ba2576
Fix in progress crashing, make begin scene exit GUI
joegehrke Aug 28, 2025
ca6bee1
Fixed close after start, cleaned up results display
joegehrke Aug 28, 2025
5261224
Updated button description text
joegehrke Aug 28, 2025
71291c8
Fix spacing on legend
joegehrke Aug 28, 2025
82e82e2
Update Engine_batches.yaml
kapsiak Sep 18, 2025
d394364
Adding 4 module wagon config
Sep 26, 2025
9095a14
Reduce SetupResults spacing
joegehrke Sep 26, 2025
2f5a355
Rename file
Oct 3, 2025
73f77a6
Update Engine Manufacturer For Batch 2
kapsiak Nov 13, 2025
f7f552a
Add TTM-Piranha to EL10E and EL10W batches
kapsiak Nov 21, 2025
38e67f7
Update hd wagon config
Jan 6, 2026
425f4ed
Fix 4 mod
Feb 5, 2026
7b541e4
Add Mod4 Reset test configuration
kapsiak Mar 5, 2026
cdd527a
Update engine batches
kapsiak Mar 10, 2026
0e87ccb
Add Sunshine-Evotronics entries to HD_Wagon_batches.yaml
kapsiak Mar 11, 2026
d315f69
Adding comment when failing visual inspection due to no LDO
bovard-r Mar 12, 2026
c51a885
Mezzanine Config
Mar 13, 2026
521345e
MezzTests
Mar 19, 2026
faeecec
Update gui.spec
kapsiak Mar 24, 2026
471cbaa
Update Engine_batches.yaml
nstrobbe Mar 25, 2026
1808729
Update update_config.py
nstrobbe Mar 25, 2026
5be0a68
Refactor condition for board configuration selection
kapsiak Mar 25, 2026
020d0d2
Update barcode check for mezz
kapsiak Mar 25, 2026
7531a87
Refactor condition for Mezz configuration type
kapsiak Mar 26, 2026
b0c0909
rpm build for checking
Apr 3, 2026
48d3804
Update JSON file paths to use home directory
kapsiak Apr 6, 2026
ac5fef8
Use GUI_NAME variable for desktop entry name
kapsiak Apr 9, 2026
588bd59
IDK_maybe_fixes
Apr 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
PythonFiles/Scanner/bin/runScanner
/__pycache__
/PREV-VERSION/__pycache__
/virtualenvironment
Expand All @@ -12,3 +13,4 @@ __pycache__/
*.o
*.log
*.json
GUILogs/*
84 changes: 84 additions & 0 deletions CheckInGUI/Configs/Demo_Local_cfg.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
---

# Specify which board you want to test here
GUIType: Demo

# Specify if a scanner is used for barcodes
UsingScanner: false

# How the tests will be run (local, ssh, or ZMQ)
# Uncomment the test handler which you would like to use
#
# Note that for SSH, the username and hostname must be specified.
# It is assumed that you have set up SSH key access for this username
# On the specified host.
#
# ZMQ will use the built-in request server and client.
# The IP address of the GUI node and testing node must be specified separately
# Additionally, SSH key access removes the need to start the server
# on the tester by hand. Path and server file name needed for remote
# server start up
#
TestHandler: {name: Local, remoteip: localhost}
#TestHandler: {name: SSH, username: <username>, hostname: <hostname>, remoteip: <remoteip>}
#TestHandler: {name: ZMQ, localip: <localip>, remoteip: <remoteip>, username: <username>, serverpath: <serverpath>, serverscript: <serverscript>}


# Let the GUI know if you want to check serial numbers for multiple board types at a single testing location
SerialCheckSafe: false

# Order of tests matters here
# This should be the same order that you want the tests to be run in
# Number of test will also be decided by this list so don't miss any
# TestClass, TestScript, and TestPath fields will be used to write the REPserver script
# TestPath should be in reference to the testing home directory
Test:
- name: Counting
required: true
desc_short: Count to ten
desc_long: Simple for loop with waits to simulate a tests running locally
TestClass: counting
TestPath: Tests
TestScript: demo_count.py
- name: Counting
required: true
desc_short: Count to ten
desc_long: Simple for loop with waits to simulate a tests running locally
TestClass: counting
TestPath: Tests
TestScript: demo_count.py

########################################
# NOTE TO SELF: Add in test sequence as #
# a separate entry in config #
# All tests in one area, not physical #
# vs. automatic and add a test type #
# #
########################################


# Tests which require a physical measurement
# The pass fail criteria for these tests are specified here
PhysicalTest:
- name: SAMPLE test
required: true
desc_short: Some short description of the test
desc_long: Long description of the test
criteria:
- first testing criteria
- second testing criteria
- third testing criteria

#################################
# REMOVE FOR DEMO #
#################################

# Information for sending and receiving data to/from the database
# Needs to be different based on board type
DBInfo:
use_database: false
name: WagonDB
reader: WagonDBReadUser
inserter: WagonDBInserter
baseURL: "http://cmslab3.spa.umn.edu/~cros0400/cgi-bin/WagonDB"
...
71 changes: 71 additions & 0 deletions CheckInGUI/Configs/Demo_SSH_cfg.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
#-----------------------------------------------
# Note: Demo will not work out of the box
# Need to follow installation procedure in
# README.md
#-----------------------------------------------

# Specify which board you want to test here
# this doesn't actually matter much, the GUI type will update based on the board type entered in scan scene
GUIType: Demo

# Specify if a scanner is used for barcodes
UsingScanner: false

# How the tests will be run (local, ssh, or ZMQ)
# Uncomment the test handler which you would like to use
#
# Note that for SSH, the username and hostname must be specified.
# It is assumed that you have set up SSH key access for this username on the specified host.
#
# ZMQ will use the built-in request server and client.
# The IP address of the GUI node and testing node must be specified separately
# Additionally, SSH key access removes the need to start the server
# on the tester by hand. Path and server file name needed for remote
# server start up
#TestHandler: {name: Local, remoteip: localhost}
TestHandler: {name: SSH, username: bovar008, hostname: cmsfactory2, remoteip: <remoteip>}
#TestHandler: {name: ZMQ, localip: <localip>, remoteip: <remoteip>, username: <username>, serverpath: <serverpath>, serverscript: <serverscript>}

# Let the GUI know if you want to check serial numbers for multiple board types at a single testing location
SerialCheckSafe: false

# Order of tests matters here
# This should be the same order that you want the tests to be run in
# Number of test will also be decided by this list so don't miss any
# TestPath and TestScript aren't used in SSH
# TestCommand field is the command run in SSH, -u is needed for realtime output from a python script
# TestPath should be in reference to the testing home directory
Test:
- name: Counting
required: true
desc_short: Count to ten
desc_long: Simple for loop with waits to simulate a tests running locally
TestClass: counting
TestPath: Tests
TestScript: demo_count.py
TestCommand: python3 -u HGCALTestGUI/Tests/demo_count.py
TestConfig: HGCALTestGUI/Tests/test_configs/counting.yaml

# Tests which require a physical measurement
# The pass fail criteria for these tests are specified here
PhysicalTest:
- name: SAMPLE test
required: true
desc_short: Some short description of the test
desc_long: Long description of the test
criteria:
- first testing criteria
- second testing criteria
- third testing criteria


# Information for sending and receiving data to/from the database
# Needs to be different based on board type
DBInfo:
use_database: false
name: WagonDB
reader: WagonDBReadUser
inserter: WagonDBInserter
baseURL: "http://cmslab3.spa.umn.edu/~cros0400/cgi-bin/WagonDB"
...
223 changes: 223 additions & 0 deletions CheckInGUI/Configs/Engine_cfg.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,223 @@
base_path = "/home/HGCAL_dev/test_scripts"

from dumpToYaml import dump_to_yaml

masterCfg = {

"GUIType": "Engine",

"UsingScanner": True,


# Order of tests matters here
# This should be the same order that you want the tests to be run in
# Number of test will also be decide by this list so don't miss any
"Test": [
{
"name": "Power-Ground Resistance",
"required": 1,
"desc_short": "Measure resistance between power and ground",
"desc_long": "Check that the power and grounds are not shorted at the terminal, or between the inputs.",
"TestClass" : "TestPowerGround",
},
{
"name": "1.5V Input Check",
"required": 1,
"desc_short": "Check that the 1.5V input is not shorted.",
"desc_long": "Check that resistance between across C906 or C908 is non-zero.",
"TestClass" : "Test1.5VInput",
},
{
"name": "10V Input Check",
"required": 1,
"desc_short": "Check that the 10V input is not shorted.",
"desc_long": "Check that resistance between across C907 or C909 is non-zero.",
"TestClass" : "Test10VInput",
},
{
"name": "1.2V Output Check",
"required": 1,
"desc_short": "Check that the 1.2V output is not shorted.",
"desc_long": "Check that resistance between across C904 or C904 or TP901 is non-zero.",
"TestClass" : "Test1.2VOutput",
},
{
"name": "RX 2.5V Output Check",
"required": 1,
"desc_short": "Check that the RX 2.5V output is not shorted.",
"desc_long": "Check that resistance across C902 is non-zero.",
"TestClass" : "TestRX2.5VOutput",
},
{
"name": "TX 2.5V Output Check",
"required": 1,
"desc_short": "Check that the TX 2.5V output is not shorted.",
"desc_long": "Check that resistance across either C903 or TP902 is non-zero.",
"TestClass" : "TestTX2.5VOutput",
},
# Power on Tests
{
"name": "LDO Output",
"required": 1,
"desc_short": "Check that the LDO output voltage is around 1.2V",
"desc_long": "Measure the votlage across either R911 or TP901 and verify that it is appropriate.",
"TestClass" : "TestLDOOutput",
},
{
"name": "LinPol RX Check",
"required": 1,
"desc_short": "Check that the RX voltage from the linppol is operating correctly",
"desc_long": "Check that voltages across either R905 or R902 is 2.5V.",
"TestClass" : "TestLinPolRX",
},
{
"name": "LinPol TX Check",
"required": 1,
"desc_short": "Check that the TX voltage from the linppol is operating correctly",
"desc_long": "Measure the voltage across either TP902 or R906 or C903 is 2.5V.",
"TestClass" : "TestLinPolTX",
},

#Operations Tests
{
"name": "X_PWR",
"required": 1,
"desc_short": "Check the the X_PWR voltage is correct.",
"desc_long": "Measure using the tester, and should find approximately 1.2V.",
"TestClass" : "TestXPWR",
},
{
"name": "lpGBT setup",
"required": 1,
"desc_short": "Ensure setup can be performed",
"desc_long": "Perform nominal setup from BE. Do setup, link trick, setup. Check PUSMStatus (0x1d9) reports READY (0x13) for all 3 lpGBTs. Check lpGBTs locked to BE All 3 RX equal within 200 Hz. Check All 3 RX-DV equal within 200 Hz",
"TestClass" : "TestlpGBTsetup",
},
{
"name": "EClock Rates",
"required": 1,
"desc_short": "Ensure EClock rates are correct",
"desc_long": "Check that all EClocks are running at 320MHz.",
"TestClass" : "TestEClock",
},
{
"name": "lpGBT IC/EC communication",
"required": 1,
"desc_short": "Check operability of lpGBT IC/EC communication",
"desc_long": "Read and write to lpBGT registers via ICEC. Check DAQ lpGBT read of registers via IC. Check Trigger lpGBTs: successful read registers via EC. Ensure write and readback to user ID registers (0x004 - 0x007)",
"TestClass" : "TestlpGBTcom",
},
{
"name": "I2C",
"required": 1,
"desc_short": "Engine can use I2C master",
"desc_long": "Check that engine can communicate as an I2C master",
#"TestScript": "engine_test_suite.py",
"TestClass" : "TestI2C",

},
{
"name": "GPIO functionality",
"required": 1,
"desc_short": "Check the quality of the GPIOs",
"desc_long": "Read and write to all GPIO channels and verify levels. Write nominal configuration and then toggle each line one-by-one and verify change in both lpGBT status and voltage level",
"TestClass" : "TestGpio"
},
{
"name": "ADC functionality",
"required": 1,
"desc_short": "Check quality of the ADCs",
"desc_long": "Measure known voltages/resistances. Check measured values for all 4 gains within tolerances, (only need to do all 4 gains for one measurement).",
"TestClass" : "TestAdc"
},
{
"name": "Uplink quality",
"required": 1,
"desc_short": "Check the quality of the uplinks",
"desc_long": "PRBS validation from lpGBTs. Check bit error rate below threshold.",
"TestClass" : "TestUplink"
},
{
"name": "Downlink quality",
"required": 1,
"desc_short": "Check the quality of the downlinks",
"desc_long": "Eye opening test. Check eye opening width and height below threshold.",
"TestClass" : "TestDownlink",
},
{
"name": "Fast Command quality",
"required": 1,
"desc_short": "Check the quality of the Fast Command path",
"desc_long": "PRBS validation from and back to ZCU. Check bit error rate below threshold.",
"TestClass" : "TestFC"
},
{
"name": "Elink quality",
"required": 1,
"desc_short": "Check the quality of the elinks",
"desc_long": "PRBS validation from and back to ZCU. Check bit error rate below threshold.",
"TestClass" : "TestElinkUp"
},
{
"name": "Crossover link quality",
"required": 1,
"desc_short": "Check the quality of the crossover links",
"desc_long": "PRBS validation from and back to ZCU. Check bit error rate below threshold.",
"TestClass" : "TestCrossover",
},
],


"PhysicalTest": [
#{
# "name": "SAMPLE test",
# "required": 1,
# "desc_short": "Some short description",
# "desc_long": "Really long description for later purposes.",
# "criteria": {
# "first testing criteria",
# "second testing criteria",
# "third testing criteria",
# },

#},

],

"Board_type": [
{
"name": "Engine V3 Right",
"type_sn": "100300",
"requiredTests": [0, 1, 2, 3, 4],
},
{
"name": "Engine V3 Left",
"type_sn": "100310",
"requiredTests": [0, 1, 2, 3, 4],
},
],
# People who you would like to add as testers by default
# HGCAL_dev can be used for debug testing in the beginning
# The GUI will require everyone to have their own "account"
"People": [
"Nadja",
"Charlie",
"Bryan",
"Devin",
"HGCAL_dev",
],
# Information for sending and receiving data to/from the database
# Needs to be different based on board type
"DBInfo": {
"use_database": True,
"name": "EngineDB",
"reader": "EngineDBReadUser",
"inserter": "EngineDBInserter",
"admin": "EngineDBInserter",
"baseURL": "http://cmslab3.spa.umn.edu/~cros0400/cgi-bin/EngineDB",
},
}

masterCfg["Test"] = [dict(**x, TestPath=base_path, TestScript= "engine_test_suite.py") for x in masterCfg["Test"] if "TestClass" in x]

dump_to_yaml(masterCfg)
Loading