
LXConsole can send and receive DMX signals through connections via USB and Ethernet. USB requires an ENTTEC DMX USB Pro interface. Ethernet can be either Art-Net or streaming ACN DMX E1.31.
Addresses can either use LXConsole's patch or be sent directly as channels (1:1).
Zero output when quitting will set all output dimmers to zero when you quit the application.
Output Speed controls how fast the output updates. The speed ranges from 20 to 40 times a second. When sending multiple universes, sometimes the speed needs to be reduced if the network or receiving hardware seems to lag.
LXConsole supports several types of USB DMX interfaces including ENTTEC DMX USB Pro, ENTTEC DMX USB Pro mk2, DMX King ultra DMX Pro and uDMX. The different "Pro" interfaces are selected from the list of APIs. (The API selection does not matter if using a uDMX device.)
The USB interface must be selected from the list of driver connections. A uDMX device (www.anyma.ch) requires libusb-compat to be installed. When libusb-compat is installed, you can select output through a uDMX from the USB DMX Connection popup. This will appear even if a uDMX device is not connected. The easiest way to install libusb-compat is to use Homebrew. There is a script tool available from the LXConsole->Install Extras submenu that will install Homebrew (if necessary) and then use that to install libusb-compat.
The "USB DMX Pro" type devices use drivers for an FTDI USB communication chip. These driver connections are listed in the USB DMX Connection popup. There are two types of FTDI drivers for the DMX USB Pro devices. The VCP driver connections show up as a list of names that start with "cu.usbserial" and are supported by an Apple USB Serial driver. The D2XX driver uses the first DMX USB PRO or FTDI connection it finds.
The D2XX driver is faster and more tolerant of plugging and unplugging the widget than the Apple VCP driver. The D2XX driver may require d2xxHelper to also be installed. The D2XX connection will appear if the D2XX driver is present even if a device is not connected. The VCP connections are only present in the popup list when a device is actually plugged in and available. The LXConsole->Install Extras submenu contains a command that opens the download page for FTDI d2xx drivers.
LXConsole can send and receive DMX through a network connection using either the Art-Net or sACN protocol. The IP Interface popups allow you to select the network service to use for each protocol (eg. ethernet or airport). Select automatically will search for an available network service that matches the output protocol.
Art-Net was designed to use a switch to choose one of two networks with an static class-A IPv4 address, either 2.x.y.z or 10.x.y.z This requires a subnet mask of 255.0.0.0. However, any Art-Net devices on the same network should be able to communicate. The devices must match the network portion of their IPv4 addresses (ie. the octets marked as 255 in the subnet mask must be the same in both of the devices' IPv4 addresses).

LXConsole supports output of up to two universes of DMX via USB. Or, up to twelve universes via ethernet using Art-Net or e1.31 sACN. The interfaces to be used for output are enabled in the DMX Out tab.
Art-Net and sACN have standard methods for communicating with nodes on the network. Art-Net broadcasts a poll and then directs messages to discovered devices. sACN uses a multicast address based on the DMX universe. Both protocols can also send directly to a specified address. The "Send to address" field for Art-Net can be automatically set with a broadcast address. This allows nodes on the same network to receive all universes sent. (Broadcast was used exclusively in Art-Net I and II.)
LXConsole's patched addresses (1-12.512) can be sent to any sequential 12 output universes via Art-Net or sACN 1.31. However, the numbering of universes is different depending on the protocol. The first universe is 0 for Art-Net and 1 for ACN. Art-Net uses a Port-Address which is Net + Subnet + Universe. sACN uses a single number to represent a universe.

When output is set to Art-Net, you can view a table of nodes that have been discovered on the network. LXConsole directs the appropriate universe to the nodes advertising endpoints in the subscriber list (unless the "Send to address:" option is enabled). Sending to a selected node can be temporarily disabled using the window's popup menu. Commands in the popup also allow control/configuration of Art-Net nodes via ArtAddress packets.
The USB DMX output address space is always the first universes. The USB DMX interface will output addresses 1-512 or 1-1024 if it supports two universes. These addresses can start at any point in LXConsole's address space. If the Local Start Address field is set to 512, LXConsole's dmx address 513 will be output as the USB interface's address 1.
The network interface/protocols map addresses up to 12.512 (6144) to a series of consecutive universes. The first of these universes, will get output from 1-512 in LXConsole's patch. This continues consecutively with address 513 in LXConsole corresponding to address 1 in the next Art-Net/sACN universe.
The sACN output can be set to send either all of the patched universes. Or, only a single one of LXConsole's universes. This can help reduce network congestion if only a single universe is desired, When using the default Art-Net 3 discovery, Art-Net nodes on the network will only receive the universes that they are configured to receive.

LXConsole supports receiving data as a DMX universe via USB or Ethernet. The interface and protocol is selected in the DMX In tab. The numbering of universes is different depending on the protocol. The first universe (1-512) is 0 for USB and Art-Net while it is 1 for ACN. Art-Net uses a Port-Address which is Net + Subnet + Universe. In LXConsole, the universe preference is 0-15 matching Art-Net. The subnet preference is the Art-Net subnet (0-15) plus 256 * the Art-Net net.
LXConsole can continously monitor DMX input. Monitoring DMX input can take processor time and interfere with other applications and possibly ability to control the computer if fast refresh is selected.
The Monitor DMX option allows File->Import->DMX to continuously listen for DMX input. The current cue is modified each time DMX is received. When monitoring, received DMX is repeated out the DMX Out connection.
LXConsole can either use its patch or it can send and receive interpreting DMX addresses directly as channels.
When no MIDI actions are defined, MIDI can trigger a go with a simple "note on". LXConsole's live window can also respond to MIDI messsages sent on channel 16. When enabled, note on 1=Go, 2=Stop, 3=Back and 4=Hold. This is compatible with a www.teamsound.nyc Go Box .
MIDI show control "go" messages are sent when the Live window executes a GO. MSC out messages target the device ID and command type set in the MIDI/OSC tab. They specify the same cue number as the LXConsole cue being run. MSC messages can also be sent using an individual cue's script action. Individual MSC messages associated with a cue allow flexibility to target other devices, command types and cue numbers. If you do not want to send an MSC message with every cue, you can set the command type to "none" and use the script action of individual cues instead.

LXConsole can respond to OSC messages sent via a UDP network connection. OSC action commands can be added to a file using the Setup window. Messages with an address that begins with "/cmd.lxconsole/" can have the remainder of the address interpreted as a command line command. Messages with an address that begins with "/key.lxconsole/" will send an individual keystroke to the command line.
LXConsole can also respond to OSC messages with addresses that begin with "/cue/" such as: "/cue/n/start", "/cue/n/pause", "/cue/n/stop". In the case of pause and stop, the cue number is ignored and the currently running cue is paused or stopped.

LXConsole is also able to send OSC messages to a connection advertised as available using bonjour. Service names can be chosen using the combo box. "*" is a wildcard that will connect to any OSC connection advertised by bonjour. When making a connection using bonjour, the receiving service should be enabled before turning on LXConsole's OSC Out. A specific ip address and port number can also be specified by typing the address:port eg. "127.0.0.1:9000" into the combo box.
A second auxiliary output address can be specified. When the aux out address:port is present, OSC out messages are directed to both the main and second addresses.
Send sub/master/manual change sends a message when the level of a sub or the master or manual fader is changed. A message for a sub change follow the form, /cmd.lxconsole/SUB-n. Messages for a master of manual change follow the form /cmd.lxconsole/master@%p and /cmd.lxconsole/manual@%p. Actions with these commands specified in the document's OSC actions table will send their corresponding trigger message as well.
Echo command line and cue fade info sends a message addressed to /1/cmdline with the current text of the command line when a /key.lxconsole/k message is received or the command line is changed by typing. It also causes a message addressed to /2/next_cue to be sent when the live window's next cue field is changed. When a cue is started and finished, this option causes message to be sent to the address /2/running_cue. If the Send sub/master/manual change option is also selected, messages will be sent to /2/running_cue with the progress of the fade as well. This option also enables sending a message to /1/dimmer with the current dimmer check dimmer as a string.
Send channel changes defined in actions enables updates whenever channels change. When this is selected and channels have changed, LXConsole looks in the OSC actions for commands that match chan@%p or chan@%f. When a match is found, it sends the triggering OSC message with the channel's level as data.
Send all channels when changed causes a message with an "/lxchannels/" address and a binary blob as the only parameter to be sent whenever channel levels change. These /lxchannels/ messages can be received by LXBeams. The /lxchannels/ message has a parameter consisting of a 12 bytes for each non-zero channel. If more than 290 channels have levels, multiple /lxchannels/ messages are sent to avoid size limits on the packet buffer. The 12 bytes representing each channel/level consist of a 4 byte integer for the channel, a 4 byte integer for the sub-channel, and 4 byte float for the level. When more than one /lxchannels/ message is sent, all but the last message will have 12 bytes of zeroes at the end of the parameter indicating more messages representing the current state are coming.
When OSC communication is bi-directional, incoming messages are prevented from initiating an outgoing message, which could possibly cause a loop. Disable loopback prevention should only be used when the incoming source and outgoing destination are different.
The Forward to: option will send any unrecognized OSC messages that are received to the address:port specified in the field. If the address:port field is blank and the option is enabled, unrecognized messages will simply be sent to the main OSC out address.
The Setup window's OSC Out tab can have a special destination extShowControl which is used to send a "/cue/##/start" OSC message when cue ## is played using a Go command. This is similar to how MIDI Show Control out works when it is enabled.

If the Require minimum time between GOs option is checked, LXConsole will not initiate another cue for 1/2 second after a cue is triggered.
The Unmark live channels on GO option causes all marked channels in the Live display to be unmarked when a cue is played using the Live window's Go button or a Go command is initiated by MIDI or Applescript. Marked channels in the live display override the levels of cue playback until they are released (unmarked).
The Mark overrides submaster level option causes marked channels in the live display to override submaster levels in addition to cue levels.
The Execute cue actions in quick mode option will allow triggering of cue actions even when skipping through cues in quick mode.
You can assign keys to the buttons in the Live window. When a key is pressed to control a live window button, you can require a minimum time to pass before another key press will trigger an action. This prevents acidental double go commands from being sent. But it also means that the quickest you can trigger two cues is about 1/2 second apart.
The Toolbar Button popup allows you to select the function of the second button found in the "Live Items" group of the document's toolbar.