Skip to main content

Async/await wrapper for PyEpics

Project description

pyepics-asyncio

Simple async/await wrapper for PyEpics.

Overview

There are two main types:

  • PvMonitor - subscribed to PV updates, get returns last received value.
  • Pv - connected but not subscribed, each get requests PV value over network.

Usage

Connect to PV

from pyepics_asyncio import Pv

pv = await Pv.connect("pvname")

Write value to PV

await pv.put(3.1415)

Read value from PV

print(await pv.get())

Monitor PV value updates

with pv.monitor() as mon:
    async for value in mon:
        print(value)

Testing

To run tests you need to have dummy IOC running (located in ioc dir):

  • Set appropriate EPICS_BASE path in configure/RELEASE.
  • Build with make.
  • Go to iocBoot/iocTest/ and run script st.cmd and don't stop it.

In separate shell run poetry run pytest --verbose.

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

pyepics_asyncio-0.3.0.tar.gz (4.1 kB view hashes)

Uploaded Source

Built Distribution

pyepics_asyncio-0.3.0-py3-none-any.whl (4.3 kB view hashes)

Uploaded Python 3

Supported by

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