Metadata-Version: 2.4
Name: check-info-tool
Version: 1.8.7
Summary: Extract information from Teradyne IG-XL test programs
Author-email: Chao Zhou <zhouchao486@gmail.com>
License-Expression: LicenseRef-Proprietary
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Manufacturing
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: XlsxWriter>=3.1.9
Requires-Dist: xlrd>=2.0.1
Requires-Dist: openpyxl>=3.1.2
Requires-Dist: pandas>=1.3.0
Provides-Extra: streamlit
Requires-Dist: streamlit>=1.38.0; extra == "streamlit"
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: license-file

# Check Info Tool — ATE Program Test Condition Extractor

**Quickly extract test conditions from Teradyne IG-XL test programs**

[![PyPI Version](https://img.shields.io/pypi/v/check-info-tool.svg)](https://pypi.org/project/check-info-tool/)
[![Python Versions](https://img.shields.io/pypi/pyversions/check-info-tool.svg)](https://pypi.org/project/check-info-tool/)
[![License](https://img.shields.io/pypi/l/check-info-tool.svg)](https://github.com/showjim/check_info_tool/blob/master/LICENSE)
[![PyPI Downloads](https://img.shields.io/pypi/dm/check-info-tool.svg)](https://pypi.org/project/check-info-tool/)

---

## Table of Contents

- [Overview](#overview)
- [Features](#features)
- [Installation](#installation)
- [Usage](#usage)
  - [CLI Usage](#cli-usage)
  - [GUI Usage](#gui-usage)
- [Supported Platforms](#supported-platforms)
- [License](#license)

---

## Overview

The **Check Info Tool** streamlines the process of extracting critical test conditions from Teradyne IG-XL ATE test programs. This tool helps engineers quickly and accurately retrieve information such as pattern usage, flow binning details, power pin levels, and AC/timing data — significantly reducing the time and effort required for program quality checks.

### Background

- **Challenge**: Engineers often need to manually search through ATE test programs to find specific test conditions, a process that is both time-consuming and prone to errors.
- **Solution**: Check Info Tool automates the extraction and presents results in a structured Excel report (.xlsm), with both a GUI and a CLI for flexible integration.

---

## Features

- **Automated Extraction of Test Conditions** — flow table, DC/AC spec, timing, and pattern set per job
- **Pattern Usage Identification** — maps patterns to test instances with period and clock information
- **Flow Binning Information Retrieval** — sort bin descriptions across all test suites
- **Power Pin Level Extraction** — per-instance DPS voltage levels with power order support
- **AC/Timing Data Extraction** — timing period and MCG clock values (Period or Frequency mode)
- **VBT Naming Convention Checker** — optional static analysis of VBT `.bas` files
- **CLI Interface** — scriptable, JSON output, AI agent friendly
- **GUI Interface** — point-and-click workflow for interactive use

---

## Installation

### Requirements

- Python 3.9 – 3.14
- Windows, macOS (Apple Silicon), or Linux

### Install from PyPI (Recommended)

```bash
pip install check-info-tool
```

After installation, the `check-info` command is immediately available:

```bash
check-info --version
check-info --help
```

---

## Usage

### CLI Usage

```bash
# List all jobs in a test program
check-info list -d <program.igxl> -p <platform>

# Run analysis on all jobs
check-info run -d <program.igxl> -p <platform> -j all -o ./results

# Run specific job
check-info run -d <program.igxl> -p <platform> -j "Job_FT" -o ./results

# Machine-readable JSON output (useful for scripting)
check-info list -d <program.igxl> -p UltraFLEXplus --json
```

See [docs/cli-usage.md](docs/cli-usage.md) for the full CLI reference including all flags, examples, and agent integration patterns.

### GUI Usage

Launch the graphical interface:

```bash
check-info gui
```

#### Workflow

1. **Load a test program** — use *File → Import Program File* to select a `.igxl` / `.zip` / `.xlsm` file, or *Import Program Directory* for an extracted ASCII directory
2. **Select platform** — choose `UltraFLEXplus`, `UltraFLEX`, or `J750`
3. **Configure options** — set cycle mode (Period/Frequency), spec environment, power order file, pattern path
4. **Click Load** — the job list will appear; select the jobs you want to analyse
5. **Click Run** — the `.xlsm` report is generated in the project directory

---

## Supported Platforms

| Tester | Input Formats |
|--------|--------------|
| UltraFLEXplus | `.igxl`, `.zip`, `.xlsm`, directory |
| UltraFLEX | `.igxl`, `.zip`, `.xlsm`, directory |
| J750 | `.igxl`, `.zip`, `.xlsm`, directory |

---

## License

This software is proprietary. See [LICENSE](LICENSE) for full terms.  
For licensing enquiries: zhouchao486@gmail.com

---

<div align="center">

**Built for the semiconductor ATE community**

</div>
