Openwater LIFU Verification Tests
Project description
openLIFU-test-scripts
Utility and verification scripts for OpenLIFU hardware validation, burn-in, and data analysis.
Overview
This repository contains:
- Thermal and burn-in verification scripts for transmitter and console behavior
- Self-test and hardware sanity scripts
- Data processing helpers for logs and report generation
- Historical and legacy test content kept for reference
The main active package is verification, which contains most test runners and shared test logic.
Repository Layout
verification/: Primary test package and production requirement test scriptstools/: Helper utilities and support scriptstutorials/: Example and tutorial contentlogs/: Output logs produced by test runsplots/: Generated plots and visualizationslegacy/: Older scripts retained for backwards referencedeprecated/: Retired scripts that should not be used for new runsbuild/,dist/: Build artifacts
Requirements
- Python 3.10 to 3.12
- OpenLIFU SDK installed and accessible
- Device access permissions for serial/USB interfaces when running against hardware
From pyproject.toml:
- Package name:
verification - Runtime dependency:
openlifu-sdk
Setup
- Create and activate a virtual environment.
Windows PowerShell:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
- Install the package in editable mode from repository root:
pip install -e .
Common Test Scripts
In verification/
-
prodreqs_tx_short_verification_test.py- Short transmitter verification path
- Useful for communication and functional checks
-
prodreqs_tx_long_verification_test.py- Long-duration heating/burn-in workflow scaffold
-
prodreqs_base_class.py- Shared base class, telemetry monitoring, limits, and CLI argument parser
Running Tests
Because several scripts use package-relative imports, run them from the repository root with module syntax.
Examples:
python -m verification.prodreqs_tx_short_verification_test --frequency 400 --num-modules 2 --test-runthrough
python -m verification.prodreqs_tx_long_verification_test --frequency 400 --num-modules 2
Frequently Used CLI Options
Most production requirement scripts consume argument parsing from verification/prodreqs_base_class.py.
Useful options include:
--frequency KHZ--num-modules N--test-case N--test-runthrough--simulate--external-power--console-shutoff-temp C--tx-shutoff-temp C--ambient-shutoff-temp C--temperature-check-interval S--temperature-log-interval S--log-dir DIR--verboseor--quiet--skip-logfile
Logs and Outputs
- Runtime logs are typically written under
logs/ - Additional outputs may be created in:
plots/verification/*.csv- project root files like
combined_logs.xlsx
Use --log-dir to direct log output to a custom path.
Safety Notes
When running against physical hardware:
- Ensure emergency stop and power cutoff procedures are known before starting
- Confirm shutoff temperatures and monitoring intervals are appropriate
- Prefer running with conservative thresholds during initial validation
Troubleshooting
-
Import errors:
- Ensure you run via
python -m verification.<module>from repo root - Confirm
pip install -e .completed successfully
- Ensure you run via
-
Device connection failures:
- Verify hardware is connected and powered
- Confirm SDK/device drivers are installed
- Re-run with
--verbosefor more detailed logs
-
No log file generated:
- Check
--skip-logfilewas not set - Confirm write access to the selected log directory
- Check
Development Notes
- Some files in
legacy/anddeprecated/are intentionally preserved and may not reflect current behavior - Keep new work in
verification/unless intentionally adding migration content - Maintain script compatibility with Python 3.10-3.12
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openlifu_test_scripts-1.1.1.tar.gz.
File metadata
- Download URL: openlifu_test_scripts-1.1.1.tar.gz
- Upload date:
- Size: 7.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca003a4f2c4155d49a4828ba8195c686f498cdddc7ae7625e33979365d5934b3
|
|
| MD5 |
524b2e78c608fd6ae736ff7f026f902d
|
|
| BLAKE2b-256 |
e3d6810f035ea333f60e797114fb4b0185f537f3b863ba01505a0819e19f5021
|
File details
Details for the file openlifu_test_scripts-1.1.1-py3-none-any.whl.
File metadata
- Download URL: openlifu_test_scripts-1.1.1-py3-none-any.whl
- Upload date:
- Size: 95.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f3bb54c6378cd2cd55327b84155db3aeadf114a0830288cb7f5f660dc9d4e23
|
|
| MD5 |
5f6730aff08f9dabfa9180f8b37a98c2
|
|
| BLAKE2b-256 |
e3f48c1a67c4540e78d1ad48d0c3bcabf4c56d0a71a34daf10ae4f8e8b4654c7
|