Skip to main content

A Python abstraction layer for GW-Instek GPP power supplies

Project description

pyGPP

pyGPP is a Python Hardware Abstraction Layer (HAL) over SCPI commands using PyVISA for controlling GW-Instek GPP series power supplies. Currently, these models are supported:

  • GPP-3060/6030/3650

Status

⚠️ Early development (v0.0.1) - API may change

Prerequisites

  • Hardware: GW-Instek GPP-3060, GPP-3650, or GPP-6030.
  • Drivers:
  • Tooling: uv (optional, )

Installation

As a Dependency (for users)

If you want to use pyGPP in your own project, install it directly from the repository:

uv add git+https://gitlab.com/samshahrokni/pyGPP.git

Or with pip:

pip install git+https://gitlab.com/samshahrokni/pyGPP.git

Usage

from src.pygpp import GPP3060

with GPP3060(address='ASRL3::INSTR') as psu:
    psu.ch1.set_voltage(5.0)  # set voltage to 5V
    psu.ch1.set_ocp(1.0)  # set current overprotection to 1A
    psu.ch1.enable()

    measurement = psu.ch1.measure()
    print(measurement)

For more examples, see examples/ directory.

For Development (for contributors)

Clone the repository and sync dependencies (automatically fetches Python 3.14+):

git clone https://gitlab.com/samshahrokni/pyGPP.git
cd pyGPP
uv sync --all-extras
pre-commit install

Notes

  • Incomplete Implementation: Not all SCPI commands are implemented.
  • Reference: See the GPP Series User Manual for the full command list.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygpp-0.0.1.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pygpp-0.0.1-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file pygpp-0.0.1.tar.gz.

File metadata

  • Download URL: pygpp-0.0.1.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for pygpp-0.0.1.tar.gz
Algorithm Hash digest
SHA256 b9a659a5af5df76fb27eb1f0e0b19de048c1f8e02465761c45d20901296036df
MD5 4a3823dfb36a506463dd35adc8098c78
BLAKE2b-256 8afa426d0ac22f6e5865d95b0c7c2da68255fc2f1a716b18d8a8ec71d3a3608e

See more details on using hashes here.

File details

Details for the file pygpp-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pygpp-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for pygpp-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2f12d4731189ae5133beef7c62714c108913860dbcdff2f1817a88588dee9fa8
MD5 a11a8d1f1b1216d56488d45eee4675c5
BLAKE2b-256 f65d9a46483e1d021c4dfb70d0e456a7d92d76d8570269a2267b7fea228d4a36

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page