module-qc-tools 2.7.1__tar.gz → 2.9.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/.pre-commit-config.yaml +4 -3
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/.zenodo.json +3 -3
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/CITATION.cff +2 -2
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/PKG-INFO +5 -5
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/README.md +1 -1
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/config.md +44 -13
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/history.md +48 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/install.md +2 -2
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/measurements.md +94 -25
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/pyproject.toml +10 -3
- module_qc_tools-2.9.0/src/module_qc_tools/_version.py +24 -0
- module_qc_tools-2.9.0/src/module_qc_tools/cli/HVGROUP_IV_MEASURE.py +303 -0
- module_qc_tools-2.9.0/src/module_qc_tools/cli/THERMAL_PERFORMANCE.py +226 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/globals.py +17 -4
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/hardware_emulator.py +54 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/main.py +4 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_emulator_merged_vmux.json +28 -0
- module_qc_tools-2.9.0/src/module_qc_tools/data/configs/hw_config_example_lls_qc_itkpixv2.json +80 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_merged_vmux_itkpixv2.json +14 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_merged_vmux_v1.json +14 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/meas_config.json +14 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/schema/meas_config.json +55 -1
- module_qc_tools-2.9.0/src/module_qc_tools/measurements/hvgroup_iv_measure.py +340 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/iv_measure.py +36 -24
- module_qc_tools-2.9.0/src/module_qc_tools/measurements/thermal_performance.py +218 -0
- module_qc_tools-2.9.0/src/module_qc_tools/utils/cellqc_box.py +70 -0
- module_qc_tools-2.9.0/src/module_qc_tools/utils/lls_interlock.py +30 -0
- module_qc_tools-2.9.0/src/module_qc_tools/utils/mops.py +51 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/power_supply.py +38 -15
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/yarr.py +2 -2
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tbump.toml +2 -2
- module_qc_tools-2.9.0/tests/test_emulator/lls_connectivity_OB_preprod_longeron_M6.json +400 -0
- module_qc_tools-2.9.0/tests/test_emulator/module_configs/20UPGM22601146/20UPGM22601146_info.json +9 -0
- module_qc_tools-2.9.0/tests/test_emulator/module_configs/20UPGM22601158/20UPGM22601158_info.json +9 -0
- module_qc_tools-2.9.0/tests/test_emulator/module_configs/20UPGM22601160/20UPGM22601160_info.json +9 -0
- module_qc_tools-2.9.0/tests/test_emulator/module_configs/20UPGM22601171/20UPGM22601171_info.json +9 -0
- module_qc_tools-2.9.0/tests/test_emulator/module_configs/20UPGM22601181/20UPGM22601181_info.json +9 -0
- module_qc_tools-2.9.0/tests/test_emulator/module_configs/20UPGM22601182/20UPGM22601182_info.json +9 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tests/test_emulator.py +34 -0
- module_qc_tools-2.7.1/src/module_qc_tools/_version.py +0 -34
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/.gitattributes +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/.gitignore +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/.gitlab-ci.yml +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/.gitmodules +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/.linkcheckerrc +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/LICENSE +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/.gitkeep +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/.overrides/main.html +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/.snippets/abbrs.txt +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/.snippets/links.txt +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/assets/css/custom.css +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/development.md +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/emulator.md +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/index.md +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/meta/authors.md +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/reference/cli.md +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/reference/gen_ref_nav.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOkCnqEu92Fr1Mu51xIIzI.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmSU5fBBc4.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmWUlfBBc4.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOmCnqEu92Fr1Mu4mxK.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOmCnqEu92Fr1Mu72xKOzY.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2 +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/fonts.css +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/docs/stylesheets/readme.txt +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/mkdocs.yml +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/__init__.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/ADC_CALIBRATION.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/ANALOG_READBACK.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/DATA_TRANSMISSION.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/INJECTION_CAPACITANCE.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/IV_MEASURE.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/LONG_TERM_STABILITY_DCS.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/LP_MODE.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/OVERVOLTAGE_PROTECTION.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/SLDO.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/UNDERSHUNT_PROTECTION.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/VCAL_CALIBRATION.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/__init__.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/__main__.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/get_nominal_current.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/split_old_config.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/upload_localdb.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/cli/yarr.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/console.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_felix_merged_vmux_itkpixv2.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_felix_merged_vmux_v1.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_felix_separate_vmux_itkpixv2.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_felix_separate_vmux_v1.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_separate_vmux_itkpixv2.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/configs/hw_config_example_separate_vmux_v1.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/connectivity/20UPGXM1234567_Lx_dummy.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/connectivity/20UPGXM1234567_Lx_dummy_disabledchip.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/connectivity/20UPGXM1234567_info.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/connectivity/chip/dummy_chip1.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/connectivity/chip/dummy_chip2.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/connectivity/chip/dummy_chip3.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/connectivity/chip/dummy_chip4.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/configs/controller/specCfg-rd53b.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/data/emulator/module_state_template.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/__init__.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/adc_calibration.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/analog_readback.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/data_transmission.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/injection_capacitance.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/long_term_stability_dcs.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/lp_mode.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/overvoltage_protection.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/sldo.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/undershunt_protection.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/measurements/vcal_calibration.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/typing_compat.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/__init__.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/hardware_control_base.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/hrc.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/misc.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/multimeter.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/ntc.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/src/module_qc_tools/utils/subprocess_emulator.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tests/conftest.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tests/test_measurements.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tests/test_package.py +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tests/test_schema/cutter_pcb_tab.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tests/test_schema/cutter_pcb_tab_BAD.json +0 -0
- {module_qc_tools-2.7.1 → module_qc_tools-2.9.0}/tests/test_schema.py +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
ci:
|
|
2
2
|
autoupdate_commit_msg: "chore: update pre-commit hooks"
|
|
3
3
|
autofix_commit_msg: "style: pre-commit fixes"
|
|
4
|
+
autoupdate_schedule: "monthly"
|
|
4
5
|
|
|
5
6
|
repos:
|
|
6
7
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
@@ -43,7 +44,7 @@ repos:
|
|
|
43
44
|
additional_dependencies: [black==22.3.0]
|
|
44
45
|
|
|
45
46
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
46
|
-
rev: v0.14.
|
|
47
|
+
rev: v0.14.13
|
|
47
48
|
hooks:
|
|
48
49
|
- id: ruff-check
|
|
49
50
|
args: ["--fix", "--show-fixes"]
|
|
@@ -57,7 +58,7 @@ repos:
|
|
|
57
58
|
- id: rst-inline-touching-normal
|
|
58
59
|
|
|
59
60
|
- repo: https://github.com/rbubley/mirrors-prettier
|
|
60
|
-
rev: "v3.
|
|
61
|
+
rev: "v3.8.0"
|
|
61
62
|
hooks:
|
|
62
63
|
- id: prettier
|
|
63
64
|
types_or: [yaml, markdown, html, css, scss, javascript] #, json]
|
|
@@ -96,7 +97,7 @@ repos:
|
|
|
96
97
|
# additional_dependencies: ["repo-review[cli]"]
|
|
97
98
|
|
|
98
99
|
- repo: https://github.com/asottile/pyupgrade
|
|
99
|
-
rev: v3.21.
|
|
100
|
+
rev: v3.21.2
|
|
100
101
|
hooks:
|
|
101
102
|
- id: pyupgrade
|
|
102
103
|
args: ["--py38-plus"]
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"description": " general python tool for running ITkPixV1.1 and ITkPixV2 module QC tests for the ATLAS ITk project",
|
|
3
3
|
"license": "MIT",
|
|
4
|
-
"title": "atlas-itk-pixel-modules/mqt: v2.
|
|
5
|
-
"version": "v2.
|
|
4
|
+
"title": "atlas-itk-pixel-modules/mqt: v2.9.0",
|
|
5
|
+
"version": "v2.9.0",
|
|
6
6
|
"upload_type": "software",
|
|
7
7
|
"creators": [
|
|
8
8
|
{
|
|
@@ -120,7 +120,7 @@
|
|
|
120
120
|
"related_identifiers": [
|
|
121
121
|
{
|
|
122
122
|
"scheme": "url",
|
|
123
|
-
"identifier": "https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/tree/v2.
|
|
123
|
+
"identifier": "https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/tree/v2.9.0",
|
|
124
124
|
"relation": "isSupplementTo"
|
|
125
125
|
}
|
|
126
126
|
]
|
|
@@ -77,6 +77,6 @@ keywords:
|
|
|
77
77
|
license:
|
|
78
78
|
- mit
|
|
79
79
|
message: If you use this software, please cite it using the metadata from this file.
|
|
80
|
-
title: 'atlas-itk-pixel-modules/mqt: v2.
|
|
80
|
+
title: 'atlas-itk-pixel-modules/mqt: v2.9.0'
|
|
81
81
|
type: software
|
|
82
|
-
version: v2.
|
|
82
|
+
version: v2.9.0
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: module_qc_tools
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.9.0
|
|
4
4
|
Summary: Module qc tools
|
|
5
5
|
Project-URL: Homepage, https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools
|
|
6
6
|
Project-URL: Bug Tracker, https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/issues
|
|
7
7
|
Project-URL: Source, https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools
|
|
8
|
-
Project-URL: Documentation, https://atlas-itk-pixel-mqt.docs.cern.ch/2.
|
|
8
|
+
Project-URL: Documentation, https://atlas-itk-pixel-mqt.docs.cern.ch/2.9/
|
|
9
9
|
Author-email: Jay Chan <jay.chan@cern.ch>
|
|
10
10
|
Maintainer-email: Giordon Stark <gstark@cern.ch>
|
|
11
11
|
License: Copyright (c) 2018 ATLAS ITk Pixel Modules
|
|
@@ -33,8 +33,8 @@ Classifier: Operating System :: OS Independent
|
|
|
33
33
|
Classifier: Programming Language :: Python :: 3
|
|
34
34
|
Requires-Python: >=3.9
|
|
35
35
|
Requires-Dist: check-jsonschema
|
|
36
|
-
Requires-Dist: module-qc-data-tools>=1.
|
|
37
|
-
Requires-Dist: module-qc-database-tools>=2.
|
|
36
|
+
Requires-Dist: module-qc-data-tools>=1.7.0
|
|
37
|
+
Requires-Dist: module-qc-database-tools>=2.11.2
|
|
38
38
|
Requires-Dist: numpy
|
|
39
39
|
Requires-Dist: packaging
|
|
40
40
|
Requires-Dist: pre-commit
|
|
@@ -45,7 +45,7 @@ Requires-Dist: typer>=0.18.0
|
|
|
45
45
|
Requires-Dist: urllib3<2,>=1.26.20; 'el7.x86_64' in platform_release
|
|
46
46
|
Description-Content-Type: text/markdown
|
|
47
47
|
|
|
48
|
-
# module-qc-tools v2.
|
|
48
|
+
# module-qc-tools v2.9.0
|
|
49
49
|
|
|
50
50
|
A general python tool for running ITkPixV1.1 and ITkPixV2 module QC tests
|
|
51
51
|
|
|
@@ -74,19 +74,20 @@ low voltage power supply
|
|
|
74
74
|
|
|
75
75
|
**Configuration settings**
|
|
76
76
|
|
|
77
|
-
| Name | Description
|
|
78
|
-
| --------------------- |
|
|
79
|
-
| `run_dir` | path (relative or absolute) to the directory where `power_supply` commands should be run
|
|
80
|
-
| `on_cmd` | command to turn on the power supply with specified voltage and current. Use the syntax `{v}` and `{i}` to represent the voltage and current that are to be given as input arguments
|
|
81
|
-
| `off_cmd` | command to turn off the power supply
|
|
82
|
-
| `set_cmd` | command to set voltage and current for power supply. Use the syntax `{v}` and `{i}` to represent the voltage and current that are to be given as input arguments
|
|
83
|
-
| `getI_cmd` | command to inquire the set current of the power supply. This command shall return a std output which represents the value of the current (float in the unit of [A]). For example, when I = 5.2A, `getI_cmd` returns std output = `5.2`.
|
|
84
|
-
| `getV_cmd` | command to inquire the set voltage of the power supply. This command shall return a std output which represents the value of the voltage (float in the unit of [V]). For example, when V = 1.8V, `getV_cmd` returns std output = `1.8`.
|
|
85
|
-
| `
|
|
86
|
-
| `
|
|
87
|
-
| `
|
|
88
|
-
| `
|
|
89
|
-
| `
|
|
77
|
+
| Name | Description |
|
|
78
|
+
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
79
|
+
| `run_dir` | path (relative or absolute) to the directory where `power_supply` commands should be run |
|
|
80
|
+
| `on_cmd` | command to turn on the power supply with specified voltage and current. Use the syntax `{v}` and `{i}` to represent the voltage and current that are to be given as input arguments |
|
|
81
|
+
| `off_cmd` | command to turn off the power supply |
|
|
82
|
+
| `set_cmd` | command to set voltage and current for power supply. Use the syntax `{v}` and `{i}` to represent the voltage and current that are to be given as input arguments |
|
|
83
|
+
| `getI_cmd` | command to inquire the set current of the power supply. This command shall return a std output which represents the value of the current (float in the unit of [A]). For example, when I = 5.2A, `getI_cmd` returns std output = `5.2`. |
|
|
84
|
+
| `getV_cmd` | command to inquire the set voltage of the power supply. This command shall return a std output which represents the value of the voltage (float in the unit of [V]). For example, when V = 1.8V, `getV_cmd` returns std output = `1.8`. |
|
|
85
|
+
| `getState_cmd` | command to inquire the state of the output channel. This command shall return a std output which represents the state of the channel. When the output is turned on, `getState_cmd` shall return `ON`. When the output is off, `getState_cmd` shall return `OFF`. |
|
|
86
|
+
| `measI_cmd` | command to measure the output current of the power supply. This command shall return a std output which represents the value of the current (float in the unit of [A]). For example, when I = 5.2A, `measI_cmd` returns std output = `5.2`. |
|
|
87
|
+
| `measV_cmd` | command to measure the output voltage of the power supply. This command shall return a std output which represents the value of the voltage (float in the unit of [V]). For example, when V = 1.8V, `measV_cmd` returns std output = `1.8`. |
|
|
88
|
+
| `n_try` | number of re-tries in case the script fails to read from the power supply |
|
|
89
|
+
| `checkTarget_timeout` | after each `set_cmd` call, `measI_cmd` is called to check if the target is reached, if not after `checkTarget_timeout` (in sec.), an exception is raised |
|
|
90
|
+
| `success_code` | exit status that indicates success. The default is 0. |
|
|
90
91
|
|
|
91
92
|
### high_voltage
|
|
92
93
|
|
|
@@ -179,6 +180,36 @@ the following:
|
|
|
179
180
|
sys.exit(1)
|
|
180
181
|
```
|
|
181
182
|
|
|
183
|
+
### LLS interlock
|
|
184
|
+
|
|
185
|
+
The `lls_interlock` block specifies the path and the commands for reading
|
|
186
|
+
information from the interlock system in a LLS setup. Always one module in a
|
|
187
|
+
serial powering chain is connected directly to the interlock system to read the
|
|
188
|
+
module NTC.
|
|
189
|
+
|
|
190
|
+
**Configuration settings**
|
|
191
|
+
|
|
192
|
+
| Name | Description |
|
|
193
|
+
| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
194
|
+
| `run_dir` | path (relative or absolute) to the directory where `lls_interlock` commands should be run |
|
|
195
|
+
| `get_interlock_temperature_cmd` | command to read a temperature that is used as an input into the interlock system. This can be e.g. a module NTC from the interlock module of a serial powering chain. The command returns a std output which represents the value of measured temperature (float in the unit of [C]). For example: when T = 36.2C, `get_interlock_temperature_cmd` returns std output = `36.2`. |
|
|
196
|
+
| `n_try` | number of re-tries in case the script fails to read from the interlock system |
|
|
197
|
+
| `success_code` | exit status that indicates success. The default is 0. |
|
|
198
|
+
|
|
199
|
+
### MOPS
|
|
200
|
+
|
|
201
|
+
The `mops_monitoring` block specifies the path and the commands for reading
|
|
202
|
+
monitoring information from a MOPS chip
|
|
203
|
+
|
|
204
|
+
**Configuration settings**
|
|
205
|
+
|
|
206
|
+
| Name | Description |
|
|
207
|
+
| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
208
|
+
| `run_dir` | path (relative or absolute) to the directory where `mops_monitoring` commands should be run |
|
|
209
|
+
| `get_converted_adc_measurement_cmd` | command to measure temperature or voltage from the MOPS. Since several MOPS chips can be available in the setup, `{mops-id}` can be passed to the command, identifying the MOPS chip. The `{ch-id}` parameter is used to specify the ADC channel that is read. The command returns a std output which represents the ADC value for the specified channel converted into the measured temperature (float in the unit of [C]) or voltage (float in the unit of [V]). For example: when T = 36.2C, `get_converted_adc_measurement_cmd` returns std output = `36.2`. Note: When using an emulator, one can provide a `-C` flag for the temperature measurement or a `-V` flag for the voltage measurement (passed as the `{unit}` parameter). |
|
|
210
|
+
| `n_try` | number of re-tries in case the script fails to read from the MOPS |
|
|
211
|
+
| `success_code` | exit status that indicates success. The default is 0. |
|
|
212
|
+
|
|
182
213
|
## Measurement Configuration
|
|
183
214
|
|
|
184
215
|
### tasks
|
|
@@ -16,6 +16,52 @@ and this project adheres to
|
|
|
16
16
|
|
|
17
17
|
**_Fixed:_**
|
|
18
18
|
|
|
19
|
+
## [2.9.0](https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/tags/v2.9.0) - 2006-07-13 ## {: #mqt-v2.9.0 }
|
|
20
|
+
|
|
21
|
+
**_Changed:_**
|
|
22
|
+
|
|
23
|
+
- Update measurement times with current versions (!285)
|
|
24
|
+
|
|
25
|
+
**_Added:_**
|
|
26
|
+
|
|
27
|
+
- Add evaporatorPosition information to connectivity file and rename some fields
|
|
28
|
+
(!286)
|
|
29
|
+
- HV group IV measure (!284)
|
|
30
|
+
|
|
31
|
+
**_Fixed:_**
|
|
32
|
+
|
|
33
|
+
- Remove writable-check for measuremnt config (!289)
|
|
34
|
+
|
|
35
|
+
## [2.8.0](https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/tags/v2.8.0) - 2006-03-06 ## {: #mqt-v2.8.0 }
|
|
36
|
+
|
|
37
|
+
**_Added:_**
|
|
38
|
+
|
|
39
|
+
- add checks into `IV_MEASURE` (!282)
|
|
40
|
+
- warning if measured points less than expected
|
|
41
|
+
- progress lock to protect from mixing progress output and measured values
|
|
42
|
+
- read current when HV not reached to trigger Keithley autorange - closes #177
|
|
43
|
+
- Power supply emulator update (!283)
|
|
44
|
+
- Add MOPS hardware class (!280)
|
|
45
|
+
- Add LLS interlock hardware class (!281)
|
|
46
|
+
- Allow sending channel identifier to power supply for fine-grained channel
|
|
47
|
+
selection (!275)
|
|
48
|
+
- OB Cell Thermal performance measurement (!227)
|
|
49
|
+
|
|
50
|
+
!!! important
|
|
51
|
+
|
|
52
|
+
Requires module-qc-data-tools >= v1.5.0rc1,
|
|
53
|
+
|
|
54
|
+
**_Fixed:_**
|
|
55
|
+
|
|
56
|
+
- Upgrade versions of pre-commit hooks (!279)
|
|
57
|
+
- fix CI (PC903 and PP304) (!273)
|
|
58
|
+
|
|
59
|
+
## [2.7.1](https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/tags/v2.7.1) - 2025-10-30 ## {: #mqt-v2.7.1 }
|
|
60
|
+
|
|
61
|
+
**_Changed:_**
|
|
62
|
+
|
|
63
|
+
- reverted file lock related changes in !265 and !270 (!271)
|
|
64
|
+
|
|
19
65
|
## [2.7.0](https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/tags/v2.7.0) - 2025-10-29 ## {: #mqt-v2.7.0 }
|
|
20
66
|
|
|
21
67
|
**_Changed:_**
|
|
@@ -36,6 +82,8 @@ and this project adheres to
|
|
|
36
82
|
`mqt measurement sldo -c <hw config> -o <output dir> --npoints <int>`
|
|
37
83
|
- a pipeline test `test_measurement_one_point_SLDO` was also added in
|
|
38
84
|
`test_emulator.py` to check the implementation
|
|
85
|
+
- add fcntl capability to lock before calling yarr commands simultaneously
|
|
86
|
+
(!265)
|
|
39
87
|
|
|
40
88
|
**_Fixed:_**
|
|
41
89
|
|
|
@@ -94,7 +94,7 @@ package.
|
|
|
94
94
|
$ python -m venv venv
|
|
95
95
|
$ source venv/bin/activate
|
|
96
96
|
$ python -m pip install -U pip
|
|
97
|
-
$ python -m pip install -U pip module-qc-tools==2.
|
|
97
|
+
$ python -m pip install -U pip module-qc-tools==2.9.0
|
|
98
98
|
```
|
|
99
99
|
|
|
100
100
|
### via uv
|
|
@@ -103,7 +103,7 @@ $ python -m pip install -U pip module-qc-tools==2.7.1
|
|
|
103
103
|
$ python -m venv venv
|
|
104
104
|
$ source venv/bin/activate
|
|
105
105
|
$ python -m pip install uv
|
|
106
|
-
$ uv pip install module-qc-tools==2.
|
|
106
|
+
$ uv pip install module-qc-tools==2.9.0
|
|
107
107
|
```
|
|
108
108
|
|
|
109
109
|
# Usage
|
|
@@ -19,42 +19,44 @@ modules to be tested are already powered on.
|
|
|
19
19
|
### Time Estimates
|
|
20
20
|
|
|
21
21
|
The following were measured using an old Keithley multimeter with
|
|
22
|
-
[v2.
|
|
23
|
-
running `run-full-qc
|
|
24
|
-
downloading the results
|
|
22
|
+
[mqt v2.8.0](https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/tags/v2.8.0)
|
|
23
|
+
running `run-full-qc` with YARR v1.5.6. The analysis includes uploading to
|
|
24
|
+
localDB v2.8.2 and downloading the results from a standalone database machine on
|
|
25
|
+
the same network.
|
|
25
26
|
|
|
26
27
|
| Measurement | Duration (hh:mm:ss) |
|
|
27
28
|
| -------------------------- | ------------------- |
|
|
28
29
|
| update k-shunt | 00:00:01 |
|
|
29
30
|
| eye diagram | 00:00:05 |
|
|
30
|
-
| core column scan | 00:00:
|
|
31
|
-
| **ADC calib** | **00:
|
|
32
|
-
| analysis | 00:00:
|
|
31
|
+
| core column scan | 00:00:29 |
|
|
32
|
+
| **ADC calib** | **00:01:32** |
|
|
33
|
+
| analysis | 00:00:16 |
|
|
33
34
|
| update chip config | 00:00:04 |
|
|
34
|
-
| **Analog Readback** | **00:30:
|
|
35
|
-
| analysis | 00:00:
|
|
35
|
+
| **Analog Readback** | **00:30:56** |
|
|
36
|
+
| analysis | 00:00:22 |
|
|
36
37
|
| update chip config | 00:00:04 |
|
|
37
|
-
|
|
|
38
|
-
|
|
|
38
|
+
| eye diagram | 00:00:05 |
|
|
39
|
+
| **SLDO VI** | **00:10:45** |
|
|
40
|
+
| analysis | 00:00:16 |
|
|
39
41
|
| update chip config | 00:00:02 |
|
|
40
|
-
| **Vcal calib** | **00:
|
|
41
|
-
| analysis | 00:00:
|
|
42
|
-
| update chip config | 00:00:
|
|
43
|
-
| **Injection Cap.** | **00:
|
|
44
|
-
| analysis | 00:00:
|
|
45
|
-
| update chip config | 00:00:
|
|
46
|
-
| **LP Mode** | **00:
|
|
47
|
-
| analysis | 00:00:
|
|
48
|
-
| update chip config | 00:00:
|
|
49
|
-
| **DATA_TRANSMISSION** | **00:00:
|
|
50
|
-
| analysis | 00:00:
|
|
42
|
+
| **Vcal calib** | **00:02:55** |
|
|
43
|
+
| analysis | 00:00:13 |
|
|
44
|
+
| update chip config | 00:00:03 |
|
|
45
|
+
| **Injection Cap.** | **00:01:30** |
|
|
46
|
+
| analysis | 00:00:16 |
|
|
47
|
+
| update chip config | 00:00:02 |
|
|
48
|
+
| **LP Mode** | **00:01:37** |
|
|
49
|
+
| analysis | 00:00:08 |
|
|
50
|
+
| update chip config | 00:00:03 |
|
|
51
|
+
| **DATA_TRANSMISSION** | **00:00:31** |
|
|
52
|
+
| analysis | 00:00:14 |
|
|
51
53
|
| update chip config | 00:00:02 |
|
|
52
|
-
| **Minimum Health Test** | **00:
|
|
54
|
+
| **Minimum Health Test** | **00:07:09** |
|
|
53
55
|
| clear chip config | 00:00:00 |
|
|
54
|
-
| **Tuning** | **00:
|
|
55
|
-
| **Pixel Failure Analysis** | **00:09:
|
|
56
|
+
| **Tuning** | **00:14:26** |
|
|
57
|
+
| **Pixel Failure Analysis** | **00:09:39** |
|
|
56
58
|
| -------------------------- | ------------------- |
|
|
57
|
-
| _total_ | _01:
|
|
59
|
+
| _total_ | _01:24:01_ |
|
|
58
60
|
|
|
59
61
|
### Local Filesystem
|
|
60
62
|
|
|
@@ -487,3 +489,70 @@ file (i.e. '$(module-qc-tools --prefix)/configs/meas_config.json').
|
|
|
487
489
|
```
|
|
488
490
|
measurement-LONG-TERM-STABILITY-DCS -c $(module-qc-tools --prefix)/configs/hw_config_emulator_merged_vmux.json -o emulator/outputs/
|
|
489
491
|
```
|
|
492
|
+
|
|
493
|
+
## Thermal Performance
|
|
494
|
+
|
|
495
|
+
- [`mqt measurement thermal-performance`](reference/cli.md#mqt-measurement-thermal-performance)
|
|
496
|
+
- [`module-qc-tools measurement thermal-performance`](reference/cli.md#mqt-measurement-thermal-performance)
|
|
497
|
+
- [`measurement-THERMAL-PERFORMANCE`](reference/cli.md#mqt-measurement-thermal-performance)
|
|
498
|
+
|
|
499
|
+
This adds the ability to run the thermal performance measurement
|
|
500
|
+
(`task = THERMAL_PERFORMANCE`) as specified in the input configuration json file
|
|
501
|
+
(i.e. '$(module-qc-tools --prefix)/configs/meas_config.json').
|
|
502
|
+
|
|
503
|
+
**Configuration settings**
|
|
504
|
+
|
|
505
|
+
| Name | Description |
|
|
506
|
+
| ----------- | -------------------------------------------------------- |
|
|
507
|
+
| `v_mux_ntc` | list of Vmux channels to be measured for ntc temperature |
|
|
508
|
+
| `i_mux_ntc` | list of Imux channels to be measured for ntc temperature |
|
|
509
|
+
| `v_mux_gnd` | list of Vmux channels to be measured for GND temperature |
|
|
510
|
+
| `i_mux_gnd` | list of Imux channels to be measured for GND temperature |
|
|
511
|
+
| `v_mux` | list of Vmux channels to be measured |
|
|
512
|
+
| `i_mux` | list of Imux channels to be measured |
|
|
513
|
+
|
|
514
|
+
??? example
|
|
515
|
+
|
|
516
|
+
```
|
|
517
|
+
measurement-THERMAL-PERFORMANCE -c $(module-qc-tools --prefix)/configs/hw_config_example_merged_vmux_itkpixv2.json -m 20UPGM23xxxxxx_L2_warm.json
|
|
518
|
+
```
|
|
519
|
+
|
|
520
|
+
??? example "emulator"
|
|
521
|
+
|
|
522
|
+
```
|
|
523
|
+
measurement-THERMAL-PERFORMANCE -c $(module-qc-tools --prefix)/configs/hw_config_emulator_merged_vmux.json -o emulator/outputs/
|
|
524
|
+
```
|
|
525
|
+
|
|
526
|
+
## HV group IV measurement
|
|
527
|
+
|
|
528
|
+
- [`mqt measurement hvgroup-iv-measure`](reference/cli.md#mqt-measurement-hvgroup-iv-measure)
|
|
529
|
+
- [`module-qc-tools measurement hvgroup-iv-measure`](reference/cli.md#mqt-measurement-hvgroup-iv-measure)
|
|
530
|
+
- [`measurement-HVGROUP-IV-MEASURE`](reference/cli.md#mqt-measurement-hvgroup-iv-measure)
|
|
531
|
+
|
|
532
|
+
This adds the ability to run an IV measure of a group of modules biased in
|
|
533
|
+
parallel within one high voltage (HV) group (`task = HVGROUP_IV_MEASURE`). The
|
|
534
|
+
measurement configuration is specified in the input configuration json file
|
|
535
|
+
(i.e. '$(module-qc-tools --prefix)/configs/meas_config.json'). Before the start
|
|
536
|
+
of the measurement, it is assumed, that both LV and HV are turned ON for the
|
|
537
|
+
modules.
|
|
538
|
+
|
|
539
|
+
**Configuration settings**
|
|
540
|
+
|
|
541
|
+
| Name | Description |
|
|
542
|
+
| --------------- | --------------------------------------------------------------------------------------------------------------------- |
|
|
543
|
+
| `v_min` | the starting voltage of this measurement |
|
|
544
|
+
| `v_max` | the end voltage of this measurement (**IMPORTANT:** This might need adjustment for every HV group) |
|
|
545
|
+
| `n_points` | how many points should be measured depending on the required voltage steps (i.e. 1V for 3D and 5V for planar modules) |
|
|
546
|
+
| `settling_time` | delay in seconds between setting a bias voltage and reading the current |
|
|
547
|
+
|
|
548
|
+
??? example
|
|
549
|
+
|
|
550
|
+
```
|
|
551
|
+
mqt measurement hvgroup-iv-measure --config-meas "$(module-qc-tools --prefix)/configs/meas_config.json" --config "$(module-qc-tools --prefix)/configs/hw_config_example_lls_qc_itkpixv2.json" --serial-number 20UPBVGxxxxxx --lls-connectivity path/to/connectivity.json --module-connectivity path/to/module/configs/directory --site SITE -o output/path
|
|
552
|
+
```
|
|
553
|
+
|
|
554
|
+
??? example "emulator"
|
|
555
|
+
|
|
556
|
+
```
|
|
557
|
+
mqt measurement hvgroup-iv-measure --config "$(module-qc-tools --prefix)/configs/hw_config_emulator_merged_vmux.json" --serial-number 20UPBVG1234567 --lls-connectivity "$(dirname "$(dirname "$(dirname "$(module-qc-tools --prefix)" )")")/tests/test_emulator/lls_connectivity_OB_preprod_longeron_M6.json" --module-connectivity "$(dirname "$(dirname "$(dirname "$(module-qc-tools --prefix)" )")")/tests/test_emulator/module_configs" --site TEST -o emulator/outputs
|
|
558
|
+
```
|
|
@@ -20,8 +20,8 @@ dependencies = [
|
|
|
20
20
|
"tabulate",
|
|
21
21
|
"pre-commit",
|
|
22
22
|
"check-jsonschema",
|
|
23
|
-
"module-qc-data-tools >= 1.
|
|
24
|
-
"module-qc-database-tools >= 2.
|
|
23
|
+
"module-qc-data-tools >= 1.7.0",
|
|
24
|
+
"module-qc-database-tools >= 2.11.2",
|
|
25
25
|
"requests",
|
|
26
26
|
'urllib3>=1.26.20,<2; "el7.x86_64" in platform_release',
|
|
27
27
|
"typer>=0.18.0",
|
|
@@ -38,7 +38,7 @@ classifiers = [
|
|
|
38
38
|
"Homepage" = "https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools"
|
|
39
39
|
"Bug Tracker" = "https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools/-/issues"
|
|
40
40
|
"Source" = "https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-tools"
|
|
41
|
-
"Documentation" = "https://atlas-itk-pixel-mqt.docs.cern.ch/2.
|
|
41
|
+
"Documentation" = "https://atlas-itk-pixel-mqt.docs.cern.ch/2.9/"
|
|
42
42
|
|
|
43
43
|
[project.scripts]
|
|
44
44
|
module-qc-tools = "module_qc_tools.cli:app"
|
|
@@ -55,6 +55,11 @@ measurement-IV-MEASURE = "module_qc_tools.cli.IV_MEASURE:app"
|
|
|
55
55
|
module-qc-tools-upload = "module_qc_tools.cli.upload_localdb:app"
|
|
56
56
|
measurement-UNDERSHUNT-PROTECTION = "module_qc_tools.cli.UNDERSHUNT_PROTECTION:app"
|
|
57
57
|
measurement-LONG-TERM-STABILITY-DCS = "module_qc_tools.cli.LONG_TERM_STABILITY_DCS:app"
|
|
58
|
+
measurement-THERMAL-PERFORMANCE = "module_qc_tools.cli.THERMAL_PERFORMANCE:app"
|
|
59
|
+
|
|
60
|
+
[dependency-groups]
|
|
61
|
+
dev = [ { include-group = "test" } ]
|
|
62
|
+
test = [ "pytest" ]
|
|
58
63
|
|
|
59
64
|
[tool.hatch.version]
|
|
60
65
|
source = "vcs"
|
|
@@ -207,6 +212,7 @@ messages_control.disable = [
|
|
|
207
212
|
"design",
|
|
208
213
|
"fixme",
|
|
209
214
|
"line-too-long",
|
|
215
|
+
"too-many-lines",
|
|
210
216
|
"wrong-import-position",
|
|
211
217
|
# below are additional warnings to fix later
|
|
212
218
|
"duplicate-code",
|
|
@@ -221,6 +227,7 @@ messages_control.disable = [
|
|
|
221
227
|
]
|
|
222
228
|
|
|
223
229
|
[tool.pytest.ini_options]
|
|
230
|
+
log_level = "INFO"
|
|
224
231
|
minversion = "6.0"
|
|
225
232
|
addopts = ["-ra", "--showlocals", "--strict-markers", "--strict-config"]
|
|
226
233
|
xfail_strict = true
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# file generated by vcs-versioning
|
|
2
|
+
# don't change, don't track in version control
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
__all__ = [
|
|
6
|
+
"__version__",
|
|
7
|
+
"__version_tuple__",
|
|
8
|
+
"version",
|
|
9
|
+
"version_tuple",
|
|
10
|
+
"__commit_id__",
|
|
11
|
+
"commit_id",
|
|
12
|
+
]
|
|
13
|
+
|
|
14
|
+
version: str
|
|
15
|
+
__version__: str
|
|
16
|
+
__version_tuple__: tuple[int | str, ...]
|
|
17
|
+
version_tuple: tuple[int | str, ...]
|
|
18
|
+
commit_id: str | None
|
|
19
|
+
__commit_id__: str | None
|
|
20
|
+
|
|
21
|
+
__version__ = version = '2.9.0'
|
|
22
|
+
__version_tuple__ = version_tuple = (2, 9, 0)
|
|
23
|
+
|
|
24
|
+
__commit_id__ = commit_id = None
|