Skip to main content

epicsdev

epicsdev is a Python framework designed for rapidly developing EPICS PVAccess servers utilizing the p4p library.

Device Process Variables (PVs) are defined using a highly compact format:

[name, description, initial_value, attributes]

Device-specific logic resides within a small, well-structured Python file following a predictable pattern. Given an instrument programming manual, an LLM assistant (such as GitHub Copilot) can easily leverage this pattern to spin up initial support for new hardware in under an hour.


Key Features

  • Built-in Services: Out-of-the-box support for autosave/restore, IocStats, heartbeat monitoring, and PV-put logging.
  • Rapid Prototyping: Simple, declarative tuple structure for PV definitions.
  • LLM-Friendly: Highly predictable boilerplate that allows AI code assistants to write drivers effortlessly.
  • OPI Integration: Automated operator interface generation for Phoebus.

Getting Started

1. Generate a PVAccess Server

Follow the Detailed Server Generation Guide to bootstrap a functional PVAccess server supporting your instrument's core functions.

2. Generate an OPI Display

You can automatically create an Operator Interface (OPI) layout using phoebusgen. See the OPI Generation Instructions for details.

3. Quick Test (Simulation Mode)

To see the framework in action without physical hardware, you can launch a simulated multi-channel waveform generator, which can be useful for stress-testing of EPICS installations. The following command generates 100 noisy waveforms (1,000 points each) alongside 300 scalar parameters:

python -m epicsdev.multiadc -C 100 -n 1000

Other examples to run: single waveform generator and multi-peak image generator

python -m epicsdev.epicsdev
python -m epicsdev.imagegen

List of fully functional PVAccess servers, developed using epicsdev

Power Supplies

Oscilloscopes

Signal Generators

Data Acquisition instruments

Magnetometers

Simulation Utilities

Metadata

Release files for epicsdev 3.3.3

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

Source distribution (sdist)

Source distribution for epicsdev 3.3.3
File Size Uploaded
epicsdev-3.3.3.tar.gz 23.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for epicsdev 3.3.3
File Interpreter ABI Platform
epicsdev-3.3.3-py3-none-any.whl Python 3 none any Details

Total release size: 47.1 kB

Release files / epicsdev-3.3.3.tar.gz

Download URL epicsdev-3.3.3.tar.gz
Size 23.7 kB
Tags Source
SHA-256 checksum
How to use checksums
e93b7486aeea0afb618cc85d4163374c8f2ec724692272a596190497853cc89a
BLAKE2b-256 checksum
How to use checksums
ef47e3e3cdc4a5ab98472fc0688660a86ea12b1967cfb893643b29b1bfea2d74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.1

Release files / epicsdev-3.3.3-py3-none-any.whl

Download URL epicsdev-3.3.3-py3-none-any.whl
Size 23.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f5cd94d3dc58a14dab8396e867682de7f7be14bb4996083de567f96cff431b37
BLAKE2b-256 checksum
How to use checksums
f92086c252032021062fdd2cb25d83abf2808ace5e14421f5d13af74644d1d0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.1

Release history Release notifications | RSS feed

This release

3.3.3 This release

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.2

2 release files

3.2.1

2 release files

3.1.5

2 release files

3.1.4

2 release files

3.1.3

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.0.1

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.1

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.0.0

2 release files

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