Skip to main content

Code CI Docs CI Test Coverage Latest PyPI version Apache License

This module allows an EPICS IOC with Python Device Support to be run from within the Python interpreter. Records can be programmatically created and arbitrary Python code run to update them and respond to caputs. It supports cothread and asyncio for concurrency. PVs are served over Channel Access and PVAccess.

PyPI

pip install softioc

Source code

https://github.com/DiamondLightSource/pythonSoftIOC

Documentation

https://DiamondLightSource.github.io/pythonSoftIOC

Changelog

https://github.com/DiamondLightSource/pythonSoftIOC/blob/master/CHANGELOG.rst

A simple example of the use of this library:

# Import the basic framework components.
from softioc import softioc, builder
import cothread

# Set the record prefix
builder.SetDeviceName("MY-DEVICE-PREFIX")

# Create some records
ai = builder.aIn('AI', initial_value=5)
ao = builder.aOut('AO', initial_value=12.45, on_update=lambda v: ai.set(v))

# Boilerplate get the IOC started
builder.LoadDatabase()
softioc.iocInit()

# Start processes required to be run after iocInit
def update():
    while True:
        ai.set(ai.get() + 1)
        cothread.Sleep(1)


cothread.Spawn(update)

# Finally leave the IOC running with an interactive shell.
softioc.interactive_ioc(globals())

See https://DiamondLightSource.github.io/pythonSoftIOC for more detailed documentation.

Download files

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

Source Distribution

softioc-4.7.1.tar.gz (94.2 kB view details)

Uploaded Source

Built Distributions

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

softioc-4.7.1-cp313-cp313-win_amd64.whl (118.7 kB view details)

Uploaded CPython 3.13Windows x86-64

softioc-4.7.1-cp313-cp313-manylinux2014_x86_64.whl (125.0 kB view details)

Uploaded CPython 3.13

softioc-4.7.1-cp313-cp313-macosx_10_13_x86_64.whl (119.4 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

softioc-4.7.1-cp312-cp312-win_amd64.whl (118.7 kB view details)

Uploaded CPython 3.12Windows x86-64

softioc-4.7.1-cp312-cp312-manylinux2014_x86_64.whl (125.0 kB view details)

Uploaded CPython 3.12

softioc-4.7.1-cp312-cp312-macosx_10_13_x86_64.whl (119.4 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

softioc-4.7.1-cp311-cp311-win_amd64.whl (118.7 kB view details)

Uploaded CPython 3.11Windows x86-64

softioc-4.7.1-cp311-cp311-manylinux2014_x86_64.whl (125.0 kB view details)

Uploaded CPython 3.11

softioc-4.7.1-cp311-cp311-macosx_10_9_x86_64.whl (119.3 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

softioc-4.7.1-cp310-cp310-win_amd64.whl (118.7 kB view details)

Uploaded CPython 3.10Windows x86-64

softioc-4.7.1-cp310-cp310-manylinux2014_x86_64.whl (125.0 kB view details)

Uploaded CPython 3.10

softioc-4.7.1-cp310-cp310-macosx_10_9_x86_64.whl (119.3 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

softioc-4.7.1-cp39-cp39-manylinux2014_x86_64.whl (125.0 kB view details)

Uploaded CPython 3.9

softioc-4.7.1-cp39-cp39-macosx_10_9_x86_64.whl (119.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

softioc-4.7.1-cp38-cp38-win_amd64.whl (118.6 kB view details)

Uploaded CPython 3.8Windows x86-64

softioc-4.7.1-cp38-cp38-manylinux2014_x86_64.whl (125.0 kB view details)

Uploaded CPython 3.8

softioc-4.7.1-cp38-cp38-macosx_10_9_x86_64.whl (119.3 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

softioc-4.7.1-cp37-cp37m-win_amd64.whl (118.6 kB view details)

Uploaded CPython 3.7mWindows x86-64

softioc-4.7.1-cp37-cp37m-manylinux2014_x86_64.whl (124.8 kB view details)

Uploaded CPython 3.7m

softioc-4.7.1-cp37-cp37m-macosx_10_9_x86_64.whl (119.2 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

File details

Details for the file softioc-4.7.1.tar.gz.

File metadata

  • Download URL: softioc-4.7.1.tar.gz
  • Upload date:
  • Size: 94.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for softioc-4.7.1.tar.gz
Algorithm Hash digest
SHA256 305276a0ad57eea4afd21c44abc280cb2a5747297347ea8dca31b9b48e831e8e
MD5 d73db48ea38e75faa5df5e3ac52b95d5
BLAKE2b-256 059ecd0508d816d2706170fd82723d859f030671a593be21bf3e500ae58d8530

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: softioc-4.7.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 118.7 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for softioc-4.7.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 41ece01363f365e17360e6f9bb112e4ff0dd3dc0cfe3cda937286f46bbe2fea9
MD5 1aed2c82da9891c1ea14504f8a0cd671
BLAKE2b-256 5eb3bb8e7f548f93505a76c192f58d9eb007fc54e44a523ad25e9bbdaba50fd2

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp313-cp313-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp313-cp313-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7e130eaf43aac11b095dd1212c42c3bd0760a99dd9da7bf669d70590a0f4ee75
MD5 b176ed6c7e46468f79960c56bb263ae2
BLAKE2b-256 ed74a9a3924ea6047c18ee8f6cc3035bafbce5239badc42acc311e8e9ca3a065

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 7f072f2d06062acbc3fa21084a87feb44365db2f3cc5d0e055f48d9f0f6312b5
MD5 aff51f3c1faad5af1eb5bf6fb819e752
BLAKE2b-256 bf7a37f7b5018a6f7064a59e564068cdd0207f338668ea11abbb5db5ea2c5851

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: softioc-4.7.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 118.7 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for softioc-4.7.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a30c0b4ed588caeb434d53daae8a910d74e5a44040e951128db6c3b10fc7f7e8
MD5 4346d9e269ce8026862d976729a077ab
BLAKE2b-256 809434c6d8abcc809b4345185d5a1bd12c82382b2c88ee81464c3b8a61cee5de

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1332ddad892d4864b01d4f0ec7941922cff7281869587ed113834296a8332e65
MD5 efe4116ca518edd35394fcc399e9b736
BLAKE2b-256 46d1009d22214f3ae54016fcd2bf7fc50a7d9e6299e540e7672c5daca7d34471

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4320b40e84fcd21de7dacd8c71463cc62a23dbdae4aebe985a7a71c9a6d44812
MD5 4bd9d33aae50aa7826c1b558e04db63c
BLAKE2b-256 76080e6d19587a287e86d45499c9156574d3880732d8b0875734ea52c240bae3

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: softioc-4.7.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 118.7 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for softioc-4.7.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d76697e722badebe5d7832f612b4b57b9800d711e203dd7202db9e911987410e
MD5 d556b03247b7f05b06aed41f816a62e2
BLAKE2b-256 9cef83b80ede1104d7de171df8de1c279d4668aeff57963bb2de58dd02a15b8b

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2e53b9bfa3648f2b428dfb6b88dce20a7862e73d1ad5b0692dc53a73db232f7b
MD5 382531b27c4abc305d08de845208f631
BLAKE2b-256 b0aeb4c6005e4c8b31dba22c63ed604c1528828429eab62027daa3554b651e4d

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f111d7d1aba14e59f7b16c419c33c63e77c67c1a32cc018e187687d5954b010d
MD5 655023d98fff730719b214f5e3c3d51b
BLAKE2b-256 474ef42c01cd4d1d7f447c9311928caf4d0b40625832e4ddb01d8a6204758754

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: softioc-4.7.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 118.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for softioc-4.7.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8b92583dab0ce03dc0b9525f4aa5e942d1bf2989a7fd482f2531cd39863b58d0
MD5 c2b00dd5356fed7b4d4745983ae5bdd0
BLAKE2b-256 e733eff72586a24897d3daaf8f863c35da336c8a2dbd315c0538198c3e9c19cc

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 16e1f2d94a62236640b1ce3230515c84afc63ddc8793d0ec0fb322fc9a428d69
MD5 a15dcde709fc558fdd77af79e45d0638
BLAKE2b-256 17329ff057853f27ae0f5fd78c640d1147640ec9f5feefd86bce8871036ce770

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dacbfc874e47620add49ff865b787c65c0aa23905a11b896006d8fc5180911c8
MD5 5b967f352b571cadbf76588817e4629f
BLAKE2b-256 eb9fff28edb5f96d903f1a88037c581cc155547df5756361645c9b51be438f31

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 998682ac4058fbf966baeff99100bd823c5a3b71e4b012edc2a50d7e29f85ab2
MD5 9ad4566369ff9d37ebc54df20549f3c0
BLAKE2b-256 0d40fe91ee31ea7a3ffa29bd2f080421e3da1b4b21ad6ac1c5afef59193a4ab2

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0fb904d40b2964a6ac72a4002a99f00d37ed4bc88bdabe7019b1fb8ca1ef2972
MD5 66bc0436b672788930226e7313b15b95
BLAKE2b-256 924e64f33b501f0e60d7c7f811fef146fa7902586c341e92b8589f45993fc827

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: softioc-4.7.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 118.6 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for softioc-4.7.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b3d15983e68515123082409fd6e166e6bb97533cd64863caeb08d6adcdf5699b
MD5 2dd070a25e8c55d4bf63afd699a596e1
BLAKE2b-256 bc47d318bb4268916943e98726ff500b1c44b24706f52a6c2460903005107a6f

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 30ba6874af6ade295ab2cb63a9632ca811a0e7273d2e51098e2bd3c4a434d23f
MD5 2bac808316c4cc7567543d2a21eab44c
BLAKE2b-256 2f423efe53d3f6d66101ed5ccd4f771322c3ea9a70422d53a77a588620988e95

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 fa404ad15e8a6e3a56918214165443e3eb4853ed8eac65c30151c5bbf4609a21
MD5 24646affee5edacb436a4127f62035ef
BLAKE2b-256 2e4c3fc9c3cd2fb4694e4ae03f639e34ef28d19ab96969d529bdd44b9d6cc7d7

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: softioc-4.7.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 118.6 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for softioc-4.7.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 5a72e4e5071d9e15874455b963a581aceee1178ee1921f6a0cf6986f8a82a3bd
MD5 da64e21ea6f72b0a7777f333f565b2ab
BLAKE2b-256 ad3b05353d93fb107e9a7448b3c1074138038891790253de301b20526b82db8b

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cf61648642c34b59ba2bd87cec0521f6649f7f6a30dfb7123866f621f20d4f1d
MD5 45709e6f964893fc422764addaf23ab9
BLAKE2b-256 a38d47817ee295d77431361681277333e04cab4d5b9010137e78c59d0eb51ea3

See more details on using hashes here.

File details

Details for the file softioc-4.7.1-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for softioc-4.7.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 adf162d2e7e9c502a8a17937758770cf15d252c01107916ef0682da83aafe735
MD5 7335a69f144e7dde9f505699b5dcd120
BLAKE2b-256 cad4d7fa12c935e2b8b831a0837614738a9ef6ee239af3e36d2ac1cb98490cab

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