The easiest possible way to monitor a DMX-512 data stream.
For quite some time now, systems integrators all over the world have used our RS232 Driven DMX engine to allow their serial-based control systems to elegantly, easily, efficiently and inexpensively drive DMX equipment.
However, it happens every month or two that customers need their serial-based systems to receive DMX. A common installation would be in a church or auditorium, where the house lighting or foyer lighting systems are controlled by a 0-10v system, or perhaps something by Lutron. Often these systems are based on architectural control signals, rather than the entertainment standard of DMX. In these cases, the installers want the DMX console to be able to control the house lighting during shows.
So it becomes useful for a building-wide Crestron or AMX system to receive and process a small subset of DMX channels.
Enter the DecaBox, with ‘DMX to ASCII’ firmware. This is a build we’ve shipped (in various forms) to many different integrators over the years. It’s been standardized, tested and proven to work in a stable and transparent way.
Using the front panel pushbuttons, DMX channels for the ‘start’ and ‘end’ of a DMX range are chosen. This range can be as small as a single channel, or as large as an entire universe. These two numbers are of course stored in permanent memory for use at any time in the future.
Then, the DecaBox monitors an incoming DMX signal. If a channel within the specified range changes its value, a simple RS232 string is transmitted:
CH X = Y[cr]
…where X and Y are decimal numbers, and [cr] is a carriage return, $0D or decimal 13.
Only one string is generated for each DMX transition. The DecaBox then waits for another transition within the required range. We’ve learned over the years that a continuously streaming RS232 signal can quickly overload the inputs of most control systems.
Here’s a screenshot which shows RS232 output when three different faders on a DMX console are varied:
This syntax, being space and [cr] delimited, is extremely easy to parse and process from within AMX, Crestron, and similar systems.
There’s also a query command which can be sent by the RS-232 device. In this case, the state of all monitored channels is returned. This is useful in cases where a constantly running RS-232 stream may not be desired. For example, some control systems have small serial buffers which would be easily overwhelmed.
Both the streaming mode and query mode can be toggled via RS-232 commands.