Skip to main content

IOC for the Pfefiffer TPG-366 Pressure Gauge

This in an unofficial, as-simple-as-it-gets IOC for the Pfeiffer TPG-366 pressure gauge.

It does nothing else except reading out temperatrue and status data, publishing them via PV suffixes .VALUE and .STATUS for each gauge. The exact format of the PVs is {prefix}G{cnt}:STATUS, respectively {prefix}G{gauge}:VALUE with {prefix} as the EPICS prefix (e.g. "DOODLE:") and {cnt} as the gauge counter, starting at 1. For instance:

  • DOODLE:G1:VALUE
  • DOODLE:G1:STATUS
  • DOODLE:G2:VALUE
  • DOODLE:G2:STATUS ...

Obtaining & Running

Via Pip:

$ pip install tpg366-ioc
$ export PFEIFFER_EPICS_PREFIX=DOODLE:
$ export PFEIFFER_VISA_DEVICE=TCPIP::192.168.1.17::8000::SOCKET
$ tpg-366-ioc

Or via Podman:

$ podman run -ti --rm \
     -e PFEIFFER_EPICS_PREFIX=DOODLE: \
     -e PFEIFFER_VISA_DEVICE=TCPIP::192.168.1.17::8000::SOCKET
     registry.gitlab.com/kmc3-xpp/tpg366-ioc:latest

Or directly from source, via git clone:

$ git clone https://gitlab.com/kmc3-xpp/tpg366-ioc
$ pip install -e tpg366-ioc[all]
$ export PFEIFFER_EPICS_PREFIX=DOODLE:
$ export PFEIFFER_VISA_DEVICE=TCPIP::192.168.1.17::8000::SOCKET
$ tpg-366-ioc

Environment Variables

TPG-IOC is controlled via environment variables:

  • PFEIFFER_EPICS_PREFIX EPICS prefix including the trailing ":"
  • PFEIFFER_VISA_DEVICE VISA device address specification. Note that anything other than TCPIP-schemes may cause problems currently. Typically, the default port for these devices is 8000, so your TCP/IP VISA device would be something like: "TCPIP::<host>::8000::SOCKET".
  • PFEIFFER_VISA_RMAN VISA resource manager, defaults to "@py"
  • PREIFFER_NR_GAUGES number of gauges to query / display, defaults to 6.

Bugs & Caveats

Async operation, which the EPICS PV part depends on, only seems to work fine with TCP/IP VISA devices. This is owing to bugs within the VISA framework. Could be worked around, but it isn't a priority currently (contact us if you have a use case).

The IOC is very, very simple -- just reading pressure values. No configuration, no advaced features.

Normally there would be unit tests and a sim-mode prior to building the image -- this time there aren't. Eventually they'll get retrofitted (there is a test harness in place). But for now, be careful with upgrades.

Metadata

Release files for tpg366-ioc 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tpg366-ioc 0.1.1
File Size Uploaded Provenance Actions
tpg366_ioc-0.1.1.tar.gz 19.0 kB Without provenance Details for tpg366_ioc-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tpg366-ioc 0.1.1
File Interpreter ABI Platform Actions
tpg366_ioc-0.1.1-py3-none-any.whl Python 3 none any Details for tpg366_ioc-0.1.1-py3-none-any.whl

Total release size: 37.4 kB

Release files / tpg366_ioc-0.1.1.tar.gz

Download URL tpg366_ioc-0.1.1.tar.gz
Size 19.0 kB
Tags Source
SHA-256 checksum
How to use checksums
8b1dffda2ba7ad19b3ef466ca695675dc2dd1fde141fb6ca173c1059a508049a
BLAKE2b-256 checksum
How to use checksums
1008addc6216557441018ed1c1145061a42129f21f813391567081bbf7ef6adb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.1

Release files / tpg366_ioc-0.1.1-py3-none-any.whl

Download URL tpg366_ioc-0.1.1-py3-none-any.whl
Size 18.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
afb73e12be210493ca3085ce3b5b725dd2a1d706d291d8ad906e347ad10fdb27
BLAKE2b-256 checksum
How to use checksums
55111a67d298befbcea68454decc06fdfdab2e0764a520cefa173bb5d457e782
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.1

Security for tpg366-ioc 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page