Skip to main content

Asynchronous Bluesky hardware abstraction code, compatible with control systems like EPICS and Tango

Project description

CI Coverage PyPI License

ophyd-async

Asynchronous Bluesky hardware abstraction code, compatible with control systems like EPICS and Tango.

Source https://github.com/bluesky/ophyd-async
PyPI pip install ophyd-async
Documentation https://bluesky.github.io/ophyd-async
Releases https://github.com/bluesky/ophyd-async/releases

Ophyd-async is a Python library for asynchronously interfacing with hardware, intended to be used as an abstraction layer that enables experiment orchestration and data acquisition code to operate above the specifics of particular devices and control systems.

Both ophyd sync and ophyd-async are typically used with the Bluesky Run Engine for experiment orchestration and data acquisition.

The main differences from ophyd sync are:

  • Asynchronous Signal access, simplifying the parallel control of multiple Signals
  • Support for EPICS PVA and Tango as well as the traditional EPICS CA
  • Better library support for splitting the logic from the hardware interface to avoid complex class heirarchies

It was written with the aim of implementing fly scanning in a generic and extensible way with highly customizable devices like PandABox and the Delta Tau PMAC products. Using async code makes it possible to do the "put 3 PVs in parallel, then get from another PV" logic that is common in fly scanning without the performance and complexity overhead of multiple threads.

Devices from both ophyd sync and ophyd-async can be used in the same RunEngine and even in the same scan. This allows a per-device migration where devices are reimplemented in ophyd-async one by one.

See https://bluesky.github.io/ophyd-async for more detailed documentation.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

ophyd_async-0.16.tar.gz (545.4 kB view details)

Uploaded Source

Built Distribution

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

ophyd_async-0.16-py3-none-any.whl (208.5 kB view details)

Uploaded Python 3

File details

Details for the file ophyd_async-0.16.tar.gz.

File metadata

  • Download URL: ophyd_async-0.16.tar.gz
  • Upload date:
  • Size: 545.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ophyd_async-0.16.tar.gz
Algorithm Hash digest
SHA256 c8a3671c704da77c7a7b7c5343b972230f743b1029a100f6c5780123fb0df33d
MD5 498c4c0dfb6b13fec670e80c106a0dcd
BLAKE2b-256 082dcd178f31c4efb7f2a1b2787900d62b70b478111c5db51a625307f5fb9b15

See more details on using hashes here.

File details

Details for the file ophyd_async-0.16-py3-none-any.whl.

File metadata

  • Download URL: ophyd_async-0.16-py3-none-any.whl
  • Upload date:
  • Size: 208.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ophyd_async-0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 017d837767b63cdc20af1851275495b6bb0db195a887e0bd989dc7a17e0f0c79
MD5 b44c8690ac39d22ee77ce9c78a2ac252
BLAKE2b-256 c3ab0c92e9824c9e54df5a06b5759957fc23c30489c2aabef5653dd9057b3f61

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