Active Member
Fortress is a 1900 square foot ranch located in rural WI. Featuring fully automated lighting and HVAC, Fortress even boasts its own radio station for music distribution and is also a testbed for my automation ideas. I'm lucky to have an understanding family!

The nerve center of the system is my Dell T605 server running VMware ESX v3.5. Home control is handled by HCA which has itself been virtualized within the VMware infrastructure. Currently HCA handles X10, UPB, and Insteon powerline protocols. It also directly receives Hawkeye sensor data via a W800RF32. I'm running a SAI UPB PIM and an Insteon
2414U as my powerline interfaces. All 3 of the device interfaces are network attached via a Digi AnywhereUSB appliance which is re-mapped as USB into the HCA virtual machine itself. this will allow the HCA server to benefit from VMware HA once my second T605 is up and running.


Fortress features a "split plenum" HVAC design that separates the main living area from the sleeping area. Inline duct fans that seperate the two plenums increase airflow to the living areas during the day and the sleeping areas at night. Here's some shots showing this:

Shot of the plenum going into the furnace

Shot of the split portion feeding the main living area

Shot of the two 8" ducts connecting the plenums with duct fans

Shot of the UPB module that senses when the blower is running as well as whether the AC or the Furnace is active. HCA sets the global variables "AC Mode" and "Heating Mode" based on a sample that occurs when the blower motor activates. HCA makes the decision to turn on the ductfans based on the value of "House Sleeping". When Fortress is in AC mode, HCA ramps up the duct fans over time as the AC continues to run increasing cooling during hot days.

Hopefully the pics show how the system works. Essentially, the two 8" ducts normally restrict airflow to the main living areas, increasing airflow to the sleeping areas. When the fans kick in, the main living area duct is pressurized which increases airflow there and restricts airflow to the sleeping area.

Half of the downstairs basement directly under the living area has been converted to an additional 400 square feet of living space through the addition of an office, library and sewing room there. Circular stairs that connect the Library to the family room directly above are to be installed in 2009. A power duct system connects the three rooms to circulate warm air generated by the computers in the office throughout the other two rooms. Fortress engages this system constantly at night. It is also energized during the day whenever the furnace blower is active and there's nobody in this area. If somebody enters and the system is running then Fortress shuts it down. X10 capable 240 Volt thermostats made by ISO-THERM (Canada) have also been installed in each of the three rooms for direct control of baseboard heating. These thermostats give Fortress control over the setback settings in individual rooms. Interestingly, the baseboard heating is rarely used since the R13 insulated area is warmed almost solely by heat generated by the office computer systems.

Shot of an ISO-THERM X10 thermostat

A complete pictorial of the downstairs construction project can be found here. There's quite a bit of out-of-the-box thinking in this project including a very unconventional approach towards thermal management through the use of an air-gap approach.

Lighting and General Automation Macros

Fortress is lit by UPB. All switches are the SAI US 11-30W model. I also use 6 lamp modules and have 3 IO control modules for a total of 42 UPB devices. Fortress also features 5 Ademco ceiling sensors, 12 Hawkeye PIR sensors and 4 X10 wireless remotes which transmit wireless data to the central HCA system affectionately known as "Fortress Control". Fortress Control features 44 different macros which control everything from the garage door to the outside sprinkler system. 2 primary schedules (home and away) run the show. Family favorite macros include:
  • A Shower sensor automatically controls the bathroom vent fan eliminating that pesky steamed up mirror effect.
  • the garage door is automatically closed if left open when "go to bed" is pressed from the master bedroom. The family refers to this as "blue fish off" because they remembered the button position on the original Sundowner X10 remote by reciting "one fish two fish red fish blue fish" while counting buttons from left to right :) This macro also sets "House Sleeping" and de-activates an "All lights" link to turn off all lights in the house.
  • the "All lights" UPB link can also be de-activated by a double off tap from switches located near the doors.
  • "Nightime mode" is set by a pre-determined Sunset time or by turning on the family room lights. This activates automatic lighting.
  • Fortress Control uses METAR weather data to update "Overcast" once an hour. This information in turn is used to adjust the time prior to sunset that "Nighttime mode" activates.
  • Automatic lighting is achieved by PIR motion sensors located throughout the house. These in turn trigger lighting macros which activate when "Nighttime mode" is set. For improved performance, all lighting macros manually debounce the multiple triggers generated by the motion sensors. Light-on is generally <.2 seconds from sensor trigger and feels instantaneous. Light-off is generally 2 minutes after the last trigger was detected. Lighting macros in the bathrooms and utility room are not subject to "Nighttime mode" since these rooms are not well lit by ambient lighting during the day. The main family rooms are not subject to sensor control unless "House Sleeping" is active. Instead, lighting here is automatically activated by "Nighttime mode"
  • Turning off bedroom lighting with a switch automatically deactivates motion sensing there. This effectively cancels automatic lighting for the bedroom. Turning the lights back on with a switch reactivates motion sensing.
  • All motion sensors in the living areas of the house act as intruder detectors when "House Sleeping" is active. Since all bedrooms are at the end of a single hallway, a motion sensor there cancels this and activates nighttime automatic lighting which is a more subdued lighting effect in the main areas/bathrooms. 15 minutes after the last sensor trigger is seen, "Intruder detect" mode is reactivated.
  • Intruder detection turns on all lights in the affected area as well as low level lighting in the master bedroom. Soon it will also activate a wireless camera in the affected area connected to a monitor on the bedside table.
To improve response times in Fortress' primary automatic lighting areas (kitchen, bathroom, hallways and bedrooms), I've connected Ademco/Honeywell 997 ceiling mount sensors located in each room to modified Hawkeye sensors located in the basement. The Hawkeye sensor modifications allow them to respond instantly and repeatedly to contact closure events. The mod writeup is here.

I chose this design combination because of a need for speed. Essentially, a W800RF32 can send large amounts of sensor data to HCA over a USB connection and wireless X10 commands have sub-second transmission times. Therefore, with the modified Hawkeye/Ademco combination, Fortress Control can receive several triggers per second when a room is occupied. This is key too since having highly sensitive motion detectors allows me to program fast light off timeouts while still retaining high WAF (lights don't turn off when a room is occupied). How fast is this? Fortress generally turns off room lighting 2 minutes after the last motion is detected even in the bathrooms. Light on times are noticeably better as well because a stream of events occurs when somebody enters a room.

Here's a shot of the Hawkeye Panel in the Basement:

yup, that's a modified ATX Powersupply supplying 3.3v to the Hawkeye sensors and 12v to the Ademco sensors :)

Here's a shot of a bedroom sensor:

Here's a shot of Fortress Control showing the first floor layout.

I'm running HCA v8.0 which also includes a web interface. It's Pocket IE aware too so I have access to Fortress Control from anywhere in the world! Here's a shot of the web interface rendered on PIE:

Here's HCA itself running as a guest OS within VMWare:

Fortress features a full 802.11g wireless network with 5Mb/s Internet connectivity. The main router is a Linksys WRT54GX2. I also use several Linksys WET54Gs to bridge to wired where required. There are laptops all over the house that can connect to the servers/services hosted on VMware as well as physical machines such as the development PC in my office.

The Fortress phone system is VoIP based and I use Asterisk based PBX in a Flash as my primary PBX. It is trunked into my Vonage Softphone account and also runs as a VM on VMware. Based on CentOS 5, this totally free PBX system is just about the coolest piece of software on the planet. Setup is fully automated and it can even be run as a VMware appliance for those who don't have a dedicated PC handy. It has full AVR and conference capabilities, call minute tracking by extension, DID based call routing (for sending the In-laws to AVR hell during dinnertime) and even queue processing if I need it. Read all about PBX in a Flash here. Fortress features WiFi VoIP phones scattered throughout the house and the existing wired RJ11 ports are connected to our Vonage Primary account number for non-business use. My AT&T tilt also has Internet Calling enabled through Sleuth255's excellent WM6.1 ROM over at It becomes extension 503 when connected to the Fortress PBX over 3G.

Here's a screenshot of the System Status page:

The fully virtualized Fortress iTunes server is accessible via shared remote connections. Currently I'm using VMware's browser based shared console for this purpose. This lets multiple devices share the same console session for simultaneous access to iTunes. Audio out goes to a Ramsey FM35WT 1 watt FM transmitter connected to a dipole antenna in the basement. I've got the output tuned so that Fortress FM 88.3 can be picked up anywhere on the grounds. The transmitter itself is activated by Fortress Control when the Family room stereo system is turned on. When we have a house party, we simply connect all laptops to the iTunes server then tune all radios to 88.3.

Virtualization of the iTunes server proved challenging given VMware's lack of sound card support along with its physical USB iPod and Camera connections. How did I do it? I'm using a Belkin F5L009 network USB hub ($60) and an Andrea Electronics Pure Audio USB-SA usb audio card ($44). This awsome audio gizmo is the best in the industry currently and can only be purchased here. Resist the urge to skimp on a cheaper card as I had many audio stream lockup issues when I first tried this using a $16 StarTek USB adaptor.

In short, the Belkin hub works just like the Digi device in that it acts as a network connected USB hub whose ports are remapped to the media server. The Pure Audio usb audio card provides a sound solution that works around VMware's lack of virtual sound drivers. The FM transmitter is plugged into the audio output of this gizmo.


The overall virtualized solution paves the way for media server Infrastructure HA support once my second T605 goes online and continues to let us plug in iPods for music downloads as well as our cameras for picture storage. Streaming audio via the Belkin connection was initially an issue due to the connection speed (I first tried using an older WET11b 11Mb/s Linksys bridge), but the problem was solved when I upgraded the bridge to a 54Mb/s WET54g bridge.

Virtualization bestows additional benefits too. Using the VMware remote client, we can now connect local laptop CD ROM drives to the server and rip music off our CD collection from the comfort of the family room couch :) Speed isn't as good of course, but the solution still attains 2-3X which the family considers to be a small price to pay for the additional convenience. Maybe I can use it as leverage for a wireless network technology refresh... heheheheh

Future Plans
Once the circular stairs are installed I will enable the Cold Air Return vent in the library. This will provide an improved overall circulation path that should coincide with the move of office equipment to a new rack system located in the furnace room. I'm hoping that this change will continue to minimize baseboard heating requirements in the downstairs living area.

I'm also going to add a USB storage array to the media server so I can offload media storage from the more expensive vmfs filesystem. Hopefully this solution will still be up to the task of handling lossless streaming audio since the Belkin connection will be handling disk IO as well as USB audio once this is implemented... Or I may just add a NAS device since VMware also supports NFS storage.

The Library's "evil plan" is to actually become a home theater :) To this end, I've already installed a separate 20amp circuit for the Library outlets. Reinforced studs on the West Library wall also conceal and an HDMI cable conduit there. The plan is to move our 50" plasma TV to a wall mount on the library's west wall then purchase a new sound system to complement our existing blu-ray HiDef player. When I built the downstairs living area back in 2005, I deliberately chose not to wire for surround sound because I guessed that the bluetooth A2DP wireless stack would have broad use in receiver systems by the time we installed the circular stairs. I saw plenty of this in evidence at CES last January but still no Bluetooth capable receivers or speakers.

Ultimately, my goal is to take Fortress completely off the grid. To this end, we are contemplating the installation of a WaterFurnace geo-thermal system for heating, AC and hot water along with a shingle based grid-tie solar panel array on the south facing roof. I'm also eyeing up home based fuel cells that convert natural gas to hydrogen. Then, with a house based re-fueling facility in hand it will be time to purchase a fuel-cell based vehicle such as the Honda FCX Clarity....

First off however I need to go rob a bank to pay for it all..... :eek:
I've never checked but I believe it's at least 4. However, when you connect a VM to a physical port on the Host server then the VM itself can't be seamlessly VMotioned while still running to a different ESX Host. This is what makes HA work: a predictive host failure (power supply goes, soft memory error etc) causes a VMotion while the VMs are still running followed by a deactivation of the defective server. A host crash causes all VMs to be automatically restarted on another Host. Having a physical port connection defeats this which is why I'm running the interfaces through anywhereUSB. Essentially, its a network version of a USB hub. The W800 and the UPB PIM use USB to Serial converters and the 2414U connects directly. All three devices show up as USB devices on the VM running HCA.
Do you use the entire VMWare ESX product with the VIClient, HA and DRS at home? That must cost you a small fortune! I use it at work, and I know it ain't cheap!

I have a hosting business that provides the ROI model for full VMware Infrastructure. ESXi is free now, is accessed with the VIC and provides pretty much everything you need in a single server environment. A T605 with 16 gigs of memory 2 quad core 2.1gHz AMD procs and 450 gigs of R5 hotplug SAS storage is about 3K. Beware that you will need to replace the SATA DVD drive with an older IDE drive to install ESX on this platform however.

I'll bring up HA/DRS (the expensive stuff) when I get the second server.
There, the first post is finally finished with a description of the downstairs HVAC system and future plans.
Tell me about it... :eek: Very noisy too which is the main reason for moving them to the furnace room. I'm putting in a cold air return there which should continue to capture server generated heat. Fortress Control will activate this return when "Heating Mode" is set.
Currently its just a PIR sensor in the shower stall. Fortress Control shuts the vent fan down if 2 minutes go by without receiving a trigger from the shower sensor. Having a flow sensor on the shower pipe would be ideal since control would be precise, the vent fan wouldn't run if someone was taking a bath and it could be controlled by local UPB links (I prefer distributed control over Fortress Control). When the water valve needs replacing and I tear out the wall in the half bath to access the plumbing, I'll be sure to add one in. Having a pressure sensor on the toilet seat control the same link might be a good idea as well heheheh :eek:
I've updated post 1 with a description +pics of Fortress' fully virtualized Asterisk based pbx system that uses (free) "pbx in a flash". The fully automated software suite which runs on CentOS 5 and trunks to my Vonage Softphone account combines FreePBX, Asterisk and the popular Flash Operator Panel with a completely automated setup and modularized update system.

I've also virtualized the iTunes media server and added a description + pics of that process as well.
I've updated post 1 with a description +pics of Fortress' fully virtualized Asterisk based pbx system that uses (free) "pbx in a flash". The fully automated software suite which runs on CentOS 5 and trunks to my Vonage Softphone account combines FreePBX, Asterisk and the popular Flash Operator Panel with a completely automated setup and modularized update system.

I've also virtualized the iTunes media server and added a description + pics of that process as well.

What is the benefit of all of this virtualizing? What are the cons?

Faster build/upgrade time (you can knock out a Virtual server in about 5min or upgrade its number of procs/memory requirements on the fly).
Saves energy (I consolidated 4 physical machines into one)
Single, distributed control point for power/management operations with the VMware VIC.
Better reliability since redundant server components (R5 disk, ECC memory, dual power supplies) are leveraged by all VMs


Steep learning curve
Devices with large physical connectivity requirements (such as media servers with tuners, IR ports etc.) can't be virtualized.

In short, if you have a lot of PCs/servers running for various reasons, then this is something to look at.
So I did the math on the energy savings of the Fortress Virtualization project:

I virtualized 4 physical machines (3 with 3A power supplies and one server class with a 6A power supply) into a T605 with a 650W power supply.

That's 120V * 15A = 1.8KW vs .65KW. Here in WI, our electricity rate is .18/KWH (lots of nuclear power) soooo my costs over an average 30 day month work out as follows:

was 1.8KW*24*30*.18=$233.28 per month


is now .65W*24*30*.18=$84.24 per month

or a savings of $149.04 per month. Yikes! Now I can see why I was able to heat the finished basement with the server farm! ;)

What's the payback?
Server cost = $3000 including (free) ESXi
Belkin USB hub *2 = $130 (much better and less expensive than the Digi solution)
2 Serial/USB adaptors = $60
1 WET54B Wireless Bridge = $54 delivered (eBay used): printer/mediaserver hub are now wireless
1 HP JetDirect J2591A = $29 (eBay NIB): printer was direct connected to Server parallel port.
Andrea sound adaptor = $50 delivered
total costs = $3323 / (149.04 * 12) = 1.86 year payback at my electrical rate.
For typical installations, you could add a serial PCI card and leverage serial ports on the T605 (which can be mapped to VMs) to eliminate the belkin hubs altogether and get an even better ROI.

Interestingly, I was motivated to figure this out by last month's electrical bill which was about $60 higher than it should have been. It ended up being due to the fact that I had all servers plus the T605 running as I was doing the Physical - Virtual conversions.

So, If you have a server + 1 workstation class machine running in your house (9A powersupply draw), then Virtualization can save you real money on your electrical bill!