So I have been working hard over the last few month trying to consolidate many pieces of what I hope to be the decorations master piece for 2010.
Here is how it started. For 2009 I had already created a simple programs that would randomly play small 5-10 second sequences such as fading on / fading off, lighting bolts etc. And even in Halloween/Christmas starting I start projecting some images and clips on the window using my laptop and a projector. But wouldn’t it be nice to have it all sync together? This is where this ‘project’ came up.
For starters I considered dropping these boxes and going with the Light-o-rama product. Which I am sure you have seen 1000 times before and that same Transiberian Orchestra song! But after downloading the demo software I found there was no way I could insert code or run a program before or after. Don’t get me wrong its a excellent product and insteon devices will NEVER match the speed those device can achieve! But another limitation ‘I’ didn’t like was that its all in central controllers. With the lamplincs I can and have had devices inside the home and some outside at the same time, also if one device dies you replace it and your done, here if you controller dies you are down 16 ‘channels’ . BUT Downside for me is each device needs to be programmed individually but once its set your ready to go!. Another big plus for me was that I could use existing Insteon devices over and over and even mix with the ones in the home. For example in Halloween I would kill the kitchen lights inside for the lighting bolts outside. So in true ‘me’ spirit I decided to stick with Insteon and do something different!
The Show Manager
For example the ‘Show Manager’ will start and stop the ‘Randomizer’, ‘Sequencer’ as well as accept input from the internet. Like in 2009 I will provide a button from our community website/ internet users to ‘bump’ the decorations. 🙂 Try that Lightorama.
The program is a simple program that will start and stop programs using VB program looking as the processes in memory.
The “Sequencer” Program (New for 2010)
Different from 2009 is the ‘Sequencer’ program which is what allows me to sync video/audio to commands to the devices. The screen is very simple and clear. You have a time line which is broken down in .25 seconds with the devices down the left. Each color is a different command sent via the serial interface.
Closeup of the Time line board.
Close up of the commands screen
Synchronizing the video between the two computers was a ‘TASK’ . I had to get down to the milliseconds so the video would sync correctly,
For this I had to use VB 2008/2010 Windows presentation format (WPF) in the remote laptop since you can change the rate of play of the video. I never found a right way to do this in VB 2008 or less. So the main sequencer would send a heartbeat to the laptop everysecond with its time sync so the player could go slower or faster.
The way I put them to talk is a previous entry here, how to Communicate using ports / TCP. HERE