This project consists of two RGB DMX light sources with behavior similar to that of a traffic light. DMX1 uses channels 1, 2 and 3, while DMX2 uses channels 10, 11 and 12. The lighting behavior for this exercise is composed of the following three events:


1. DMX1 fades to red as DMX2 fades to green over the course of 10 seconds.


2. DMX1 fades to green as DMX2 fades to red over the course of 10 seconds.


3. Both DMX1 and DMX2 fade to yellow over the course of 10 seconds.


The content of the Control.ini file will look like this:


1     !i1c!edf1:255<10#

2     !i1c!edf2:0<10#

3      !i1c!edf3:0<10#

4      !i1c!edf10:0<10#

5      !i1c!edf11:255<10#

6      !i1c!edf12:0<10#

7      !i2c!edf1:0<10#

8      !i2c!edf2:255<10#

9      !i2c!edf3:0<10#

10    !i2c!edf10:255<10#

11    !i2c!edf11:0<10#

12    !i2c!edf12:0<10#

13    !i3c!edf1:255<10#

14    !i3c!edf2:255<10#

15    !i3c!edf3:0<10#

16    !i3c!edf10:255<10#

17    !i3c!edf11:255<10#

18    !i3c!edf12:0<10#


Line 1: If input 1 is closed (!i1c) the DMX channel 1 (Red) is commanded to fade (!edf1) to the value of 255 (to represent true red) within 10 seconds.


Line 2: If input 1 is closed (!i1c) the DMX channel 2 (Green) is commanded to fade (!edf2) to the value of 0 (to represent true red) within 10 seconds.


Line 3: If input 1 is closed (!i1c) the DMX channel 3 (Blue) is commanded to fade (!edf3) to the value of 0 (to represent true red) within 10 seconds.


Line 4: If input 1 is closed (!i1c) the DMX channel 10 (Red) is commanded to fade (!edf10) to the value of 0 (to represent true green) within 10 seconds.


Line 5: If input 1 is closed (!i1c) the DMX channel 11 (Green) is commanded to fade (!edf11) to the value of 255 (to represent true green) within 10 seconds.


Line 6: If input 1 is closed (!i1c) the DMX channel 12 (Blue) is commanded to fade (!edf12) to the value of 0 (to represent true green) within 10 seconds.


Line 7: If input 2 is closed (!i2c) the DMX channel 1 (Red) is commanded to fade (!edf1) to the value of 0 (to represent true green) within 10 seconds.


Line 8: If input 2 is closed (!i2c) the DMX channel 2 (Green) is commanded to fade (!edf2) to the value of 255 (to represent true green) within 10 seconds.


Line 9: If input 2 is closed (!i2c) the DMX channel 3 (Blue) is commanded to fade (!edf3) to the value of 0 (to represent true green) within 10 seconds.


Line 10: If input 2 is closed (!i2c) the DMX channel 10 (Red) is commanded to fade (!edf10) to the value of 255 (to represent true red) within 10 seconds.


Line 11: If input 2 is closed (!i2c) the DMX channel 11 (Green) is commanded to fade (!edf11) to the value of 0 (to represent true red) within 10 seconds.


Line 12: If input 2 is closed (!i2c) the DMX channel 12 (Blue) is commanded to fade (!edf12) to the value of 0 (to represent true red) within 10 seconds.


Line 13: If input 3 is closed (!i3c) the DMX channel 1 (Red) is commanded to fade (!edf1) to the value of 255 (to represent yellow) within 10 seconds.


Line 14: If input 3 is closed (!i3c) the DMX channel 2 (Green) is commanded to fade (!edf2) to the value of 255 (to represent yellow) within 10 seconds.


Line 15: If input 3 is closed (!i3c) the DMX channel 3 (Blue) is commanded to fade (!edf3) to the value of 0 (to represent yellow) within 10 seconds.


Line 16: If input 3 is closed (!i3c) the DMX channel 10 (Red) is commanded to fade (!edf10) to the value of 255 (to represent yellow) within 10 seconds.


Line 17: If input 3 is closed (!i3c) the DMX channel 11 (Green) is commanded to fade (!edf11) to the value of 255 (to represent yellow) within 10 seconds.


Line 18: If input 3 is closed (!i3c) the DMX channel 12 (Blue) is commanded to fade (!edf12) to the value of 0 (to represent yellow) within 10 seconds.


NOTE 1: The left numbered column is for reference only (not part of the actual coded statement).

NOTE 2: The : and < characters are used a delimiters separating the command, the R, G, or B intensity and the fade time as such command:intensity<fade time.