Contact HMS Store Manager

Goto HMS-Brightsign Home Page

Contact HMS Technical Support

HMS Home Logo

For Brightsign Units (or computer) with USB Port

DMX512 with 'HMS Protocol'

     USB-DMX Interface 
HMS-USB-DMX Board

HMS Firmware Protocol DMX512 Controller

Features:

Description of Operation:
This board is used to interface to any BrightSign with a USB port. 

Serial Transmission 'Break' Protocol:  The USB port (BrightSign) has to allow 20 milliseconds to elapse between serial data 'bursts' going out.  This 20 millisecond 'rest' time is interpreted by the HMS board as a 'Break' in serial transmission.  This 'Break' condition synchronizes the HMS board to the serial transmissions from the BrightSign (or other device).

New Command Selection for HMS Protocol:  The first byte received by the HMS board (after 'break condition') sets the receive protocol command.  This new protocol simplifies how many bytes to send from the BrightSign because the DMX parameter is selectable! The bytes are enclosed in brackets [ ].  Note: 'Speed' = Rate of Fade.

Note: See the 'Not HMS Protocol' for simple DMX control (no fade) near the bottom of this specification sheet.

*********Play/Record and Other 'Scene' Commands 32-36

Link to 'Scene Format (Protocol)'

********Miscellaneous Commands (Useful for Development)

*1: 'End Command' means that this was the end of the command and another command can be part of the same string (no 'Break' required) 
I.E. Turn on DMX channel 1 100%, Turn on DMX channel 50 100%   [22,1,255,22,50,255]  (Two command22's in succession)

Notes:

To Send Multiple Commands (not concatenated) , Send 1 command, then pause for 10 milliseconds, then send the next command and pause and so on except where designated above.
I.E. if selecting Command12 (Set all 16 DMX fade values): Note if all 16 values are sent then the next Command can be part of the string.
I.E.  [15,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,'new Command#','bytes for that Command]

Note: Fast Flash of the 1Hz LED (3 Hz).  When any command is terminated with 'Break', fast flashing occurs.  When a command is sent incomplete or out of range, (I.E. set fade for channel 30), because channel 30 is out of range, fast flashing is set.  Fast Flashing is cleared upon complete reception of a command not requiring the 'Break' condition.  I.E. Send 'Command0', to clear the fast flashing after 'Break'.

DMX512 Operation:  The DMX first 4 to 'Max Channels' channels (see command31) are sent every .8 seconds if Option2) or whenever the DMX 'Channel' bytes change (resulting in instant DMX output).  The DMX512 protocol is so fast that the entire 256 (256 channels) channels of DMX data can be sent out during 12 milliseconds.

DMX512 and Fade:  In order to get good fade action, the 'Max Channels' should be set to maximum of 24 channels.  It takes about 1.2 milliseconds to send 24 channels.  So if 48 channels is selected, it takes 2.4 milliseconds to send the channels.  Then, the brightness can only be 'adjusted' every 2.4 milliseconds (not every millisecond).  The DMX bytes are sent out immediately after a brightness change (caused by a 'fade' change).

DMX 'Head' Operation.  If a DMX dimmer pack is utilized, setup the dimmer pack to utilize channels 1-4.  Then set the DMX 'Head' start channel to 5 (or whatever channel is allowed).  If the DMX 'Head' is the only DMX device, then set the 'Head' channel to channel 1.  If the DMX 'Head' protocol expects to receive 20 bytes (20 channels) then all 20 of those bytes need to be sent with each DMX 'Head' command sequence.  Likewise, when using the BrightSign to control the DMX Head, the BrightSign should send all 20 DMX bytes with each Serial Send() command. If the DMX512 'Head' can only be set for 'even addresses' or multiples of a number (I.E. 20,40,60) then the bytes for that address (channel) will have to start at the address or channel set as the base channel.

DMX 'Play Scenes'.  A 'scene' file can be created and stored on the SD card.  BrightScript would be used to interpret the 'scene file'.  Any number of scenes could be stored on the SD card.  Contact the BrightSign people if you need help with this programming.

Diskette DMX_Demo.AVI (84 mega byte movie demo)                  Diskette  DMX_Demo.mov 6MB (requires Quicktime)    Link: Setting up the Serial Port and Sending Bytes with 'BrightAuthor'.

DisketteUSB-DMX-Cycle.brs (sequences channels 1 thru 8 on). Rename this file to 'autorun.brs' and put it on the SD card

*****************************************************************

Not HMS Protocol:

With Option 1 on (SW1-1) the 'Not-HMS Protocol' is used.  Instead, a simple protocol is used and no Fade!  This protocol uses the 20 millisecond 'break protocol'.  After 20 milliseconds the pointer is reset to DMX channel 1.  To set channels, just send the 4 bytes for the 4 channels (or more bytes if more channels).

 

Note: Fade Command makes 'Fading the lights on and off' an easy task if utilizing a DMX Dimmer Pack.  To Fade up lights just output 0xFF ( 255 decimal) for the channel value for DMX Ch 1 to 24)  To Fade down the lights, just output a zero (decimal) for the channel value and the brightness will Fade down at 20 millisecond intervals or at the rate specified with the speed setting.

Note: Fade Speed: The Fade speed value is the number of milliseconds to increment (increase brightness by '1') or decrement (decrease brightness by '1') of the channel value.  If the channel value is 255, and the speed value=20, then it takes 20 milliseconds for each step or 5.1 seconds to obtain full brightness (0 to 255).  If the Fade Speed is zero, the new channel value is output immediately to the DMX channel.  So if the channel value was 0, then 255 and the speed value is 255 (255 milliseconds per step of 1),  then it will take 65535 milliseconds (255 times 255) to finish Fade (1092 seconds).  You may want to keep the value below 50.

*****************************************************************

New 'AutoRun' Feature version 7.x firmware.

With firmware 7.0 and up, there is a new feature that enables 'auto run' of a scene.  This feature will allow running of a 'scene' on power up.  Scene 48 is dedicated for this purpose.  If scene 48 is setup as 'play scene' command, then that scene is 'played' on power-up. This means that you can set any DMX scene to 'play' when power is applied.  This is useful when 'stand alone' use of the board is required (no BrightSign to control it).

Scene 48: Set scene 48 to run another scene using the 'Play Scene' command.  Scene 48 is checked on power-up to determine if 'Auto Play' is enabled.  I tested this feature using Scene 47 to initialize the 4 first channels of DMX.

Scene 48 set as follows: 32,47,0,204 (play scene, scene47, loop-count = 0, 204 (verify byte).  Use command 33 to record scene 48.  I.E.  33,48,204,32,47,0 (note the 204 is the verify byte of the command, the scene bytes follow).

Example Scene 47:
First set up default fade (if required), then initialize the first 4 DMX channels.  This is done with two 'concatenated' commands.  First command (set default fade) is 19,0,204,170 (command 19, fade 0, 204 'varify byte',170 'end command'.  The second command is 'set successive DMX channels' (command 26)  I.E. 26,4,1,255,255,255,255,170.  Command 26, 4 channel bytes to follow, starting channel (channel 1), 4 channel values, 170 = end command.
Use command 33 to record scene 47:  I.E. 33,47,204,19,0,204,170,26,4,1,255,255,255,255,170.  Note: you can skip the 4 bytes of command 19 if you don't want to set the default fade.

Note: If SW1-1 is on (option 1) (not HMS Protocol), then the 'AutoRun' feature is disabled on power up.  This 'bypass' is provided in the event that the 'record scene' caused a 'lockup' of the program.  You can turn the switch back off after power-up to re-enable 'HMS Protocol' so that the recorded scene can be reviewed.  I provided this feature because I forgot to use the 170 to indicate 'end of command'.  So I got 255 for minutes of pause!

Note: Power is supplied via the USB Bus.  The board draws about 20 milliamps of current

Last Revised: 03/02/2024