zhinst-comms
Zurich Instruments internal python bindings for Capnp
Decision gist · record as of 2026-08-14
No, unless you are developing or maintaining the labone package or a related Zurich Instruments integration. The package documentation explicitly states it is not intended for direct use and is a low-level dependency of labone. Install labone instead if you need to control Zurich Instruments hardware; it will pull in zhinst-comms automatically.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- This is a low-level library intended for use by labone; direct usage is not recommended per the package documentation.
- Medium install friction due to precompiled wheels across multiple platforms and Python versions (3.10–3.14).
License · maintenance · safety
permissive license (permissive) — Dual-licensed under MIT and Other/Proprietary terms. The permissive treatment suggests MIT is the primary license, but the proprietary component warrants review of the full license text before commercial use.
last release 2026-06-19 (56 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 84,123 downloads/mo, #14,023 on PyPI
Alternatives
Verify before relying
pip install zhinst-comms
import zhinst.comms
# Typically used indirectly via the labone package for server communication- Exact scope of the proprietary license component and any restrictions on commercial use or redistribution.
- Whether the package can be used standalone or only through labone, despite the generic API claim.
- Performance characteristics and latency overhead of the aiohttp-based communication stack.
What it is and what it does
zhinst-comms is a low-level protocol stack library that wraps Cap'n Proto bindings for communicating with Zurich Instruments servers. It abstracts the underlying serialization and transport details, providing a generic API that can be adapted to different server implementations and protocols. The package bundles precompiled wheels for macOS (Intel and ARM), Linux, and Windows across Python 3.10–3.14, making cross-platform deployment straightforward.
The package is explicitly not intended for direct use; it serves as a foundation for the labone package, which provides the user-facing API for controlling Zurich Instruments hardware. Its four runtime dependencies—aiohttp for async HTTP communication, click for CLI utilities, packaging for version handling, and typing-extensions for type hints—are lightweight and widely maintained. The dual licensing (MIT and proprietary) and active maintenance status suggest this is a production component of a commercial ecosystem.
Use it for
- Building custom client libraries that communicate with Zurich Instruments LabOne servers using the Cap'n Proto protocol.
- Integrating Zurich Instruments hardware control into larger scientific or measurement automation frameworks via the labone package.
- Developing server-side protocol handlers that need to parse or respond to Zurich Instruments communication formats.
- Cross-platform deployment of instrument control code across macOS, Linux, and Windows without recompilation.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No, unless you are developing or maintaining the labone package or a related Zurich Instruments integration.
The package documentation explicitly states it is not intended for direct use and is a low-level dependency of labone. Install labone instead if you need to control Zurich Instruments hardware; it will pull in zhinst-comms automatically.
Install
zhinst-comms on PyPI
Before you install
Medium install friction due to precompiled wheels across multiple platforms and Python versions (3.10–3.14). Active maintenance with a release within the last 56 days. Four lightweight runtime dependencies (aiohttp, click, packaging, typing-extensions) add modest overhead.
Requires Python 3.10 or later. This is a low-level library intended for use by labone; direct usage is not recommended per the package documentation.
License in practice
Dual-licensed under MIT and Other/Proprietary terms. The permissive treatment suggests MIT is the primary license, but the proprietary component warrants review of the full license text before commercial use.
Quickstart
pip install zhinst-comms
import zhinst.comms
# Typically used indirectly via the labone package for server communication
Verify before relying
- Exact scope of the proprietary license component and any restrictions on commercial use or redistribution.
- Whether the package can be used standalone or only through labone, despite the generic API claim.
- Performance characteristics and latency overhead of the aiohttp-based communication stack.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 4 packagesaiohttpclickpackagingtyping-extensions |
| Maintenance | Actively maintained 56 days since the last release |
| First released | |
| Downloads | 84,123 / month, #14,023 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseLicense :: Other/Proprietary LicenseNatural Language :: EnglishOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: C++Programming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/EngineeringTopic :: Software Development :: Libraries :: Python Modules |
Evidence: zhinst_comms-4.1.0.2607641-cp310-cp310-macosx_10_11_x86_64.whl; zhinst_comms-4.1.0.2607641-cp310-cp310-macosx_11_0_arm64.whl; zhinst_comms-4.1.0.2607641-cp310-cp310-manylinux1_x86_64.whl; zhinst_comms-4.1.0.2607641-cp310-cp310-manylinux2014_aarch64.whl; zhinst_comms-4.1.0.2607641-cp310-cp310-win_amd64.whl; zhinst_comms-4.1.0.2607641-cp311-cp311-macosx_10_11_x86_64.whl; zhinst_comms-4.1.0.2607641-cp311-cp311-macosx_11_0_arm64.whl; zhinst_comms-4.1.0.2607641-cp311-cp311-manylinux1_x86_64.whl; zhinst_comms-4.1.0.2607641-cp311-cp311-manylinux2014_aarch64.whl; zhinst_comms-4.1.0.2607641-cp311-cp311-win_amd64.whl; zhinst_comms-4.1.0.2607641-cp312-cp312-macosx_10_11_x86_64.whl; zhinst_comms-4.1.0.2607641-cp312-cp312-macosx_11_0_arm64.whl; zhinst_comms-4.1.0.2607641-cp312-cp312-manylinux1_x86_64.whl; zhinst_comms-4.1.0.2607641-cp312-cp312-manylinux2014_aarch64.whl; zhinst_comms-4.1.0.2607641-cp312-cp312-win_amd64.whl; zhinst_comms-4.1.0.2607641-cp313-cp313-macosx_10_11_x86_64.whl; zhinst_comms-4.1.0.2607641-cp313-cp313-macosx_11_0_arm64.whl; zhinst_comms-4.1.0.2607641-cp313-cp313-manylinux1_x86_64.whl; zhinst_comms-4.1.0.2607641-cp313-cp313-manylinux2014_aarch64.whl; zhinst_comms-4.1.0.2607641-cp313-cp313-win_amd64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “capnp protocol bindings”
- zhinst-commszhinst-comms provides protocol stack bindings to communicate with…
- pycapnppycapnp is a Python binding for Cap'n Proto, a serialization and RPC…
- sentry-protosProvides protocol buffer and gRPC schema definitions for…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also pycapnp · zhinst-core · zhinst-utils · zhinst-toolkit · RsInstrument · zhinst-timing-models · zigpy-znp · opentelemetry-python-contrib-external-valkey · PyVISA · spacepackets