Skip to main content

Ray CLI

GitHub last commit GitHub commits since CI

Ray CLI is a command-line engineering utility for generating and broadcasting DMX data over sACN and Art-Net.

Installation

Install ray-cli from PyPi:

# With pip.
pip install ray-cli
# With pipx.
pipx install ray-cli
# Or uv.
uv tool install ray-cli

Or, directly from GitHub:

Note: The GitHub installation requires uv to be installed!

git clone git@github.com:nobbmaestro/ray-cli.git
cd ray-cli
make install

Usage

Basic Example

To broadcast a ramp DMX signal to a specific IP address:

ray-cli sacn            \
    --dst 192.168.86.67 \
    --mode chase        \
    --universes 1 2     \
    --channels 24       \
    --fps 50            \
    --duration 60

Available Modes

Mode Description
chase Light chases across the channel range
ramp Linear ramp up and down
ramp-up Gradually increases intensity
ramp-down Gradually decreases intensity
sine Sine wave modulation
square Binary high/low intensity
static Static intensity output

Complete List of Command-Line Options

usage: ray-cli sacn [-m MODE] [-c CHANNELS] [-i INTENSITY] [-I INTENSITY_MIN]
                    [-f FREQUENCY] [-u UNIVERSES [UNIVERSES ...]] [-p PRIORITY]
                    [--src SRC] [--dst DST] [-w WORKERS] [-P PACKETS | -d DURATION]
                    [--fps FPS] [-v | -q] [--dry] [--purge] [--purge-on-exit] [-h] [-V]

options:
  -m, --mode MODE                            DMX signal shape mode (choices: chase, ramp,
                                             ramp-down, ramp-up, sine, square, static,
                                             default: ramp)
  -c, --channels CHANNELS                    DMX channels at universe to send to (range:
                                             1-512, default: 24)
  -i, --intensity INTENSITY                  DMX channels output intensity (range: 1-255,
                                             default: 10)
  -I, --intensity-min INTENSITY_MIN          DMX channels minimum output intensity (range:
                                             0-254, default: 0)
  -f, --frequency FREQUENCY                  frequency of the generated signal (range:
                                             0.001-unlimited, default: 1.0)
  -u, --universes UNIVERSES [UNIVERSES ...]  sACN universe(s) to send to (range: 1-63999,
                                             default: [1])
  -p, --priority PRIORITY                    DMX source priority (range: 0-200, default:
                                             100)

network group:
  --src SRC                                  IP address of the DMX source (default:
                                             0.0.0.0)
  --dst DST                                  IP address of the DMX destination (default:
                                             MULTICAST)

runtime group:
  -w, --workers WORKERS                      number of sender workers per universe (range:
                                             1-100, default: 1)
  -P, --packets PACKETS                      number of packets to send per universe per
                                             worker (range: 1-unlimited)
  -d, --duration DURATION                    broadcast duration in seconds (range:
                                             0.001-unlimited)
  --fps FPS                                  frames per second per universe (range:
                                             0.001-unlimited, default: 10)

display options:
  -v, --verbose                              run in verbose mode
  -q, --quiet                                run in quiet mode

operational options:
  --dry                                      simulate outputs without broadcast
  --purge                                    send zero-data on all channels and exit
  --purge-on-exit                            send zero-data on all channels upon
                                             completion

query options:
  -h, --help                                 print help and exit
  -V, --version                              show program's version number and exit

Metadata

Release files for ray-cli 1.0.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 ray-cli 1.0.3
File Size Uploaded Provenance Actions
ray_cli-1.0.3.tar.gz 44.9 kB Without provenance Details for ray_cli-1.0.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ray-cli 1.0.3
File Interpreter ABI Platform Actions
ray_cli-1.0.3-py3-none-any.whl Python 3 none any Details for ray_cli-1.0.3-py3-none-any.whl

Total release size: 69.1 kB

Release files / ray_cli-1.0.3.tar.gz

Download URL ray_cli-1.0.3.tar.gz
Size 44.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d7a833b78f458896daf5e5a6d761401c0be4e9f34f77671b81e4184c6416851c
BLAKE2b-256 checksum
How to use checksums
494535743a5fd8fee56eb8a71a05bde860eddcb367a7d2d2f3bc262af2634d20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / ray_cli-1.0.3-py3-none-any.whl

Download URL ray_cli-1.0.3-py3-none-any.whl
Size 24.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ad3fc85a21e1d8a4383e25ae78c8ad9743e726875a8dd4b97185252b2a8581ed
BLAKE2b-256 checksum
How to use checksums
16be67fc6f690860dca9b4a67466fe3470c3ce3023449bb0f7043cc5a47581e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for ray-cli 1.0.3

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.

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