← Manual

Command reference

Every command the console understands, with its full syntax.

This page is generated from the console's own code, so it lists what the shipping build actually does - not what someone remembered to write down.

Every command the console understands. This is the same text HELP <verb> prints at the command line, grouped for reading - so it can never disagree with the parser.

For how to type them, see The command line.


Reading the syntax

NotationMeans
<thing>Something you supply
[thing]Optional
A|BOne of these
<ids...>An id list - see below
...Repeatable

Commands are case-insensitive. Quote anything containing spaces. Several commands can go on one line separated by ; - RED 100; GREEN 50; BLUE 25.


Id lists

Nearly every id argument accepts a list expression:

4                       just 4
1 THRU 8                1 to 8
1 + 4 + 9               those three
1 THRU 4 + 9 THRU 12    both ranges

A range selects the objects that exist inside it and skips the gaps; a bare id must exist. A head range stays inside one fixture (1.1 THRU 1.4); a fader range stays on one page (2.1 THRU 2.6).


Attribute commands

Setting a value is attribute-led - the capability’s own name is the command, and the names come from the fixture profile:

INTENSITY 100
RED 100 GREEN 40 BLUE 0
PAN -25 TILT 12
GOBO 3
SHUTTER.STROBE 4                    a segmented capability, addressed by segment
FIXTURE 1 THRU 4 INTENSITY 80       an explicit target may lead
GROUP 2 TILT -10

Fanning is the same line with a FAN clause:

<attribute> <centre> FAN <width> [RANDOM] [DIRECTION NORMAL|REVERSE|IN|OUT]
                                 [WINGS <n>] [BLOCKS <n>] [GLOBAL]

PAN 0 FAN 40 DIRECTION IN WINGS 2

and UNSET takes a value back out of the programmer:

FIXTURE 1 THRU 4 UNSET

See The programmer and Fanning and spread.


Variables

$name = value           define ($x = $x + 5 for arithmetic)
$name                   substituted anywhere in a command
SHOW VARS               list them

See Macros and variables.


Commands at a glance

CommandSummary
SELECTSELECT CUELIST <id> | SELECT [FIXTURE <ids…>] [HEAD <fixture.head-number…>] [GROUP <ids…>]
FIXTUREFIXTURE EDITOR
GROUPGROUP <id> [ADD | REMOVE | CLEAR | LABEL]
CLEARCLEAR SELECTION | PROGRAMMER | ALL
PALETTEPALETTE <id|name> [AMOUNT <0-100>]
PRESETPRESET <id|name> [ALL] [AMOUNT <0-100>]
APPLYAPPLY SFX <id> [AMOUNT <0-100>] [FADEIN <s>] [FADEOUT <s>] | APPLY PALETTE|PRESET <id|name> [ALL] [AMOUNT <0-100>]
UNAPPLYUNAPPLY SFX <id> [FADEOUT <s>] | UNAPPLY PALETTE|PRESET <id|name> [ALL]
SFXSFX <ids…> AMOUNT <0-100> | ON | OFF
TAPTAP FREQUENCY <id> (tap tempo: first tap resyncs linked SFX to the downbeat; each further tap sets the frequency’s BPM from the average interval since the first tap)
LIVELIVE
BLINDBLIND
HIGHLIGHTHIGHLIGHT ON|OFF
LOWLIGHTLOWLIGHT ON|OFF
SOLOSOLO ON|OFF
STORESTORE CUE | PRESET | PALETTE | GROUP | TARGET
UPDATEUPDATE CUE | PRESET | PALETTE | FIXTURE | SFX | FREQUENCY | CUELIST | TARGET
COPYCOPY PRESET <ids…> <dest_id> [FORCE]
RENUMBERRENUMBER FIXTURE <old_ids…> TO <new_id> | RENUMBER CUE|PALETTE|PRESET|SFX|FREQUENCY <id> [THRU <id>] <new_id>
DELETEDELETE FIXTURE | PRESET | PALETTE | GROUP | CUE | SFX | FREQUENCY | TARGET | CUELIST
SPLITSPLIT CUE <number>
CREATECREATE TARGET | FREQUENCY
GOGO NEXT | PREV | <cue> | <cuelist> <cue|NEXT|PREV>
STOPSTOP [ALL] [CUELIST <ids…>] [FADE <seconds>]
KILLKILL [CUELIST <ids…>]
CUECUE <number> [PART <n>] (load into the programmer, or edit a stored cue)
LOADLOAD PRESET | PALETTE | CAPABILITY | SFX | FREQUENCY | CUE | <cuelist> <cue>
FADERFADER <ids…>|<page>.<id> <level 0.0-100.0> [OVERRIDE|NOOVERRIDE]
FLASHFLASH <ids…>|<page>.<id> ON | OFF
PAGEPAGE <n> (select the fader page)
MASTERMASTER GRAND <level> | MASTER GROUP <ids…> <level>
RELEASERELEASE ALL FADERS | RELEASE [FIXTURE <ids…>] [GROUP <ids…>] FROM [TARGET] <id|name>
BLACKOUTBLACKOUT [ON|OFF]
EMERGENCYEMERGENCY [ON|OFF]
MUTEMUTE [FIXTURE|GROUP <ids…>] ON|OFF
PANICPANIC
TARGETCREATE|UPDATE|DELETE TARGET | CAPTURE|RELEASE … TARGET | LIST TARGETS | SHOW|WHERE TARGET
AIMAIM [FIXTURE <ids…|SELECTED>] [GROUP <ids…>] AT [TARGET] <id|name>
CAPTURECAPTURE FIXTURE <ids…|SELECTED> AT TARGET <id|name>
WHEREWHERE TARGET <id|name>
CALIBRATECALIBRATE (calibrate a fixture’s position/orientation from the four calibration targets)
ADDADD FIXTURE | SFX | CUELIST
CLONECLONE <fixture_ids…> <new_id> AT NEXT|<univ>/<addr>
EXCHANGEEXCHANGE <fixture_ids…> TYPE|MANUFACTURER … [FORCE]
PATCHPATCH WIZARD | REPORT [EXPORT <path.csv>]
GENERATEGENERATE [GROUPS|PALETTES|PRESETS|SFX|TARGETS] [PREVIEW] (build groups, palettes, targets, effects and position looks from the rig)
VISUALISERVISUALISER ON|OFF | WIDTH | BEAM | LINES | …
LAYOUTLAYOUT (2D stage layout editor)
NEWNEW
OPENOPEN <path.lmx>
SAVESAVE [path.lmx]
SAVEASSAVEAS <path.lmx>
SAVEASFILESAVEASFILE <path.lmx> (alias for SAVEAS)
QUITQUIT / EXIT / Q
CONFIGCONFIG PROGRAMMER | STORE | EXITCUE | ARTNET | USB | SACN | GROUP | PERFMON | FPS | PRIORITY | MIDI | PREMOVE | TARGET | LINEARMOVE | BACKUPS | FADERS | AUTOSAVE | REMOTE | HIGHLIGHT | LOWLIGHT | BLIND | BLACKOUT | EMERGENCY | MAXLIGHTS | DISPLAY | GENERATE
MAPMAP MIDI (“<name>” <channel> [CC|NOTE] <number> | DETECT) TO … [FEEDBACK [CC|NOTE] [<channel> <number>]] | REMOVE | MAP KEY ([CTRL] [ALT] [SHIFT] <key> | DETECT) GO|STOP|COMMAND|TAP|REMOVE
DEBUGDEBUG MIDI | DEBUG PLAYBACK ON|OFF | DEBUG PATCH ON|OFF
REPORTREPORT (report a problem with the beta)
HELPHELP [<command>]
LISTLIST FIXTURES | GROUPS | PRESETS | PALETTES | CUES | CUELISTS | FADERS | SFX | FREQUENCIES | TARGETS | USB | MIDI
SHOWSHOW PROGRAMMER | SELECTION | CONFIG | PERFMON | VISPERF | PATCH | MAP | PRESET | CUE | CUELIST | SFX | FREQUENCY | FADER | FIXTURE | PALETTE | TARGET | VARS | LAYERS
INSPECTINSPECT FIXTURE <ids…> [CAP <name>] [AT <time>]
DUMPDMXDUMPDMX <universe>
MACROMACRO (list all recorded macros)
PLAYPLAY MACRO <name> [LOG] (run a recorded macro; LOG prints each command)
EXPORTEXPORT MACRO <name> <filename> (write macro to a JSON file)
IMPORTIMPORT MACRO <filename> [<name>] (load macro from a JSON file, optionally rename)
EDITEDIT MACRO <name> (open macro in GUI editor)
INPUTINPUT $varname “prompt text”
PRINTPRINT [<text>…]
UNDOUNDO (step back through the undo history)
REDOREDO (step forward through the undo history)

Selecting

Choosing what the next command acts on.

SELECT

SELECT CUELIST <id>
SELECT [FIXTURE <ids...>] [HEAD <fixture.head-number...>] [GROUP <ids...>]
SELECT FIXTURE <ids...> GROUP <ids...>
SELECT FIXTURE <ids...> HEAD <fixture.head-number...>
SELECT FIXTURE <ids...> <capability> <value>
SELECT FIXTURE <ids...> AT <level>|FULL|OUT
SELECT GROUP <ids...> AT <level>|FULL|OUT
SELECT GROUP <ids...> <capability> <value>
SELECT HEAD <fixture.head-number...> <capability> <value>
  • Ids take THRU and + expressions; a head range stays on one fixture (1.1 THRU 1.4).

FIXTURE

FIXTURE EDITOR
FIXTURE <ids...> <capability> <value>
FIXTURE <ids...> AT <level>|FULL|OUT

GROUP

GROUP <id>
GROUP <id> <capability> <value>
GROUP <id> AT <level>|FULL|OUT
GROUP <id> ADD <fid> ...
GROUP <id> REMOVE <fid> ...
GROUP <id> CLEAR
GROUP <id> LABEL "name"

CLEAR

CLEAR SELECTION
CLEAR PROGRAMMER
CLEAR ALL
  • Alias: CLR.

Building a look

Programmer state, and the stored objects you apply to it.

PALETTE

PALETTE <id|name> [AMOUNT <0-100>]
  • <fixture ids> PALETTE <id|name> [AMOUNT <0-100>]

PRESET

PRESET <id|name> [ALL] [AMOUNT <0-100>]

APPLY

APPLY SFX <id> [AMOUNT <0-100>] [FADEIN <s>] [FADEOUT <s>] [FREQUENCY <id>]  (applies a template to the current selection in the programmer)
APPLY PALETTE <id|name> [AMOUNT <0-100>]  (alias for PALETTE; AMOUNT 0 unapplies from the selection)
APPLY PRESET <id|name> [ALL] [AMOUNT <0-100>]  (alias for PRESET; AMOUNT 0 unapplies from the selection or ALL scope)

UNAPPLY

UNAPPLY SFX <id> [FADEOUT <s>]  (removes a template from the current selection in the programmer)
UNAPPLY PALETTE <id|name> [ALL]  (removes that palette's contribution from the selection, or ALL fixtures/groups in the programmer)
UNAPPLY PRESET <id|name> [ALL]  (removes that preset's contribution, and stops any SFX it started, from the selection, or ALL fixtures/groups in the programmer)

SFX

SFX <ids...> AMOUNT <0-100>
SFX <ids...> ON [AMOUNT <n>]
SFX <ids...> OFF [FADEOUT <s>]
  • Controls running programmer copies of a template; ids take THRU and + expressions.

TAP

TAP FREQUENCY <id>  (tap tempo: first tap resyncs linked SFX to the downbeat; each further tap sets the frequency's BPM from the average interval since the first tap)

LIVE

LIVE (enable programmer output in the merge)

BLIND

BLIND (suppress programmer output, including programmer SFX, in the merge)
CONFIG BLIND VISUALISER OFF|FULL|PROGRAMMER (let the local 3D visualiser show the blind programmer anyway)

HIGHLIGHT

HIGHLIGHT ON|OFF

LOWLIGHT

LOWLIGHT ON|OFF

SOLO

SOLO ON|OFF

Storing

Writing what you have built into the show.

STORE

STORE CUE <number|NEXT> [<label>] [PART <n>] [BLOCK|OUTPUT] [NOTRACK] [FADE <float>|FADEUP/FADEIN <float>|FADEDOWN/FADEOUT <float>] [DELAY <float>]
STORE PRESET <number> [OUTPUT] [NAME <name>|"name"] [MERGE|REPLACE]
STORE PALETTE <id> TYPE <intensity|colour|gobo|beam> [NAME <name>] [<attr> <value> ...]
STORE GROUP <number> ["name"]
STORE TARGET <id> [NAME <name>] POS <x> <y> <z>
STORE MACRO <name>  (start recording; RECORD MACRO reads better)
STORE STOP  (stop recording the macro)

UPDATE

UPDATE CUE <number> [PART <n>|ALLPARTS] [MERGE|REPLACE] [REMOVE FIXTURE <ids...>] [FADE <sec>|FADEUP/FADEIN <sec>|FADEDOWN/FADEOUT <sec>|DELAY <sec>] [PREMOVE ON|OFF] [LABEL <text>]
UPDATE CUE <number> [PART <n>|ALLPARTS] REMOVE SELECTED  (drops the selected fixtures from the cue)
UPDATE FIXTURE <ids...> AT <univ>/<addr>
UPDATE FIXTURE <id> NAME <name>
UPDATE FIXTURE <ids...> POS|POSITION <x> <y> <z>
UPDATE FIXTURE <ids...> POS|POSITION <x> THRU <x2> <y> THRU <y2> <z> THRU <z2>  (spreads the range over the fixtures)
UPDATE FIXTURE <ids...> POS|POSITION NONE|CLEAR
UPDATE FIXTURE <ids...> ORI|ORIENTATION <yaw> <pitch> <roll>
UPDATE FIXTURE <ids...> ORI|ORIENTATION <yaw> THRU <yaw2> <pitch> THRU <pitch2> <roll> THRU <roll2>
UPDATE FIXTURE <ids...> ORI|ORIENTATION NONE|CLEAR
A POS and an ORI clause may be given together on one UPDATE FIXTURE line.
UPDATE GROUP <id> NAME <name>
UPDATE SFX <sfx_id> [<pan|tilt|focus|zoom|iris|intensity|capability>] [SIZE <0-200>] [CENTRE <0-100>] [RELATIVE|ABSOLUTE] [WAVEFORM <sine|...|pulse|random>] [WIDTH <0-1>] [SPEED <hz>] [RATE <x>] [PHASE <0-1>] [SPREAD <0-1>] [WINGS <n>] [BLOCKS <n>] [DIRECTION <fwd|rev>] [MODE <LATEST|ADD|AVERAGE>] [SEED <n>] [RUNONCE [ON|OFF]] [NAME <text>]
UPDATE SFX <sfx_id> CHASE [SPEED <hz>] [STEPFADE <0-1>] [TRAVERSAL <loop|bounce|random>] [RATEMODE <step|whole>] [RUNONCE [ON|OFF]] [NAME <text>]
UPDATE FREQUENCY <id> [SPEED|BPM <value>] [NAME <text>]
UPDATE PRESET <id> [NAME <name>] [FIXTURE <id> <attr> <value> ...] [GROUP <id> <attr> <value> ...] [MERGE|REPLACE]
UPDATE PALETTE <id> [TYPE <intensity|colour|gobo|beam>] [NAME <name>] [<attr> <value> ...]
UPDATE CUELIST <id> <name>
UPDATE TARGET <id|name> POS <x> <y> <z>
UPDATE TARGET <id|name> CALIBRATE <1-4>|REMOVE

COPY

COPY PRESET <ids...> <dest_id> [FORCE]
COPY CUE <ids...> <dest_id> [FORCE]
COPY PALETTE <ids...> <dest_id> [FORCE]
A range copies to consecutive destinations keeping the sources' spacing: COPY PRESET 1 THRU 4 10 writes 10-13.
  • Copies a preset, cue, or palette to a new ID. If dest already exists, fails unless FORCE is given.
  • For CUE ranges the source and destination start must share the same minor number.

RENUMBER

RENUMBER FIXTURE <old_ids...> TO <new_id>
RENUMBER CUE|PALETTE|PRESET|SFX|FREQUENCY <id> <new_id>
RENUMBER CUE|PALETTE|PRESET|SFX|FREQUENCY <id> THRU <id> <newstart_id>
  • Renames a single object or a contiguous range. Range keeps original spacing.
  • For ranges: source and destination start IDs must share the same minor number (CUE only).

DELETE

DELETE FIXTURE <ids...> [FORCE]
DELETE PRESET <ids...> [FORCE]
DELETE PALETTE <ids...> [FORCE]
DELETE GROUP <ids...> [FORCE]
DELETE CUE <numbers...> [CUELIST <id>]
DELETE SFX <ids...> [<capability>] [FORCE]
DELETE FREQUENCY <ids...> [FORCE]
DELETE TARGET <ids|names...> [FORCE SNAPSHOT|MATERIALIZE]
DELETE CUELIST <ids...>
A range selects the objects that exist inside it and skips the gaps; a bare id must exist.
  • Every id list takes THRU and + expressions: DELETE PRESET 1 THRU 10, DELETE CUE 2 + 5.
  • An object still referenced elsewhere is skipped with a reason and the rest of the batch continues.

SPLIT

SPLIT CUE <number>

CREATE

CREATE TARGET [<id>] [NAME <name>] POS <x> <y> <z> [CALIBRATE <1-4>]
CREATE FREQUENCY <id> <SPEED|BPM> <value> [NAME <text>]

Playback

Running the show.

GO

GO [NEXT|PREV|PREVIOUS|BACK|<cueid>|<cuelist> <cueid|NEXT|PREV|PREVIOUS|BACK>]

STOP

STOP [FADE <seconds>]  (stops the selected cue list)
STOP CUELIST <ids...> [FADE <seconds>]
STOP ALL  (stops every cue list; a FADE given after ALL is ignored)

KILL

KILL [CUELIST <ids...>]

CUE

CUE <number>  (load all parts into the programmer)
CUE <number> PART <n>  (load that part into the programmer)
CUE <number> [PART <n>] FIXTURE <id...> <cap_key> <value>
CUE <number> [PART <n>] GROUP <id...> <cap_key> <value>
CUE <number> [PART <n>] FIXTURE <id...> REMOVE [<cap_key>]
CUE <number> [PART <n>] GROUP <id...> REMOVE [<cap_key>]
CUE <number> [PART <n>] APPLY SFX <id...>
CUE <number> [PART <n>] APPLY SFX <id...> TO FIXTURE <id...>
CUE <number> [PART <n>] APPLY SFX <id...> TO GROUP <id...>
CUE <number> [PART <n>] APPLY SFX <id...> AMOUNT <0-100>
CUE <number> [PART <n>] APPLY SFX <id...> FREQUENCY <id>
CUE <number> [PART <n>] REMOVE SFX <id...>
CUE <number> [PART <n>] REMOVE SFX <id...> FROM FIXTURE <id...>
CUE <number> [PART <n>] REMOVE SFX <id...> FROM GROUP <id...>
CUE <number> [PART <n>] UNAPPLY SFX <id...>
CUE <number> [PART <n>] CAPTURE FIXTURE <id...> AT TARGET <id|name>
CUE <number> [PART <n>] CAPTURE GROUP <id...> AT TARGET <id|name>
CUE <number> [PART <n>] CAPTURE AT TARGET <id|name>
CUE <number> [PART <n>] RELEASE FROM TARGET <id|name>
CUE <number> [PART <n>] RELEASE FIXTURE <id...> FROM TARGET <id|name>
CUE <number> [PART <n>] RELEASE ALL FROM TARGET <id|name>
CUE <number> [PART <n>] FADE <sec>
CUE <number> [PART <n>] FADEUP <sec>
CUE <number> [PART <n>] FADEDOWN <sec>
CUE <number> [PART <n>] DELAY <sec>
CUE <number> [PART <n>] LABEL <text>
CUE <number> FOLLOW ON|AFTERDELAY|OFF
CUE <number> TRACK ON|OFF
REMOVE SFX (UNAPPLY SFX is the same command) takes a stored effect out of the cue. Without FROM it removes the whole application; with FROM it removes only those fixtures/groups, and drops the application once nothing is left. Without PART it covers every part of the cue.
APPLY SFX and CAPTURE add to the cue, and land on part 1 unless PART names another - the same routing STORE/UPDATE CUE use. Without TO, APPLY SFX aims at the current selection; without a selection clause, CAPTURE captures the current selection.
RELEASE unbinds fixtures from a target in the cue: name them, or name nothing (ALL is the explicit spelling) to drop the whole binding. SELECTED releases the current selection. Like REMOVE SFX it covers every part unless PART names one.
A bare FADE sets the in and the out together, as it does on STORE CUE and UPDATE CUE; FADEUP/FADEIN and FADEDOWN/FADEOUT name one of them.
TRACK OFF stops this cue's values tracking into later cues: they apply while it is the active cue, and later cues that do not re-state them fall back to whatever was tracking before it. TRACK ON (the default) restores normal tracking.
FOLLOW auto-fires the cue after the previous cue: ON fires it the moment the previous cue fires; AFTERDELAY fires it once every part of the previous cue has finished fading in (max part delay + fade up). A manual GO while a follow is pending cancels the pending auto-fire.
  • Direct-write attribute edit on a stored cue part. cap_key accepts dotted segment notation (e.g. shutter.strobe).
  • Part delays are all measured from the moment the cue fires - parts never wait for earlier parts.

LOAD

LOAD CUE <number> [PART <n>] INTO PROGRAMMER
LOAD CUE <number> AT FADER <id> [MODE <blend|htp|intensity>] [OVERRIDE] [NAME <text>]
LOAD <cuelist> <cue> AT FADER <id> [MODE <blend|htp|intensity>] [OVERRIDE] [NAME <text>]
LOAD PALETTE <id|name> [FIXTURE <fixture_list>] [GROUP <group_list>] [SELECTED|ALL] AT FADER <id> [MODE <blend|htp|intensity>] [OVERRIDE] [NAME <text>]
LOAD PRESET <id> [FIXTURE <fixture_list>] [GROUP <group_list>] [SELECTED|ALL] AT FADER <id> [MODE <blend|htp|intensity>] [OVERRIDE] [NAME <text>]
LOAD CAPABILITY <name> [FIXTURE <fixture_list>] [GROUP <group_list>] [SELECTED|ALL] AT FADER <id> [MODE <blend|htp|intensity>] [OVERRIDE] [NAME <text>]
LOAD SFX <id|name> [FIXTURE <fixture_list>] [GROUP <group_list>] [SELECTED|ALL] AT FADER <id> [AMOUNT <0-100>] [FREQUENCY|FREQ <id>] [MODE <blend|htp|intensity>] [OVERRIDE] [NAME <text>]
LOAD FREQUENCY <id> AT FADER <id> MIN <value> [BPM] MAX <value> [BPM] [NAME <text>]
  • Constraint: FIXTURE and GROUP may be used together; SELECTED or ALL may only be used if neither FIXTURE nor GROUP is specified.

FADER

FADER <ids...> <level> [OVERRIDE|NOOVERRIDE]
FADER <page>.<id> <level> [OVERRIDE|NOOVERRIDE]  (a bare <id> uses the selected page)
A THRU range must stay on one page: FADER 2.1 THRU 2.6 50 is fine, 1.5 THRU 3.2 is not.
  • Level runs 0.0-100.0; ids take THRU and + expressions.

FLASH

FLASH <ids...> ON|OFF
FLASH <page>.<id> ON|OFF  (a bare <id> uses the selected page)
  • Ids take THRU and + expressions; a THRU range must stay on one page.

PAGE

PAGE <n>  (select fader page n; n must be a whole number 1 or greater)
PAGE  (print the selected fader page)
  • Every page’s faders stay live - changing page only changes which faders the GUI shows and which faders a bare <id> refers to.

MASTER

MASTER GRAND <level>
MASTER GROUP <ids...> <level>
MASTER GRAND RESET
MASTER GROUP <ids...> RESET
  • Level runs 0-100; group ids take THRU and + expressions.

RELEASE

RELEASE ALL FADERS (fade down all active faders)
RELEASE FIXTURE <ids...|SELECTED> FROM TARGET <id|name>  (unbind fixtures from a target)
RELEASE GROUP <ids...> FROM TARGET <id|name>
RELEASE FROM TARGET <id|name>  (unbinds the current selection)
  • Shorthand: the FIXTURE and TARGET keywords may be omitted, so ‘1 THRU 4 FROM 3’ means the same thing.

BLACKOUT

BLACKOUT [ON|OFF]

EMERGENCY

EMERGENCY [ON|OFF]

MUTE

MUTE ON|OFF
MUTE FIXTURE|GROUP <ids...> ON|OFF

PANIC

PANIC (kill all cuelists, release all faders, stop all SFX, clear programmer)

Targets and aiming

Points in the room, and pointing fixtures at them.

TARGET

TARGET CREATE [<id>] [NAME <name>] POS <x> <y> <z> [CALIBRATE <1-4>]
TARGET UPDATE <id|name> POS <x> <y> <z>
TARGET UPDATE <id|name> NAME <name>
TARGET UPDATE <id|name> CALIBRATE <1-4>|REMOVE
TARGET MOVE <id|name> POS <x> <y> <z>  (move it live; captured fixtures follow, nothing is saved yet)
TARGET SAVE <id|name>  (keep where a live move left it)
TARGET REVERT <id|name>  (put it back where the show holds it)
TARGET LIST
TARGET DELETE <id|name> [FORCE SNAPSHOT|MATERIALIZE]
CREATE TARGET [<id>] [NAME <name>] POS <x> <y> <z> [CALIBRATE <1-4>]
UPDATE TARGET <id|name> POS <x> <y> <z>
UPDATE TARGET <id|name> NAME <name>
UPDATE TARGET <id|name> CALIBRATE <1-4>|REMOVE
CAPTURE FIXTURE <ids...|SELECTED> AT TARGET <id|name>
CAPTURE GROUP <ids...> AT TARGET <id|name>
CAPTURE AT TARGET <id|name>
RELEASE FIXTURE <ids...|SELECTED> FROM TARGET <id|name>
RELEASE GROUP <ids...> FROM TARGET <id|name>
RELEASE FROM TARGET <id|name>
LIST TARGETS
DELETE TARGET <id|name> [FORCE SNAPSHOT|MATERIALIZE]
SHOW TARGET <id|name> | SHOW TARGET WINDOW [<id|name>] | WHERE TARGET <id|name>
AIM FIXTURE <ids...|SELECTED> AT TARGET <id|name>
  • Aliases: TARGET CREATE / STORE TARGET / RECORD TARGET, TARGET UPDATE, TARGET LIST, TARGET DELETE.

AIM

AIM FIXTURE <ids...|SELECTED> AT TARGET <id|name>
AIM GROUP <ids...> AT TARGET <id|name>
AIM HEAD <fixture.head-number...> AT TARGET <id|name>
AIM AT TARGET <id|name>  (aims the current selection)
  • Takes the same selection clause as SELECT and CAPTURE, with THRU and + id expressions.
  • Shorthand: the FIXTURE and TARGET keywords may be omitted, so ‘1 THRU 4 AT 3’ means the same thing.
  • Compare CAPTURE, which keeps the fixtures bound to the target; AIM aims once and lets go.

CAPTURE

CAPTURE FIXTURE <ids...|SELECTED> AT TARGET <id|name>
CAPTURE GROUP <ids...> AT TARGET <id|name>
CAPTURE HEAD <fixture.head-number...> AT TARGET <id|name>
CAPTURE AT TARGET <id|name>  (captures the current selection)
  • Binds fixtures to a target so their pan/tilt keeps tracking it.
  • Takes the same selection clause as SELECT: FIXTURE/GROUP/HEAD in any order, with THRU and + id expressions.
  • Shorthand: the FIXTURE and TARGET keywords may be omitted, so ‘1 THRU 4 AT 3’ means the same thing.
  • Groups resolve to their member fixtures, because a target owns fixtures rather than a group reference.
  • Compare AIM, which aims once and lets go; CAPTURE keeps the fixtures bound to the target.

WHERE

WHERE TARGET <id|name>

CALIBRATE

CALIBRATE

The rig

Patching, fixture profiles and the room.

ADD

ADD FIXTURE <id> TYPE <model> [MODE <mode>] AT <univ>/<addr> [POS <x> <y> <z>] [ORI <yaw> <pitch> <roll>]
ADD FIXTURE <id> TYPE <manufacturer> <model> [MODE <mode>] AT <univ>/<addr> [POS <x> <y> <z>] [ORI <yaw> <pitch> <roll>]
ADD SFX <id|NEXT> <pan|tilt|focus|zoom|iris|intensity|capability> [SIZE <0-200>] [CENTRE <0-100>] [RELATIVE|ABSOLUTE] [WAVEFORM <sine|...|pulse|random>] [WIDTH <0-1>] [SPEED <hz>] [RATE <x>] [PHASE <0-1>] [SPREAD <0-1>] [WINGS <n>] [BLOCKS <n>] [DIRECTION <fwd|rev>] [MODE <LATEST|ADD|AVERAGE>] [SEED <n>] [RUNONCE [ON|OFF]] [NAME <text>]
ADD SFX <id|NEXT> CHASE [COLOURS <r,g,b> ...] [GOBOS <slot> ...] [INTENSITY <v> ...] [SPEED <hz>] [STEPFADE <0-1>] [TRAVERSAL <loop|bounce|random>] [RATEMODE <step|whole>] [RUNONCE [ON|OFF]] [NAME <text>]
ADD CUELIST [<name>]

CLONE

CLONE <fixture_id> <new_id> AT NEXT
CLONE <fixture_id> <new_id> AT <univ>/<addr>

EXCHANGE

EXCHANGE <fixture_ids...> TYPE <model> [FORCE]
EXCHANGE <fixture_ids...> MANUFACTURER <manufacturer> MODEL <model> [FORCE]
TYPE also accepts a manufacturer and model together: EXCHANGE 1 TYPE Robe MegaPointe.
  • Takes THRU and + id expressions, so a whole rig can be swapped in one command.

PATCH

PATCH WIZARD
PATCH REPORT [EXPORT <path.csv>]

GENERATE

GENERATE [<GROUPS|PALETTES|PRESETS|SFX|TARGETS>] [PREVIEW]

VISUALISER

VISUALISER ON|OFF
VISUALISER WIDTH <x> DEPTH <y> HEIGHT <z>
VISUALISER GAMMA <0.1-5.0>
VISUALISER RESOLUTION <0.25-2.0>
VISUALISER EXPOSURE <0.1-5.0>
VISUALISER BLOOM <0.0-4.0>
VISUALISER SPOTBRIGHTNESS <0.0-12.0>
VISUALISER BEAMANGLE <0-170>
VISUALISER BEAMBRIGHTNESS <0.1-24.0>
VISUALISER BEAMDENSITY <0.05-8.0>
VISUALISER ANGLEFLUX <0.1-1.6>
VISUALISER FALLOFFDISTANCE <0.1-30.0>
VISUALISER FLARESIZE <0.1-4.0>
VISUALISER FLAREBRIGHTNESS <0.0-16.0>
VISUALISER GLOWSIZE <0.5-20.0>
VISUALISER GLOWBRIGHTNESS <0.0-1.0>
VISUALISER AMBIENTLIGHT <0.0-1.0>
VISUALISER BODYBRIGHTNESS <0.0-1.0>  (how brightly fixture bodies are painted; 0 hides them)
VISUALISER GOBOROTATION <degrees>
VISUALISER BEAM <SIZE|BRIGHTNESS|DENSITY> <value>
VISUALISER LINES <ON|OFF>
VISUALISER SHADOWS <ON|OFF>
VISUALISER HAZE ON|OFF
VISUALISER HAZE DENSITY <0-1>
VISUALISER HAZE SCALE <0.02-2.0>
VISUALISER HAZE SPEED <0-5>
VISUALISER POOL ON|OFF  (pool photometric realism: the whole group)
VISUALISER POOL <FIELD|NOISE|HALATION|PENUMBRA|FOCAL|FRINGE> <0.0-1.0>
VISUALISER POOL FLATNESS <0.0-1.0>  (flat/peaked field bias)
VISUALISER POOL SOURCE <0.1-60.0>  (source size in mm; sets the penumbra floor)
VISUALISER OBJECTS  (open the scene objects editor)
  • Retired (accepted, no effect): FOCUS, SPOTLIGHTSOFTNESS, BEAMEDGE, BEAM EDGE - beam edge softness and spot focus follow each fixture’s own focus attribute now
  • Retired: QUALITY - motion quality is always used

LAYOUT

LAYOUT (open the 2D stage layout editor)

Files

Showfiles and what goes in them.

NEW

NEW

OPEN

OPEN <path.lmx>

SAVE

SAVE [path.lmx]
SAVE PATCH|OBJECTS|NOCUE [path.lmx]

SAVEAS

SAVEAS <path.lmx>
SAVEAS <path.lmx> PATCH|OBJECTS|NOCUE

SAVEASFILE

SAVEASFILE <path.lmx> (alias for SAVEAS)
SAVEASFILE <path.lmx> PATCH|OBJECTS|NOCUE

QUIT

QUIT
  • Aliases: EXIT, Q.

Setup

Configuration and external control.

CONFIG

CONFIG PROGRAMMER HTP|FORCELTP
CONFIG STORE CLEAR|RETAIN|PLAY
CONFIG EXITCUE <number>
CONFIG EXITCUE OFF
CONFIG ARTNET
CONFIG ARTNET ENABLE|ON
CONFIG ARTNET OFF|DISABLE
CONFIG ARTNET BROADCAST <ip>
CONFIG ARTNET VIEWER <ip>|OFF
CONFIG ARTNET UNIVERSE <universes...> ON|OFF
CONFIG USB DMX UNIVERSE <universe> DEVICE <usb-id> [FPS <integer>] [MARGIN <ms>]
CONFIG USB DMX UNIVERSE <universe> PORT <serial-port> [FPS <integer>] [MARGIN <ms>]
CONFIG USB DMX OFF
CONFIG SACN [IP <addr>] [PRIORITY <1-200>]
CONFIG SACN ENABLE|ON
CONFIG SACN OFF|DISABLE
CONFIG SACN UNIVERSE <universes...> ON|OFF
CONFIG GROUP REFERENCE|ABSOLUTE
CONFIG PERFMON ENABLE|DISABLE
CONFIG FPS <integer>
CONFIG MIDI "<name>" [REMOVE]
CONFIG PREMOVE TIME <seconds>
CONFIG PREMOVE LOOKAHEAD <count>
CONFIG TARGET UNREACHABLE ON|OFF|FADE
CONFIG TARGET SAFEZONE <degrees>
CONFIG LINEARMOVE ON|OFF
CONFIG LINEARMOVE MAXPANRATE <deg/s>
CONFIG HIGHLIGHT INTENSITY <0.0-100.0>
CONFIG HIGHLIGHT RED <0.0-100.0> GREEN <0.0-100.0> BLUE <0.0-100.0>
CONFIG HIGHLIGHT GOBO OPEN|NONE
CONFIG LOWLIGHT INTENSITY <0.0-100.0>
CONFIG LOWLIGHT EXCLUDE NONE|<fixture_ids...>
CONFIG BLIND VISUALISER OFF|FULL|PROGRAMMER  (what the local 3D visualiser shows while BLIND; Art-Net always sends the real output)
CONFIG BLACKOUT EXCLUDE NONE|<fixture_ids...>
CONFIG BLACKOUT FADEUP <seconds>
CONFIG EMERGENCY SAVE
CONFIG EMERGENCY FADEUP <seconds>
CONFIG EMERGENCY FADEDOWN <seconds>
CONFIG BACKUPS <count>
CONFIG FADERS <n>
CONFIG AUTOSAVE ON|OFF
CONFIG REMOTE
CONFIG REMOTE ON|OFF  (the phone remote's web page, at http://<this desk>:8765)
CONFIG DISPLAY ZOOM <75|100|125|150|175|200>
CONFIG PRIORITY HIGH|NORMAL
CONFIG MAXLIGHTS <integer>  (how many lights the 3D viewer shades surfaces with)
CONFIG GENERATE REFRESH ON|OFF
CONFIG GENERATE LOOKS <count>
CONFIG GENERATE POSITIONS <count>
CONFIG GENERATE FROM <GROUPS|PALETTES|PRESETS|SFX|TARGETS> <number>
CONFIG GENERATE PALETTECAP <TYPES|SLOTS|MINFIXTURES> <count>
CONFIG GENERATE TOLERANCE <metres>  (how far apart fixtures can sit and still count as one bar)
CONFIG GENERATE HEIGHT <metres>  (the same vertically; looser, because a hung fixture's stored Z depends on its own body size)

MAP

MAP MIDI "<name>" <channel> <control> TO FADER <n>|<page>.<n> [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> <control> TO GO [<cuelist>] [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> <control> TO FLASH <n>|<page>.<n> [LATCH] [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> <control> TO PAN|INTENSITY|TILT|PAN_FAN|TILT_FAN [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> <control> TO COMMAND "<text>"
MAP MIDI "<name>" <channel> <control> TO TAP FREQUENCY <id>
MAP MIDI "<name>" <channel> <control> REMOVE
MAP MIDI "<name>" <channel> CC|NOTE <number> TO FADER <n>|<page>.<n> [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> CC|NOTE <number> TO GO [<cuelist>] [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> CC|NOTE <number> TO FLASH <n>|<page>.<n> [LATCH] [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> CC|NOTE <number> TO PAN|INTENSITY|TILT|PAN_FAN|TILT_FAN [FEEDBACK [<channel> <control>]]
MAP MIDI "<name>" <channel> CC|NOTE <number> TO COMMAND "<text>"
MAP MIDI "<name>" <channel> CC|NOTE <number> TO TAP FREQUENCY <id>
MAP MIDI "<name>" <channel> CC|NOTE <number> REMOVE
MAP MIDI DETECT TO FADER <n>|<page>.<n> [FEEDBACK [<channel> <control>]]
MAP MIDI DETECT TO GO [<cuelist>] [FEEDBACK [<channel> <control>]]
MAP MIDI DETECT TO FLASH <n>|<page>.<n> [LATCH] [FEEDBACK [<channel> <control>]]
MAP MIDI DETECT TO PAN|INTENSITY|TILT|PAN_FAN|TILT_FAN [FEEDBACK [<channel> <control>]]
MAP MIDI DETECT TO COMMAND "<text>"
MAP MIDI DETECT TO TAP FREQUENCY <id>
MAP MIDI DETECT REMOVE
MAP KEY [CTRL] [ALT] [SHIFT] <key> GO [<cuelist>]
MAP KEY [CTRL] [ALT] [SHIFT] <key> STOP [<cuelist>]
MAP KEY [CTRL] [ALT] [SHIFT] <key> COMMAND "<text>" [ENTER]
MAP KEY [CTRL] [ALT] [SHIFT] <key> TAP FREQUENCY <id>
MAP KEY [CTRL] [ALT] [SHIFT] <key> REMOVE
MAP KEY DETECT GO [<cuelist>]
MAP KEY DETECT STOP [<cuelist>]
MAP KEY DETECT COMMAND "<text>" [ENTER]
MAP KEY DETECT TAP FREQUENCY <id>
MAP KEY DETECT REMOVE
  • In MAP MIDI, a bare <control> means CC; CC|NOTE names the type. NOTE triggers on note-on velocity (note-off and velocity 0 mean 0); ENCODER is CC-only
  • The MAP MIDI FEEDBACK clause takes [CC|NOTE] [<channel> <number>] and defaults to the trigger type, channel and number
  • With MAP MIDI DETECT a small window waits for you to touch a control on an open MIDI input, and uses its device, channel, type and number
  • With MAP KEY DETECT a small window waits for you to press the combination, and rejects one it cannot map without closing
  • Keys for MAP KEY: single char, F1-F12, numpad NUM0-NUM9 / NUM+ NUM- NUM* NUM/ NUM. NUMENTER
  • Named keys for MAP KEY: HOME END PGUP PGDN UP DOWN LEFT RIGHT INSERT DELETE ENTER TAB BACKSPACE SPACE ESC
  • Keys MAP KEY accepts with no modifier: F1-F12, all numpad keys (NUM0-NUM9 NUM+ NUM- NUM* NUM/ NUM. NUMENTER), HOME END PGUP PGDN INSERT DELETE TAB ESC
  • All other keys (characters, arrows, ENTER, BACKSPACE, SPACE, SCROLLLOCK, MENU) require CTRL or ALT

DEBUG

DEBUG MIDI
DEBUG PLAYBACK ON|OFF
DEBUG PATCH ON|OFF
DEBUG

The beta

Telling us when something is wrong.

REPORT

REPORT  (open the beta issue report window)
  • The window takes a one-line description and a longer account of what you were doing, and offers to send your recent commands and your showfile with it
  • Reports appear at lmxlighting.com/reports, under the user menu as Beta Issue Reports

Looking at things

Every way of asking the console what it thinks.

HELP

HELP [<command>]

LIST

LIST FIXTURES
LIST GROUPS
LIST PRESETS
LIST PALETTES
LIST CUES
LIST CUELISTS
LIST CUELIST
LIST FADERS
LIST FADER
LIST SFX
LIST FREQUENCIES
LIST TARGETS
LIST TARGET
LIST USB
LIST PORTS
LIST MIDI

SHOW

SHOW PROGRAMMER
SHOW PROG
SHOW SELECTION
SHOW CONFIG
SHOW OUTPUT
SHOW ARTNET
SHOW SACN
SHOW USB
SHOW PERFMON
SHOW VISPERF
SHOW PATCH
SHOW MAP
SHOW PRESET <id|name>
SHOW CUE <id> [FULL|RESOLVED]
SHOW CUELIST <id>
SHOW SFX <id>
SHOW FREQUENCY <id>
SHOW FADER <id>
SHOW FIXTURE <id> [CAP <name>] [AT <time>]
SHOW PALETTE <id>
SHOW TARGET <id|name>
SHOW TARGET WINDOW [<id|name>]
SHOW LAYERS
SHOW VARS
SHOW UNDO

INSPECT

INSPECT FIXTURE <ids...> [CAP <name>] [AT <time>]

DUMPDMX

DUMPDMX <universe>

Macros and scripting

Recording, replaying and parameterising commands.

MACRO

MACRO  (list all recorded macros)
MACRO LIST
MACRO SHOW <name>  (show commands in a macro)
MACRO DELETE <name>

PLAY

PLAY MACRO <name> [LOG]  (run a recorded macro; LOG prints each command)

EXPORT

EXPORT MACRO <name> <filename>  (write macro to a JSON file)

IMPORT

IMPORT MACRO <filename> [<name>]  (load macro from a JSON file, optionally rename)

EDIT

EDIT MACRO <name>  (open macro in GUI editor)

INPUT

INPUT $varname "prompt text"

PRINT

PRINT [<text>...]
  • Words print as typed and $variables are substituted: PRINT Cue $cuenum ready.

UNDO

UNDO  (step back through the undo history)

REDO

REDO  (step forward through the undo history)

Aliases

Short forms. Each behaves exactly like the command it stands for.

AliasMeans
?HELP
CFGCONFIG
CLRCLEAR
CONFCONFIG
DELDELETE
EXITQUIT
HHELP
PROGSHOW
QQUIT
RECORDSTORE
REMOVEDELETE
WHYINSPECT

Related topics