Metadata-Version: 2.4
Name: gsvpiko
Version: 0.1.0
Summary: Python control, recording and diagnostics tools for ME GSV-8 based measurement setups.
Author: GSVpiko contributors
License-Expression: MIT
Keywords: measurement,GSV-8,serial,TCP,force sensors
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pyserial>=3.5
Requires-Dist: matplotlib>=3.8
Provides-Extra: dev
Requires-Dist: pytest>=8; extra == "dev"
Requires-Dist: ruff>=0.5; extra == "dev"
Dynamic: license-file

# GSVpiko

GSVpiko is a Python package for configuring, reading, recording and diagnosing ME GSV-8 based measurement setups.

More information about GSVpiko in docs/ and about the measurement amplifier (= german: GleichSpannungsVerstärker = GSV) in references/.

## Install from a local checkout

```powershell
py -m pip install .
```

For development work, install the package in editable mode:

```powershell
py -m pip install -e .[dev]
```

## Command-line entry points

After installation, the main apps can be started directly from the terminal:

```powershell
gsvpiko-read-values --setup two_gsvs_two_sensors_each
gsvpiko-record-values --setup two_gsvs_two_sensors_each
gsvpiko-diagnose-errors --setup two_gsvs_two_sensors_each
gsvpiko-external-tcp-interface --host 127.0.0.1 --port 5050
gsvpiko-client-tcp --host 127.0.0.1 --port 5050
gsvpiko-plot-csv data/example.csv
```

The module form remains available:

```powershell
py -m gsvpiko.app.app_read_values_from_setup --setup two_gsvs_two_sensors_each
py -m gsvpiko.app.app_record_values_from_setup --setup two_gsvs_two_sensors_each
py -m gsvpiko.app.app_diagnose_gsv_status_errors --setup two_gsvs_two_sensors_each
py -m gsvpiko.app.client_tcp
py -m gsvpiko.app.plot_gsvpiko_csv data/example.csv
```

## Local output

Measurement CSV files, plots and diagnostic logs are runtime output. Keep them in `data/`, `logs/` or another local output directory and do not commit them to the package repository unless they are intentionally curated examples.
