Skip to main content

Network client for Advanced Illumination DCS light controllers

Project description

pydcscontrol PyPI - Version

Python client library for communicating with Advanced Illumination DCS light controllers over the Ethernet interface.

This package implements the controller's SCPI-like command protocol over TCP (default port 777).

Even though the DCS controller is super simple, it is nice to be able to pull in a package to one-liner the most common operations.

These common operation wrappers also do a validation of the current configurations for a sanity check.

Installation

uv add pydcscontrol
# or
pip install pydcscontrol

Usage

Using continous mode to set the current of a DCS channel to 100 mA:

from pydcscontrol import DCSController

if DCSController().easy_set(current=100):
    print("DCS channel configured successfully")
else:
    print("DCS channel configuration failed")

Quickly turn DCS output off:

from pydcscontrol import DCSController

if DCSController().off():
    print("DCS channel turned off successfully")
else:
    print("Failed to turn off DCS channel")

Development

uv sync
uv run ruff check
uv run ruff format .
uv run pytest
uv build
git tag -a vX.Y.Z -m vX.Y.Z
git push --tags

If a deployment fails

git tag -d vX.Y.Z
git push origin :refs/tags/vX.Y.Z
git tag -a vX.Y.Z -m vX.Y.Z
git push --tags

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

pydcscontrol-0.1.2.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

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

pydcscontrol-0.1.2-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file pydcscontrol-0.1.2.tar.gz.

File metadata

  • Download URL: pydcscontrol-0.1.2.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pydcscontrol-0.1.2.tar.gz
Algorithm Hash digest
SHA256 195340975d24d6328df19c409f56aa0eac1cd7cd258a0df0bdf624a503872da2
MD5 f92658ab8b3d7dd9242cf8bc1cac4e0b
BLAKE2b-256 d9692531f7a9abc61b159162ab88de188e195210070fdfd165738c0da18b25f5

See more details on using hashes here.

File details

Details for the file pydcscontrol-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: pydcscontrol-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pydcscontrol-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a55bd26aa1ada65720ede91e0c93aeeb0a989491f8f3a34761f31dc897e3873d
MD5 a7ef6b0c253fbce944d6c7f4c9a709e6
BLAKE2b-256 0195942dac2f26e114ae7e5259f7bda7fe92ef467384baff993a8aab9e95374b

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