Skip to main content

Python interface to the caenhv-client GUI: fire/raise the application from other Python projects (e.g. labscript BLACS)

Project description

caenhv-client-python

Python interface to the caenhv-client GUI (CAEN HV control with channel linking). Zero dependencies; the GUI itself is distributed as a standalone executable.

The only capability is firing the GUI — raise its window if running, launch it otherwise — over a tiny local IPC protocol. There is deliberately no remote control of HV settings.

from caenhv_client_python import fire_gui, notify_gui

fire_gui()      # raise the window if running, otherwise launch the GUI
notify_gui()    # raise only; returns False if the GUI is not running

Remote hosts: with fire_gui(host="hv-pc", port=50251) (or CAENHV_CLIENT_REMOTE=hv-pc:50251) the show request goes over TCP to a GUI on another machine. The GUI must enable its listener (CAENHV_CLIENT_TCP_PORT=50251, optional CAENHV_CLIENT_TCP_BIND / CAENHV_CLIENT_TCP_TOKEN) and must already be running there — remote launch is impossible, so auto-start the GUI at login on that host. This channel can only show/raise the window, never change HV state.

Configuration via environment variables:

  • CAENHV_CLIENT_COMMAND — path (or command line) of the caenhv-client executable, used when it is not on PATH.
  • CAENHV_CLIENT_IPC_NAME — IPC server name (default caenhv-client), must match the GUI's setting when overridden.
  • CAENHV_CLIENT_REMOTEhost:port of a remote GUI's TCP listener.
  • CAENHV_CLIENT_TCP_TOKEN — shared token when the remote listener requires one.

Works from any Python process, including labscript BLACS tabs and workers; no Qt required (a Unix-socket / named-pipe transport is used, with PyQt5 as an optional fallback).

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

caenhv_client_python-0.2.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

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

caenhv_client_python-0.2.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file caenhv_client_python-0.2.0.tar.gz.

File metadata

  • Download URL: caenhv_client_python-0.2.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for caenhv_client_python-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2545914875b4b2d3955281ce6024828e6e1d2bd6a9e7dcdcbbd218df25ea33ae
MD5 6dd2961a2aef96d203092fd9e92e8552
BLAKE2b-256 239c1537d8b7494fc188dc9ffa958d21ec244202beadef9efea24f70ff8d3e2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for caenhv_client_python-0.2.0.tar.gz:

Publisher: publish-python.yml on kenji0923/caenhv-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file caenhv_client_python-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for caenhv_client_python-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc787ed511adf4632b7c596c79dc7a3d7ddebfd28a8cd6980ea5c04e84e43465
MD5 263f9d960c467567e167492befe6cab3
BLAKE2b-256 06f451df228ac742bb52e931bf5a6557abde48ed8074b3d6d7a831e8a80451d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for caenhv_client_python-0.2.0-py3-none-any.whl:

Publisher: publish-python.yml on kenji0923/caenhv-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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