Welcome to Dasher Help.

Dasher is a software program that will free you from the technical programming side of computer-controlled indoor or outdoor lighting displays, such as those seen at Halloween and Christmas, so you can do more with your creative side.

No longer do you have to worry about how you are going to control your display and have that fact limit the type of display you make.

With Dasher you can do almost anything you want to do. Imagine having a display where you can change patterns on the fly. Why not have a different pattern every night?

The possibilities are limitless! Add to that music synchronization and your display will be the talk of the town!

  • Main Screen
  • Menus
  • Channel addressing
  • Scheduling program
  • Keyboard shortcuts and menu layout
  • Suggestions and recommendations
  • Copyright and author information
  • ChristmasCave web site


Dasher Main Screen

Main screen

The following is a sample screen shot:

Menus

Click here to learn more about the menus.

Last column duration

This allows you to enter the duration of the last column in the grid during playback. The up and down arrows allows you to change values one millisecond at a time. One can also type in a value using the keyboard. Valid values are 0-10000 milliseconds. One 1 second equals 1000 milliseconds.

Progress bar (not shown)

This appears when Dasher performs different functions to let the user know progress is being made. Examples of things that will make the progress bar appear are grid compilation, saving files, opening files, adding columns and rows, etc.

Control buttons

Play button: starts playback of the grid from left to right. The computer must first compile the grid before playback begins. The progress of the compilation is indicated by the progress bar. When the grid is playing a timer will appear directly above the play button indicating time elapsed.

Play range button: asks for a starting and ending time to playback. The computer will first compile the columns you wish to playback. The progress of the compilation is indicated by the progress bar. When the grid is playing a timer will appear directly above the play button indicating time elapsed.

Stop button: is enabled during grid playback and when pushed will immediately stop playback of the grid.

Clear all button: will clear the entire contents of the grid. User confirmation is required if changes have been made and not saved.

Communication ports (serial version only)

Select which communication port the control boxes are connected to This space is left blank on the parallel and CR versions of the software.

Volume control

Move this to adjust the volume of the audio playback. The speaker icon is a toggle button which will mute and un-mute the audio.

Grid

This is where you tell Dasher which lights to turn on or off. If a cell is highlighted that means the channel is on. If a cell is not highlighted the channel is off. Simply click on the cell in order to change it.

If one wishes to change a whole column at a time, simply click on the column header. The column will then be inverted (reversed). The same holds true for rows. However, make sure you don't have Channel Names, Column timing, or Global command(s) options checked. To learn more about these, click here.

It is possible to highlight a portion of the grid in order to change it. Simply click on the grid and then drag the mouse pointer. This will highlight a portion of the grid. When you release the mouse button the selected portion of the grid will invert (reverse).

It is also possible to select the whole grid by clicking on the upper left-hand corner of the grid. Doing this will invert (reverse) the entire grid.

If you don't wish to invert a whole column or row and instead want to select or unselect it, click here.

Status bar

Traveling from left to right the leftmost section of the status bar is where Dasher displays informational messages for the user, such as "Saving...", "Compiling...", etc.

The next sections are indicators of which settings are currently turned on. Clicking on them in the status bar is the same as selecting them from the Settings menu. Follow the previous link to learn more about what they do.

The rightmost section displays the computer's current time.

Return to home


Dasher Menus

 Using the drop down menus in Dasher allows you to access all the features available in the software. Select one of the menus to learn more about it:
  • File menu
  • Edit menu
  • Settings menu
  • Test communcations
  • Help menu


Dasher File Menu

File Menu

Here you will find all of the usual options:

New

This opens a new file in Dasher. If any changes have been made to the file that is currently open when this option is selected, you will be prompted as to whether you'd like to save the current file before creating a new file. The default settings for a new grid are 16 columns and 1 control box (8 rows). The columns are timed 1 second apart.

Open

This opens an existing file in Dasher. If any changes have been made to the file that is currently open when this option is selected, you will be prompted as to whether you'd like to save the current file. Then Dasher opens a file selection window and allows you to select a DSH file. If the file you select is corrupted a warning message will appear and the file will not be loaded.

Save

If the file that is currently open has a file name, it will simply be saved. If the currently open file does not, you will be prompted for a file name and the location where you'd like the file to be saved.

Save as...

When this is selected you will be prompted for a file name and the location where you'd like the file to be saved. If the currently open file already has a file name it will be used as the suggested file name.

Exit

This option exits Dasher. If any changes have been made to the file that is currently open when this option is selected, you will be prompted as to whether you'd like to save the current file before exiting.

Return to menus


Dasher Edit Menu

Edit Menu

Insert column(s)

Presents a box asking you to type in the number of columns you wish to insert. Next you are asked if you want the column timings to be shifted to the right. If you answer Yes then number of new columns you want is inserted where the cursor is and all data is shifted to the right. The new columns' timing is based on the column directly to the left of where the columns were inserted. Each new column is spaced out at 00:00.05 intervals. If you answer No then everything but the column timings will be shifted to the right and the column timings at the end get spaced out at 00:01.00 intervals.

Delete column(s)

Presents a box asking you to type in the number of columns you wish to delete. Next you are asked if you are sure you wish to do this and told the column(s) to be deleted will start with the column your cursor currently is in and will continue to the right. Finally you are asked if you want the column timings to be shifted to the left. If you answer Yes then the column timings for the columns you want deleted will be removed and everything will be shifted to the left. If you answer No then everything but the column timings will be shifted to the left.

Timing change (interval)

Presents a box asking you to type in the starting time of the first column in a range of columns you wish to change the timing of. Next you are asked to enter the starting time of the last column in the range. Finally you are asked to enter the time interval you wish to have between all the columns in the range. The start time is based on the time of the first column in the range.

Add time

Presents a box asking you to type in the starting time of the first column in a range of columns you wish to change the timing of. Next you are asked to enter the starting time of the last column in the range. Finally you are asked to enter the amount of time you wish to add to all the columns in the range.

Subtract time

Presents a box asking you to type in the starting time of the first column in a range of columns you wish to change the timing of. Next you are asked to enter the starting time of the last column in the range. Finally you are asked to enter the amount of time you wish to subtract from all the columns in the range.

Box change

Presents a box asking you to type in the number of control boxes you have connected to the computer. Each control box you have will add 8 rows to the grid. Here you can decrease the number of control boxes (and thus rows) the grid has, keep it the same, or increase it. Keep in mind that the more control boxes you have the longer it takes to compile the grid when you go to play the grid. If you choose to decrease the number of control boxes, the data contained in the deleted rows is lost. If you choose to increase the number of control boxes, the additional control boxes will be added at the bottom of the grid and existing data will not be affected.

Valid values are 1-106.

Select current column

Selects or turns on all the cells in the column in the control grid where the cursor is (or where you last clicked in the control grid).

Unselect current column

Unselects or turns off all the cells in the column in the control grid where the cursor is (or where you last clicked in the control grid).

Select current row

Selects or turns on all the cells in the row in the control grid where the cursor is (or where you last clicked in the control grid).

Unselect current row

Unselects or turns off all the cells in the row in the control grid where the cursor is (or where you last clicked in the control grid).

Select audio file

Dasher opens a file selection window and allows you to select a valid audio file. Note that one can change the type of files you're looking for by changing the "File Type:" drop down box located directly under the Filename field.

Default directory

Dasher presents a box that tells you what the current default directory is and then prompts you to type in what directory you would like to work in. This information is then used when opening and saving grid files.

Return to menus


Dasher Settings Menu

Settings Menu

NOTE: All of the following commands are toggled selections. This means if you select them and they are off they will be turned on. The opposite is also true (if they are on and you select them, they will be turned off). Another way to toggle these selections is to click on their indicators in the status bar of the main screen.

Loop playback

If this is turned on, when the last column is finished playing, the grid as well as the audio file will rewind and start over. This option can be changed while the grid is playing.

If it isn't turned on the grid will play back and then stop.

Screen redraw

If this is turned on the current column header will be lighted during playback and the grid will scroll, allowing a person to follow the grid as it plays. Note that this does slow down playback.

Channel names

When this is turned on and one clicks on one of the row headers, a box appears asking you to type in the name of the channel. To remove a channel name simply delete it's name from the box when prompted for a new name.

Column timing

When this is turned on and one clicks on one of the column headers, a box appears asking you to type in the start time of the column. The timing of the columns is based on the timing of the audio file that plays.

The format of the string is as follows:

mm:ss.hh

where mm stands for minutes, ss stands for seconds, and hh stands for hundredths of a second.

Valid values for mm and hh are 00-99.

Valid values for ss are 00-59.

Each space in the string must be filled in. For example, if you wish to type in a "4", precede it with a "0", thus typing "04". Number separators can be any character you wish to type. All of the following examples are valid:

00:04.55
00.04.55
00a04b55
01004055

If any part of the 3 number pairs are not valid numbers, the whole string will be rejected and no changes will be made. The following examples will be rejected:

0:04.55
0A:04.55
00:60.55 (Note: 60 is a valid number but is out of range in the seconds position)
00:04.&5

Global command(s)

When this is turned on and one clicks anywhere in a column, the column header of that column will turn red if it isn't already red. Red denotes that this column contains a global command. If the column header is already red when one clicks on the column header, it will change color back to the system default, effectively removing the global command from the column.

If a column is set as a global command column, the setup of control boxes 2 and higher are ignored for that column. The configuration of control box 1 will be sent out to all the control boxes when this column is played, making all control boxes look like control box 1.

The most effective use of the global command is when you wish to turn everything on in your display or blackout (everything off) your display. Instead of sending information to every control box this command sends one data packet, thus being very efficient.

Return to menus


Dasher Test Communications

Test Communications

When selected this will bring up a small window in the middle of your screen. Using this screen one can quickly test individual channels to verify they are working. Another use of this screen is to identify which devices are plugged into each channel. This information can be used to label each of your channels back on the main grid screen.

Address

This field allows you to select which control box (serial/parallel versions) or digital control board (CR version) you wish to communicate with. Valid values are 1-106 for the serial version, 1-3 for the parallel version, and is dependant upon how many cards you have installed in the machine in the CR version.

Port selection (CR version only)

Depending upon which board you select, this drop down field's options will change. For example, if you which to communicate with digital board 2 and it has 48 I/O lines, you will be presented with FIRSTPORTA, FIRSTPORTB, FIRSTPORTC, SECONDPORTA, SECONDPORTB, and SECONDPORTC as options.

Value slider

This allows one to adjust the value sent to the selected control box (serial/parallel versions) or digital port (CR version). It's valid value range is 0 (all off) to 255 (all on).

Value checkboxes

There are 8 checkboxes and each represents one of the 8 channels on either the selected control box (serial/parallel versions) or digital port (CR version). When you select a checkbox, the channel associated with that checkbox turns on. When you deselect a checkbox, the channel associated with that checkbox turns off. Also note that the value slider adjusts to the decimal value represented by the 8 checkboxes.

Send values checkbox (serial version only)

If this checkbox is selected, instead of Dasher sending normal data out the communications port, a nicely formatted version of the data, including labels, will be sent instead. This option is to be used in case it is suspected that no data is going out the serial port. Simply connect the serial port to a second computer's serial port, open a terminal program on the second computer, set the program up to communicate at 19200,N,8,1, and then try and send data. If successful you should see a nicely formatted message telling you the destination control box's address as well as what value is being sent out.

All on/All off buttons (serial/parallel versions only)

If the All ON button is depressed, all of the channels on all attached control boxes will turn on. Be warned! This can present quite a load to your electrical system depending on how many devices you are turning on.

If the All OFF button is selected then all of the channels on all attached control boxes will turn off, regardless of their current state.

Exit

Selecting this closes the Test Communications window and returns you to the main Dasher screen. If you have the serial or parallel version, a global OFF command is also sent out.

Return to menus


Dasher Help Menu

Help Menu

Dasher help

Opens the help utility that comes with Dasher.

Go to Dasher homepage

Opens your default browser (which, in turn, may start up your internet connection sequence) and takes you to the Dasher homepage where you can check on the latest news, versions, features, & patches for Dasher.

About Dasher

Opens an informational screen about Dasher, displaying the version you are using as well as other information.

Return to menus


Dasher Channel Addressing

Channel Addressing

Channels are referred to in the following manner:

x.y

where x refers to a control box's address and y refers to a channel number on that control box.

Thus if we were referring to channel 2.5 this would mean channel 5 on control box #2.

Valid values for x are:

  • 1-106 for the serial version
  • 1-3 for the parallel version
  • 1- # of digital I/O channels installed in the computer for the CR version divided by 8

Valid values for y are 1-8.


Dasher Test Communications

Scheduling program

This program will allow you to schedule when grids will play back. Only one daily event is allowed per instance. However one can have as many instances of the program running as your computer will allow. It is recommended that you have only one instance actually playing back at a time. When the program runs it starts up minimized - it just sits down in the Win9x/WinNT task bar so you know it's there.

The following is the list of parameters each version needs in order to run. These parameters are passed to the program on the command line. The program has to have all of this information when you run it or else it will complain and then stop running.

DasherS scheduler:

  1. grid file name
  2. length of last column (in milliseconds)
  3. COM port # (valid values are 1-2)
  4. start time
  5. end time
  6. unload scheduler at end of playback? (valid values are Yes or No)
  7. shutdown computer at end of playback? (valid values are Yes or No)

DasherP scheduler:

  1. grid file name
  2. length of last column (in milliseconds)
  3. start time
  4. end time
  5. unload scheduler at end of playback? (valid values are Yes or No)
  6. shutdown computer at end of playback? (valid values are Yes or No)

DasherCR scheduler:

  1. grid file name
  2. length of last column (in milliseconds)
  3. start time
  4. end time
  5. unload scheduler at end of playback? (valid values are Yes or No)
  6. shutdown computer at end of playback? (valid values are Yes or No)

DasherS example command line:

z:\Program Files\DasherS\DasherS_scheduler.EXE /z:\Program Files\DasherS\grid.DSH /150 /1 /5:00:45pm /10:30pm /Yes /No

where Z would be the drive letter of where your program is. Some computers may require quotation marks around the EXE filename in order to recognize it. The following is an example of this:

"z:\Program Files\DasherS\DasherS_scheduler.EXE" /z:\Program Files\DasherS\grid.DSH /150 /1 /5:00:45pm /10:30pm /Yes /No

DasherP & DasherCR example command line:

z:\Program Files\DasherS\DasherP_scheduler.EXE / z:\Program Files\DasherS\grid.DSH / 150 /5:00:45pm / 10:30pm / Yes / No

where Z would be the drive letter of where your program is. Some computers may require quotation marks around the EXE filename in order to recognize it. The following is an example of this:

"z:\Program Files\DasherS\DasherCR_scheduler.EXE" / z:\Program Files\DasherS\grid.DSH / 150 /5:00:45pm / 10:30pm / Yes / No

NOTE: It is very important to always include the "/" character in front of each parameter. Otherwise the program will complain about not having enough information to execute.

Explanation of parameters

Grid file name

This is the name of the Dasher grid file you want the scheduler to play back. Please include the full path name (including drive letter).

Length of last column (in milliseconds)

The amount of time in milliseconds that the last column of your grid is "on". 500 milliseconds is half a second long. 1,000 milliseconds is 1 second long.

COM port # (serial version only)

The number of the serial COMmunications port your control boxes are connected to.

Start time

This is the time of day you want the scheduler to start play back of the Dasher grid file. Many different time formats are supported (including 24-hour time format).

End time

This is the time of day you want the scheduler to stop the play back of the Dasher grid file. Many different time formats are supported (including 24-hour time format).

Unload scheduler at end of playback?

If a Yes is placed here then the scheduler will automatically unload once the end time has been reached. If a No is placed here then the scheduler will stay loaded once the end time has been reached and will play again once the start time is reached.

Shutdown computer at end of playback?

If a Yes is placed here then the scheduler will automatically shut down the computer once the end time has been reached. If a No is placed here then this action will not occur. This feature is handy if you want to place the computer on a timer. Simply program the timer to turn the computer off about 5 minutes after the scheduler is supposed to shut down the computer. To get the scheduler to automatically start after the timer turns the computer on simply place the scheduler command (with all it's command-line parameters) in the Windows Startup group/submenu.

The sequence would go like this:

  1. Timer turns power on to the computer.
  2. Computer boots up.
  3. Computer starts Windows.
  4. Because scheduler program is in the Startup group/submenu, it automatically runs.
  5. Program waits until start time. If start time has already passed it will instantly start playback.
  6. Program stops playback at stop time.
  7. If indicated, program gracefully shuts down Windows.
  8. About 5 minutes later, time turns power off to the computer.


Dasher Keyboard Shortcuts / Menu Layout

Keyboard shortcuts / Menu layout

File menu

New | Ctrl+N
Open | Ctrl+O
Save | Ctrl+S
Save as...
-----------------------
Exit | Ctrl+X

Edit menu

Insert column(s) | Ctrl+I
Delete column(s) | Ctrl+D
-----------------------------------
Timing change (interval)
Add time
Subtract time
-----------------------------------
Box change | Ctrl+B
-----------------------------------
Select current column
Unselect current column
Select current row
Unselect current row
-----------------------------------
Select audio file
Default directory

Settings menu

Loop playback | Cltr+L
Screen redraw | Cltr+R
Channel names | Cltr+H
Column timing | Cltr+T
Global command(s) | Cltr+G

Test Communications

no selections available under this menu choice

Help menu

Dasher Help F1
Go to Dasher homepage
-----------------------------------
About Dasher


Dasher Suggestions/Recommendations

Suggestions/Recommendations

If lights stay on after a global command make sure they aren't attached to a control box with an address higher than what you have told Dasher you have connected to the computer.

One good rule to follow is that one global command is followed by another, opposite global command. However, this won't always fit the situation.

Try to group together channels that will change at the same time and, if possible, keep them in one control box. If the channels that are changing cover more than one control box, use control boxes that have addresses next to each other (for example, control boxes 6 & 7).

When inserting or deleting columns try do these operations as close to the right edge of the grid as possible. This will speed these operations up.


Dasher Copyright/Author Information

Copyright/Author Information

All versions of Dasher and the Stand-Alone Control Box (SACB) Programmer are copyright 2000 by Drew M. Hickman.

It is illegal to distribute any version of Dasher or the Stand-Alone Control Box (SACB) Programmer without the author's written consent.

All other brand names and product names used in this help system are trade names, service marks, trademarks, or registered trademarks of their respective owners and are probably copyrighted by the respective owners. The author is not associated with any product or vendor mentioned other than the software accompanying this help system.

Please feel free to contact the author with any comments, questions, or suggestions about this software at the following addresses:

E-mail address:

drew@christmascave.com

Web addresses:

http://drew.christmascave.com

http://drew.hickmans.net