Gilderfluke&Co DMX-512, Serial, and MIDI Output Smart Bricks User Manual

Page 20

Advertising
background image

sent from the animation data. The disadvantage of this feature is that it takes as one frame of
time for each entry ion the string to be buffered in before it can be sent. A 200 character
long string will take 202 frames of data to build up and send out. This translates to almost
seven seconds at 30 FPS.

Data for these strings is typically hand entered using PC¥MACsÕ OffLine editing tools. The

target channel may be defined as either a single eight bit analog or as eight separate digital
functions within the same byte. If it is defined as an analog, you can use the ÔSet to a Value...Õ
commands to enter each frame of the string (be sure to turn off the ÔCut/PasteÕ options under
the ÔPreferencesÕ pulldown). If it is defined as eight digital channels, you can just draw in the
binary data as needed.

j)

MIDIÊ Keyboard Channels: This is a MIDI Mode specific command. MIDI was designed for
sending data from electronic keyboards and instruments to one another. This feature allows
you to define sixteen consecutive bytes of animation data (128 digital bits) to emulate a MIDI
keyboard. This command sets the address of the first byte used in this way. The other fifteen
bytes follow immediately. If you set this value to 255/0FFh, this feature is disabled.

Once the address is set using this command and the configuration mode exited, the BS-

Serial will start monitoring for any changes in these sixteen bytes. Any bit that goes high will
trigger a MIDI Ôkey downÕ string to be sent. any bit that was high and goes low will trigger a MIDI
Ôkey upÕ string.

Normal keyboards only have 88 keys. The 128 digitals monitored by the BS-Serial are

mapped with a standard keyboard right in the middle. Middle ÔCÕ is found on the 60th digital.
This translates to bit four of the seventh byte that is being monitored.

Each of the MIDI key up/key down strings is three bytes long. At the relatively slow 31,250

baud rate MIDI uses (3125 bytes per second), it is possible to overrun the 256 byte long buffer
used for sending data from the BS-Serial. Be aware that the low speed of a MIDI serial stream
means that it will take almost 1/10 of a second to send out 256 bytes of data. The following
are the rules for MIDI:

1)

DonÕt make more than 85 key changes on any one frame of animation data. The last
bits wonÕt be turned on or off until almost 1/10th of a second later (3 frames after the
first bit changed, at thirty FPS).

2)

You can not send more than 1041 MIDI key up/key down sequences per second.

3)

At thirty FPS, the average number of changes on each frame should not exceed 34.

4)

MIDI has no error detection or correction built in. There is no guarantee that any com-
mand will ever reach the device that the BS-Serial is controlling through a MIDI output.
If a MIDI Ôkey downÕ sequence is missed, the output will remain off until another MIDI
Ôkey downÕ is received for the same output. If a MIDI Ôkey upÕ sequence is missed, the
output will remain stuck on until another MIDI Ôkey upÕ is received for the same output.
Do not use MIDI for any safety related equipment.

5)

MIDI wiring standards allow for a MAXIMUM wire length of fifty feet. The longer the wire,
the better are the chances that MIDI messages will be missed or garbled. A MIDI re-
ceiver canÕt tell a garbled MIDI message from a perfectly good one.

The above are all shortcomings in the design of any MIDI system. They come directly from

the MIDI standards. These are the reasons why MIDI is not used for any professional animation
control systems.

Just for some contrast, at the typical thirty frames per second that a Gilderfluke Animation

Control System operates at, there is no limitation to the number of digital functions that turn
on or off at one time. With 2048 digitals controls, there can be 2048 on and off events per
frame, or 61,440 on and off events per second. If there is any error in the data stream, the
outputs will not be updated with this bad data and the corrected data will be output on the
next frame (typically 1/30th of a second later). Recommended wire length without any addi-
tional hardware is one mile.

k)

Voice, Press Velocity, and Release Velocity: This is a MIDI Mode specific command. This
command is used to set which of sixteen possible MIDI ÔinstrumentsÕ the key commands are

G

ILDERFLUKE

& C

O

.¥ 205 S. F

LOWER

S

T

. ¥ B

URBANK

, CA 91502 ¥ 818/840-9484 ¥ 800/776-5972 ¥

FAX

818/840-9485

20 of 48

Advertising