i n s t r u m e n t

developments

julean simon

 

dmx_control

written 2007-11 by j.simon using MAX/MSP. curr vers.1.1 (MacOS)

abstract:
DMX512 is a standard to control e.g. stage-light in realtime e.g. via midi. dmx_control is a program to assign particular signals to connected equipment and to manually/automatically control its behavior in real-time. It also allows to quickly change complex lighting-setups in a performance via presets.
keywords and internal links:

DMX, WAX, audio-visual interaction

>Visuelles Feedback im Musikbereich

dmx

Although I tried to supply a certain degree of generality, dmx_control is customized for my performance-equipment:

  • DMX-interface: Enttec DMXUSBPRO (built into the dimmer-pack)
  • Dimmer-pack: Eurolite EDX4
  • several DMX Pars (PS-86 15W, Par64 32W) and non-DMX light-sources and var. electric equipment

All equipment can be replaced by some other, except for the Enttec DMXUSBPRO interface, because dmx_control uses the max/msp-object dmxusbpro by Olaf Mathes.

dmx_control allows to:

  • realtime-control DMX- and non-DMX devices manually, triggered by MIDI-signals (breath, pitch, vel, pitchbend, control), or audio
  • run special algorithms
  • load, save and edit presets
  • control a series of presets for a perfomance

There are two versions of this program, a standalone and one which is a module of the ombOS system, called DMXer.

Note: All UI-elements show their name at mouse-over, so the interface is actually less cryptic than the snapshots might suggest: it comes to life with your interaction.

serial & midi

dev

Selecting the device in the serial-menu starts the dmxusbpro-interface, selecting none stops it.

In order to trigger dmx_control by midi-data, select the midi-device in the midi-device-menu. The left button refreshes the midi-devices in the menu. The right Button is a midi-signal indicator, to see if midi is received.

dmx-channel strip

chan

Each dmx-channel contains the following elements:

  • editable name of the light-source
  • input-source (off, manual, MIDI, etc.)
  • sensitivity (progression-curve, 0=linear)
  • value (of selected input)

e.g. RGB-pots use several (e.g. 5) dmx-channels (R,G,B, intensity and strobe), that form a channel strip, representing one light-source (grey background). RGB can be manually set also with a colorpicker.

If "manual" is selected from the menu, use the value-slider. If other input-options have been selected, the val-slider shows the actual values.

Channel 0 is the master. If the master-channel is set to OFF all other channels behave individually. If the master-cannel is set to an input, it controls all other channels (as long as there is no input from the master the slaves can be controlled individually).

Channel-numbers 1-4 are assigned to the dimmer-ports.

Channel 5-9 and 10-14 are assigned to the 5 channels of a DMX-device (intensity, red, green, blue, strobe). On the DMX1-par the dip-switches have to be set to 101000000000, on the DMX2-par to 010100000000.

preset menu

preset

 

 

 

slots

 

The menu allows to choose a preset. The up/down toggle allows to quickly change between consecutive presets (assuming they are stored in a consecutive order for a performance).

To store a certain channel-setting:

  • check the toggle
  • choose the menu-position, where the preset shall be stored
  • enter a preset-name in the dialog-field

Storing is temporary. To save all the presets to disc, click the first of the three buttons. A file-dialog opens. The presets are stored as xml.

To load a saved set of presets, click the second button. A file-dialog opens. The loaded presets populate the menu.

The third button opens the window storage slots which shows all the settings of all presets, where:

  • n(channel-nr) : name of the connected device at channel-nr
  • m(channel-nr) : input-menu-item selected at channel-nr
  • s(channel-nr) : sensitivity chosen at channel nr
  • r(channel-nr) : manual/range-value at channel nr

In the storage-slot window the data are editable. So settings can be changed without storing them again and changes can be done in several presets at the same time.

input-menu
  • off - disables this channel
  • manual - use the val-slider to set a value. The sensitivity-slider does not do much
  • controlVal -
  • velocity - explosive jumps between 0 and around 100.
  • breath - continuous transition (use it for the intensity-channel to achieve a good match with the sound)
  • pitchbend - rather stable around a center
  • pitch (for single channel) -
  • pitchclass>RGB - sets the color-channels of a rgb-pot to rgb-mode and assigns the pitch-classes to a 12-color cycle, ie. all c's are red.
  • quatertone>RGB - 24-color cycle for quater-tone mappings.

 

colorpicker

to manually choose an RGB-color

if the color on/off-toggle is set to off, the colorpicker controls (more or less) white light.

toggle: black at note-off
This toggle shuts down light at note-offs. If it is not set, then the colorchange has a legato-style.
div. behaviors:

Whitle light: the RGB-channels are set to the same input and value. For a monochrom spectrum change the sensitivity of color-channels.

In manual mode sensitivity has not much influence on the 4 dimmerports. For midi-input sensitivity can achieve significant variation.

setup:
  • connect lights
  • usb-connection with DMX-interface
  • choose serial port
  • choose midiport fireface2 (turn on vl70 to receive midisignal)
  • choose a preset to start, e.g. manual
  • test light-sources with value-slide (intensity)
lustige projekte mit elektrogeraeten

Haegender Ventilator (in Erweiterung des Kunstprojekts von ?), der durch das Spiel mit dem WAX im Schwingen beeinflusst wird.

Foen mit einem Zelophanschlauch

eine Flex, Motorsaege, Heckenschere, Doppelschleifbock, Kreissaege,

 

 

 

programming-wise

 

 

 

TODO

Using the colorpicker directly works as expected, but when sliders are used, the colorpicker shows strange behavior: internal bug or rationale?, that changing an RGB-slider changes the intensity (actually saturation and thereby changes from white to color).

Wondering how to make the application extendible with more channel-strips if necessary. No elegant idea sofar.

change sensitivivity with pitchbend? allerdings muesste es besser skaliert werden

48-color-cycle

camera dazu verwenden um feedbackschleife herzustellen.

NOTES

At first sight color-mapping does not seem to do much more than changing colors and intensity. Well, the prime reason for this app was to be able to realize and experiment with certain light-ideas.

The first showable project will be the integration of light in the remoteInstrument-project, where light will less be used to colorize but to change (the appearance of) the instrument.

It seems that light-control could be interresting in music-practicing, eg. with intervals, or the improvisation in certain color-regions. I could think of exercises where all notes of an chord are assigned the same color-class, so that playing foreign notes will be indicated through the color. What we need here is a (not esotheric but practical) logic of the relationship of color/tones.

Perhaps start with chord/scale-tones as red and foreign tones as green, test with cello-suites....

 

LINKS

Suche nach meoglichst kleinen und billigen, DMX-faehigen RGB-LEDs: DotDMX, traxon Dot XL RGB , leaderlight, DIY transceiver led matrix, RGB LED Stip by DMX, superbrightleds,

BlinkM MaxM - I2C RGB LED not DMX, but interresting...

1R091 verstaerker

 

back to main projects
contact