Skip to content

Connectivity file with single chip is assumed to be a quad module

The connectivity and chip config files are evidently found, as it loads the correct chip parameters (incl type and name), but list index is out of range / module is stated to be a quad, even though there is a single connectivity file pointing to a single chip config json file.

(venv) [pixadmin@kai Yarr]$ yarrtist plots plot-scan -c configs/connectivity/example_itkpixv2_setup.json -s data/000002_std_digitalscan -v DEBUG
Plotting module scan summary
Plotting for module 1
Module is a Quad
╭─────────────────────────────────────────── Traceback (most recent call last) ───────────────────────────────────────────╮
│ /home/pixadmin/Yarr/yarrtist/src/yarrtist/cli/plot_scan.py:400 in main                                                  │
│                                                                                                                         │
│   397 │   │   │   )                                                                                                     │
│   398 │   else:                                                                                                         │
│   399 │   │   log.info("Plotting module scan summary")                                                                  │
│ ❱ 400 │   │   module_summary(connectivity_files, scan_directory, "module_summary")                                      │
│   401 │   │   if config_summary:                                                                                        │
│   402 │   │   │   log.info("Plotting module config summary")                                                            │
│   403 │   │   │   module_config_summary(connectivity_files, scan_directory, "config_summary")                           │
│                                                                                                                         │
│ ╭───────────────────────────────────────────────── locals ─────────────────────────────────────────────────╮            │
│ │     config_summary = True                                                                                │            │
│ │ connectivity_files = [PosixPath('/home/pixadmin/Yarr/configs/connectivity/example_itkpixv2_setup.json')] │            │
│ │           per_chip = False                                                                               │            │
│ │     scan_directory = PosixPath('/home/pixadmin/Yarr/data/000002_std_digitalscan')                        │            │
│ │          verbosity = <LogLevel.debug: 'DEBUG'>                                                           │            │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────╯            │
│                                                                                                                         │
│ /home/pixadmin/Yarr/yarrtist/src/yarrtist/cli/plot_scan.py:72 in module_summary                                         │
│                                                                                                                         │
│    69 │   │   │   chip_data = load_data(f"{config_dir}/{chip}")                                                         │
│    70 │   │   │   geomId, name = get_geomId_sn_from_config(chip_data)                                                   │
│    71 │   │   │   ctype = get_chip_type_from_config(chip_data)                                                          │
│ ❱  72 │   │   │   ordered_chips[geomId - 1] = name                                                                      │
│    73 │   │   │   chip_types[geomId - 1] = ctype                                                                        │
│    74 │   │   log.debug(f"Ordered chips in module {ordered_chips}")                                                     │
│    75                                                                                                                   │
│                                                                                                                         │
│ ╭───────────────────────────────────────────────── locals ─────────────────────────────────────────────────╮            │
│ │               chip = '../itkpixv2_test.json'                                                             │            │
│ │          chip_data = {                                                                                   │            │
│ │                      │   'ITKPIXV2': {                                                                   │            │
│ │                      │   │   'GlobalConfig': {                                                           │            │
│ │                      │   │   │   'AiRegionRow': 0,                                                       │            │
│ │                      │   │   │   'AuroraActiveLanes': 1,                                                 │            │
│ │                      │   │   │   'AuroraAltOutput0': 0,                                                  │            │
│ │                      │   │   │   'AuroraAltOutput1': 0,                                                  │            │
│ │                      │   │   │   'AuroraCBSend': 0,                                                      │            │
│ │                      │   │   │   'AuroraCBWait0': 4095,                                                  │            │
│ │                      │   │   │   'AuroraCBWait1': 0,                                                     │            │
│ │                      │   │   │   'AuroraCCSend': 3,                                                      │            │
│ │                      │   │   │   'AuroraCCWait': 25,                                                     │            │
│ │                      │   │   │   'AuroraEnPrbs': 0,                                                      │            │
│ │                      │   │   │   ... +232                                                                │            │
│ │                      │   │   },                                                                          │            │
│ │                      │   │   'Parameter': {                                                              │            │
│ │                      │   │   │   'ADCcalPar': [5.89435, 0.192043, 4990.0],                               │            │
│ │                      │   │   │   'ChipId': 15,                                                           │            │
│ │                      │   │   │   'EnforceNameIdCheck': False,                                            │            │
│ │                      │   │   │   'InjCap': 7.5,                                                          │            │
│ │                      │   │   │   'IrefTrim': 15,                                                         │            │
│ │                      │   │   │   'KSenseInA': 21000.0,                                                   │            │
│ │                      │   │   │   'KSenseInD': 21000.0,                                                   │            │
│ │                      │   │   │   'KSenseShuntA': 26000.0,                                                │            │
│ │                      │   │   │   'KSenseShuntD': 26000.0,                                                │            │
│ │                      │   │   │   'KShuntA': 1000.0,                                                      │            │
│ │                      │   │   │   ... +7                                                                  │            │
│ │                      │   │   },                                                                          │            │
│ │                      │   │   'PixelConfig': [                                                            │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 0,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 1,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 2,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 3,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 4,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 5,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 6,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 7,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 8,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   {                                                                       │            │
│ │                      │   │   │   │   'Col': 9,                                                           │            │
│ │                      │   │   │   │   'Enable': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'Hitbus': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... +374],                 │            │
│ │                      │   │   │   │   'InjEn': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374],                  │            │
│ │                      │   │   │   │   'TDAC': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... +374]                    │            │
│ │                      │   │   │   },                                                                      │            │
│ │                      │   │   │   ... +390                                                                │            │
│ │                      │   │   ]                                                                           │            │
│ │                      │   }                                                                               │            │
│ │                      }                                                                                   │            │
│ │         chip_types = ['']                                                                                │            │
│ │         config_dir = PosixPath('/home/pixadmin/Yarr/configs/connectivity')                               │            │
│ │       connectivity = PosixPath('/home/pixadmin/Yarr/configs/connectivity/example_itkpixv2_setup.json')   │            │
│ │  connectivity_data = {                                                                                   │            │
│ │                      │   'chipType': 'ITKPIXV2',                                                         │            │
│ │                      │   'chips': [                                                                      │            │
│ │                      │   │   {                                                                           │            │
│ │                      │   │   │   'path': 'relToCon',                                                     │            │
│ │                      │   │   │   'config': '../itkpixv2_test.json',                                      │            │
│ │                      │   │   │   'tx': 0,                                                                │            │
│ │                      │   │   │   'rx': 0,                                                                │            │
│ │                      │   │   │   'enable': 1,                                                            │            │
│ │                      │   │   │   'locked': False                                                         │            │
│ │                      │   │   }                                                                           │            │
│ │                      │   ]                                                                               │            │
│ │                      }                                                                                   │            │
│ │ connectivity_files = [PosixPath('/home/pixadmin/Yarr/configs/connectivity/example_itkpixv2_setup.json')] │            │
│ │              ctype = 'ITKPIXV2'                                                                          │            │
│ │         files_list = []                                                                                  │            │
│ │             geomId = 4                                                                                   │            │
│ │                  i = 0                                                                                   │            │
│ │             images = []                                                                                  │            │
│ │             module = ['../itkpixv2_test.json']                                                           │            │
│ │        module_type = 'Quad'                                                                              │            │
│ │               name = '0x10164'                                                                           │            │
│ │      ordered_chips = ['']                                                                                │            │
│ │           scan_dir = PosixPath('/home/pixadmin/Yarr/data/000002_std_digitalscan')                        │            │
│ │      summary_title = 'module_summary'                                                                    │            │
│ │        tests_names = []                                                                                  │            │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────╯            │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
IndexError: list assignment index out of range
Edited by Giordon Holtsberg Stark