# Ray CLI
[](github-release)
[](github-last-commit)
[](githut-commits-since)


Ray CLI is a command-line utility designed for generating and broadcasting DMX data over sACN.
## Installation
### Prerequisites
- Python 3.7+
#### Development
- Python 3.7+
- Poetry
- Pipx
### Pipx (Recommended)
```sh
pipx install ray-cli
```
### Pip
```sh
pip install ray-cli
```
### GitHub
```sh
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:
```sh
ray-cli 192.168.86.198 \
--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
```sh
usage: ray-cli [-m {chase,ramp,ramp-down,ramp-up,sine,square,static}] [-d DURATION]
[-u UNIVERSES [UNIVERSES ...]] [-c CHANNELS] [-i INTENSITY]
[-I INTENSITY_MIN] [-f FREQUENCY] [--fps FPS] [--dst DST] [-v] [-q]
[--dry] [--purge] [-h] [-V]
[IP_ADDRESS]
Command-line utility for generating and broadcasting DMX over sACN
positional arguments:
IP_ADDRESS IP address of the DMX source
optional arguments:
-m, --mode {chase,ramp,ramp-down,ramp-up,sine,square,static}
DMX signal shape mode (default: ramp)
-d, --duration DURATION broadcast duration in seconds (default:
INDEFINITE)
-u, --universes UNIVERSES [UNIVERSES ...] sACN universe(s) to send to (range:
1-63999, default: 1)
-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-255, default: 0)
-f, --frequency FREQUENCY frequency of the generated signal (default:
1.0)
--fps FPS frames per second per universe (default:
10)
--dst DST IP address of the dmx destination (default:
MULTICAST)
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
query options:
-h, --help print help and exit
-V, --version show program's version number and exit
```
Raw data
{
"_id": null,
"home_page": "https://github.com/nobbmaestro/ray-cli",
"name": "ray-cli",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": "dmx, sacn, cli, utility, python",
"author": "Norbert Batiuk",
"author_email": "norbert@batiuk.se",
"download_url": "https://files.pythonhosted.org/packages/73/68/bb063537b439b640bc529e32bf11b0a5840fb7b9516a4c646bc6821c68c5/ray_cli-0.5.1.tar.gz",
"platform": null,
"description": "# Ray CLI\n\n[](github-release)\n[](github-last-commit)\n[](githut-commits-since)\n\n\n\nRay CLI is a command-line utility designed for generating and broadcasting DMX data over sACN.\n\n## Installation\n\n### Prerequisites\n\n- Python 3.7+\n\n#### Development\n\n- Python 3.7+\n- Poetry\n- Pipx\n\n### Pipx (Recommended)\n\n```sh\npipx install ray-cli\n```\n\n### Pip\n\n```sh\npip install ray-cli\n```\n\n### GitHub\n\n```sh\ngit clone git@github.com:nobbmaestro/ray-cli.git\ncd ray-cli\nmake install\n```\n\n## Usage\n\n### Basic Example\n\nTo broadcast a ramp DMX signal to a specific IP address:\n\n```sh\nray-cli 192.168.86.198 \\\n --dst 192.168.86.67 \\\n --mode chase \\\n --universes 1 2 \\\n --channels 24 \\\n --fps 50 \\\n --duration 60\n```\n\n### Available Modes\n\n| Mode | Description |\n| ----------- | ------------------------------------- |\n| `chase` | Light chases across the channel range |\n| `ramp` | Linear ramp up **_and_** down |\n| `ramp-up` | Gradually increases intensity |\n| `ramp-down` | Gradually decreases intensity |\n| `sine` | Sine wave modulation |\n| `square` | Binary high/low intensity |\n| `static` | Static intensity output |\n\n### Complete List of Command-Line Options\n\n```sh\nusage: ray-cli [-m {chase,ramp,ramp-down,ramp-up,sine,square,static}] [-d DURATION]\n [-u UNIVERSES [UNIVERSES ...]] [-c CHANNELS] [-i INTENSITY]\n [-I INTENSITY_MIN] [-f FREQUENCY] [--fps FPS] [--dst DST] [-v] [-q]\n [--dry] [--purge] [-h] [-V]\n [IP_ADDRESS]\n\nCommand-line utility for generating and broadcasting DMX over sACN\n\npositional arguments:\n IP_ADDRESS IP address of the DMX source\n\noptional arguments:\n -m, --mode {chase,ramp,ramp-down,ramp-up,sine,square,static}\n DMX signal shape mode (default: ramp)\n -d, --duration DURATION broadcast duration in seconds (default:\n INDEFINITE)\n -u, --universes UNIVERSES [UNIVERSES ...] sACN universe(s) to send to (range:\n 1-63999, default: 1)\n -c, --channels CHANNELS DMX channels at universe to send to (range:\n 1-512, default: 24)\n -i, --intensity INTENSITY DMX channels output intensity (range:\n 1-255, default: 10)\n -I, --intensity-min INTENSITY_MIN DMX channels minimum output intensity\n (range: 0-255, default: 0)\n -f, --frequency FREQUENCY frequency of the generated signal (default:\n 1.0)\n --fps FPS frames per second per universe (default:\n 10)\n --dst DST IP address of the dmx destination (default:\n MULTICAST)\n\ndisplay options:\n -v, --verbose run in verbose mode\n -q, --quiet run in quiet mode\n\noperational options:\n --dry simulate outputs without broadcast\n --purge send zero-data on all channels and exit\n\nquery options:\n -h, --help print help and exit\n -V, --version show program's version number and exit\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Command-line utility for generating and broadcasting DMX over sACN",
"version": "0.5.1",
"project_urls": {
"Homepage": "https://github.com/nobbmaestro/ray-cli",
"Repository": "https://github.com/nobbmaestro/ray-cli"
},
"split_keywords": [
"dmx",
" sacn",
" cli",
" utility",
" python"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6c41eb95cc163ed94407b9ddfb849a73597cc2d69aaf3fd323bcf8fe2c1e2482",
"md5": "7cd580321e0e7dc617be417e7010bfed",
"sha256": "d6fc94eafece413d6beed7e2571bc7ceba19eb409da627add1a082a28d9e9fd5"
},
"downloads": -1,
"filename": "ray_cli-0.5.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7cd580321e0e7dc617be417e7010bfed",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 13482,
"upload_time": "2025-10-26T16:22:36",
"upload_time_iso_8601": "2025-10-26T16:22:36.351500Z",
"url": "https://files.pythonhosted.org/packages/6c/41/eb95cc163ed94407b9ddfb849a73597cc2d69aaf3fd323bcf8fe2c1e2482/ray_cli-0.5.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7368bb063537b439b640bc529e32bf11b0a5840fb7b9516a4c646bc6821c68c5",
"md5": "9b18290a88aad5d0a3b164bb51e547e7",
"sha256": "b9dcf2de0f4933db8cc1a18814f57f1fa1fd360a4273f346371475a21711ad9a"
},
"downloads": -1,
"filename": "ray_cli-0.5.1.tar.gz",
"has_sig": false,
"md5_digest": "9b18290a88aad5d0a3b164bb51e547e7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 10263,
"upload_time": "2025-10-26T16:22:37",
"upload_time_iso_8601": "2025-10-26T16:22:37.466592Z",
"url": "https://files.pythonhosted.org/packages/73/68/bb063537b439b640bc529e32bf11b0a5840fb7b9516a4c646bc6821c68c5/ray_cli-0.5.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-26 16:22:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "nobbmaestro",
"github_project": "ray-cli",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "ray-cli"
}