Skip to main content

A set of utilities related to running the ePixUHR3x2

This was hacked together from a series of very old projects I had...

Provides

  • A GUI for controlling a DP700 Rigol Power Supply
  • A command-line interface for the DP700 Rigol Power Supply
  • A small command-line utility for a DHCP server
    • This can be used to IP a multi-mode fiber converter box

Installation

You can install with pip, either from PyPI, or building from source.

From Source

# Create a venv
python3 -m venv <path to venv>
source <path to venv>/bin/activate
pip install hatch build
pip install .

From PyPI

# Create a venv
python3 -m venv <path to venv>
source <path to venv>/bin/activate
pip install epixuhr-accessories

Usage

Rigol Power Supply

You may need to be added to the dialout group. E.g.:

> sudo gpasswd --add <username> dialout

You can then test by opening multiple terminals. In the first, run:

# Determine which device is the Rigol (maybe /dev/ttyUSB0)
> cat /dev/ttyUSB0
# ... output should come as you run echo commands

In the second terminal:

> echo "*IDN?" > /dev/ttyUSB0

You can then launch the GUI with:

> rigolps-gui

Or use the command-line tool:

> rigolps --help
usage: rigolps [-h] [--port PORT] {status,on,off}

CLI for Rigol Power Supply control

positional arguments:
  {status,on,off}  Command to execute

optional arguments:
  -h, --help       show this help message and exit
  --port PORT      Serial port for the Rigol supply. E.g. `/dev/ttyUSB0`.

DHCP Server

You can use this to IP a specific device, like the mulitmode fiber converter box.

> dhcp-server
usage: dhcp-server [-h] target_mac assigned_ip gateway_ip interface subnet_mask lease_time

positional arguments:
  target_mac   The MAC address to assign an IP to.
  assigned_ip  The IP address to assign to the target.
  gateway_ip   The gateway IP. For point-to-point this should be the IP on the interface. Even without point-to-point, it can be the IP of the server anyway.
  interface    The interface being used.
  subnet_mask  The subnet mask.
  lease_time   The DHCP lease time in seconds.

optional arguments:
  -h, --help   show this help message and exit

Metadata

Release files for epixuhr-accessories 0.1.0

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

Source distribution (sdist)

Source distribution for epixuhr-accessories 0.1.0
File Size Uploaded Provenance Actions
epixuhr_accessories-0.1.0.tar.gz 17.7 kB With provenance Details for epixuhr_accessories-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for epixuhr-accessories 0.1.0
File Interpreter ABI Platform Actions
epixuhr_accessories-0.1.0-py3-none-any.whl Python 3 none any Details for epixuhr_accessories-0.1.0-py3-none-any.whl

Total release size: 44.1 kB

Release files / epixuhr_accessories-0.1.0.tar.gz

Download URL epixuhr_accessories-0.1.0.tar.gz
Size 17.7 kB
Tags Source
SHA-256 checksum
How to use checksums
3621e928cd98c00b2a96682e565f5d163118ae7aa1a28d36943f64e30c521322
BLAKE2b-256 checksum
How to use checksums
baf969e7019d62133be92b264fef6750b93abd33450222563309c19d36a169a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 11, 2026.

Transparency log

Release files / epixuhr_accessories-0.1.0-py3-none-any.whl

Download URL epixuhr_accessories-0.1.0-py3-none-any.whl
Size 26.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
92d7ff664a1ca56d51ccbde20a77db8e260fc7b0adc8b6c5d69d8931b679c972
BLAKE2b-256 checksum
How to use checksums
4cd780380625b18f9bb55f78749c9e97e11cca95da0a75711e2523d8c1096024
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 11, 2026.

Transparency log

Security for epixuhr-accessories 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for epixuhr_accessories-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 11, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

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