AdamCollins
Member
Well in that case, I say give it a shot! And despite what I said about not wanting to use your code, if you get something working well think about open sourcing it. Either way I would be interested in how things go for you, please post some progress reports here as you get further along.
I would really think about using an event-driven engine (there are lots available: Python Twisted, Perl AnyEvent, lebev for C, etc) as a basis for your work. You can look at EventGhost for windows to see how something was written with stacklass python with a very simple event-driven framework.
Misterhouse has a lot of community support and works well for a lot of people - but it is basically just a giant loop where you each device / interface is checked to see if there is a new action to take. There are a lot of better / more modern ways of tackling that now, so if you are writing your own from scratch don't use that as a guide on how to build one of these systems. If Premise gets open sourced (http://cocoontech.co...se-open-source/) I would check that code out too.
Either way I would grab any of the free or open source products you can (Misterhouse, Premise, Heyu, Zenah-Perl [1], EventGhost, Freedomotic) and see how they do things to get some ideas. Remember Picasso, "Good artists copy, great artists steal".
Oh, and I don't think three way switches are too hard. Just to be save you could pick up a book on wiring (something like Black & Deckers Complete Guide to Wiring for $15) and scan through it. Wiki has a good description of basic 3-way/4-way wiring: http://en.wikipedia....y_and_four-way. The tricky thing about home automation products is they don't use a typical 3-way or 4-way wiring circuit, and each manufacture does things a bit different. For instance, Intermatic z-wave switches use standard switches (not standard 3-way, standard 2-way) to add a 3-way zone. If you understand how normal circuits work, and then just spend a few minutes studying the little piece of paper that comes with your device, you can figure it out. Or, just post your existing circuit here and ask how to modify it and I'm sure someone will help.
[1] https://github.com/beanz/zenah-perl/
I doubt I'd have anything anyone would actually be interested in using for a long time, if ever. This is more a personal project that I want to do because it sounds neat. However, if something comes over me and I end up writing something awesome (unlikely ), I'll share it.
Someone else mentioned Premise, and it looks interesting, so I'll be looking into that, if for nothing else than to just poke around and see how it does things; as one of my computer science professors in college told me, "Never be too proud to steal a good idea."
As for the three-way switches: if all else fails, my father-in-law is an electrician. I hate asking him for help though... "Hey could you come over and help me with this? Because I, the man your daughter married, am too useless to figure it out."