Spectacle User's Guide
Spectacle actions are mediated by "Channels", which represent information sent from input modules to output modules by way of the Director Board. More than one board may listen to a single channel, and more than one board may write to a single channel by use of "virtual" boards to combine signals.
In our simple example, we've created a system with only two boards: the Director Board and the Audio Output Board. This simple example is going to play a sound at random intervals, with a minimum of 10 seconds between playback.
Here we see the opening screen of the Spectacle App. The default name (in this case) is "my talented project" but you can, of course, change this to be anything that you'd like. We'll just leave it as is. Next, we need to add our Audio Output Board to the project. Click the "ADD A BOARD" button at the bottom of the page.
You'll now see a list of the various types of boards which are currently available. We've discussed five of these six entries, and we'll cover what a virtual board is in a second. For now, just click on "Audio" to add our Audio Output Board.
We're now back at the beginning screen, with the addition of another line below the project info line for a "painstaking sound board". You can rename this as you please by simply clicking in the text field holding the board's name.
Now click the clapboard icon to bring up a list of actions assigned to the board.
Unsurprisingly, it's empty. We have to add something! At the bottom of the page, find the "ADD AN ACTION" button. Click it and a list of actions will descend from the top of the page.
For the Audio Output Board, only two options exist: "Cancel" and "Play Sound". Click on "Play Sound" to add that action to our actions list.
You'll find this screen has appeared. There are four blanks, for four user inputs, and a slider at the bottom which we're going to ignore. Here are the uses of the other fields.
* "Listen to channel number..." - This is the channel number which triggers the audio to start playing. As long as this channel's value is above the threshold level (set by that slider that we're not going to mess with), the sound will repeat playing at a rate determined by the two time intervals specified lower down.
* "wait ... seconds and play..." - This is the first delay in the system. By delaying when a sound plays, you can sequence events however you see fit.
* "...and play file number..." - This is where you tell the board which file to play. Remember, when copying the audio files to the Micro SD card, they should be named as 00.ogg, 01.ogg, 02.ogg, etc. The number in this field corresponds to the number in the name of the audio file. If there is no audio file with the corresponding number, no sound will play.
* "do not allow another sound to interrupt until ... seconds" - The number in this field should correspond to the length of the audio file. If this value is less than the length of the sound file, another trigger sent to the audio board will interrupt the sound before it finishes. If it is longer than the sound, there will be a period of silence after playback before another playback can be initiated.
Here are the settings to put into the fields. Note that we are listening on channel 0, as we'll need that information later. We want to play our sound immediately, play sound file 00.ogg, and not interrupt that sound for at least one second.
There! We've added the instruction to play back a sound. Now we need to tell the system when to play the sound. Click the "GO BACK" button at the bottom of the screen. Don't worry, the action you added has been saved automatically.
We're back at the opening screen again, and you can see that "play sound on channel 0" has been added to the Sound Board's entry. If we had created more actions, they would show up there, as well. Click the "ADD A BOARD" button to continue.
We're back at the list of boards. This time, we're going to add a virtual board. This special subset of "boards" adds functionality that otherwise isn't added by any particular hardware board.
Now a virtual board entry appears in our project list. The Virtual Board entry is special, in that it can only exist once in the boards list, and it will always "sink" to the bottom of the list, even if you try to rearrange boards beneath it or if you create boards after the virtual board. Again, click on the clapboard icon to enter the add/edit actions view.
When you click on "ADD AN ACTION", you'll see a greater variety of options than you did with the Sound Board. The first four allow for input signals from external boards to be combined or changed in some way, while the bottom four require no external hardware to use. Choose "Random Input" from the list.
There are only two blanks here: one for channel number, and one for timing. Basically, this action flips a coin every few seconds (how often is determined by the value in the blank) and outputs the result to the channel you set in the blank field. Put '0' in the channel number field and '10' in the "every ___ seconds" field.
Now, click the "GO BACK" button at the bottom of the screen to return to the main menu.
Congratulations! You've just finished setting up the configuration for our random sound player!
Programming the system
Programming the system is done via your headphone output jack. Plug one of the included 3.5mm cables into the headphone jack on your computer, smartphone, or tablet, and plug the other end into the "Program" jack on the Director Board.
Supply power to the Director Board via the micro USB jack on the end of the board, then hold down the RST button. Hold down the PROG button, and release the RST button. After a moment, you should see the LED on the board blinking. It should blink three times, pause, blink three times, pause, repeatedly. Turn your system's volume up all the way, then touch or click the "Install Script" button at the bottom of the screen. That will pull up the page below.
Click or touch the "Install" button at the bottom. The button will gray out during the installation process. When it has returned to its normal color, the installation is done. If the installation was successful, you should see the LED on the Director Board blink 10 times, then pause, then 10 times, then pause, etc. Press the RST button on the Director. Again, you'll see 10 blinks, then a pause on the Director LED. That means the program is loaded and everything is working.