Bring it all together: Google Home, Zigbee, Elk, Insteon and X10


I have an Elk M1 Gold, an Omnistat thermostat, various X10 devices and several Insteon switches. I have been happy so far with the ability to do things like turn the ceiling fans on/off based on temperature from the Elk, but now I have a Google Home device and that really is the holy grail. Is there a particular hub or application (Linux) that will tie all of these together for voice automation without too much expense? The ISY line seems to hold the potential to but seems pricey in order to get where I want to be. Many of the other hubs work with Zigbee for the stat, but not Insteon or X10. Ideas?  
The challenge as you know is that you need something to glue it all together. You can go hardware based like the ISY controller which is essentially a multi protocol PLC or you can go software based which abstracts all of the interfacing of the various automation solutions. The software solution is significantly more flexible but adds complexity. Either one acts as the glue to bridge it all together and both cost $$$. I like to use the analogy of bricks and mortar; the bricks are the disparate automation control solutions and the software or hardware controller is the mortar that is used to connect the individual bricks together to form the automation house.
I'm running a Windows based Home Automation solution CQC to solve this, sorry this is not Linux. And via the work of Android developer Joao I can interface Google Home to my automation system (not quite Linux either.) using his tools and EventGhost. This is my project for this long weekend as I just picked up 2 Google Home at Target yesterday for $99. Regardless, It shouldn't be long before there are more options as Google indicated that they would open up the Google Assistant APIs by December
Based on what you have your Elk is your best bet on the hardware side but then you still have the holy grail issue no voice control so back to square 1, how to glue it all together...
Hopefully someone else out there can point you to a Linux based solution if that is your only choice. Once the developers of the world get their hands on the Google Assistant APIs we should be seeing solutions to what you seek.
Thanks, batwater, for the detailed response. Since posting, I have discovered that my stat actually doesn't have a Zigbee radio. The switches are both Insteon and X10, so that means any solution which can do either will work for them (such as the Elk I currently have). Since I have the Elk M1XEP, my current thinking is to use something like curl or a the Tasker SendExpect plugin to open a socket and send some ASCII. I can them use IFTTT to tie it together with the Tasker Join plugin. Maybe.
It is very easy to remote control a linux box via SSH and one liner scripts.
One box here is a remote z-wave, X10, UPB and 1-wire hub using Homeseer today. 
pete_c said:
It is very easy to remote control a linux box via SSH and one liner scripts.
One box here is a remote z-wave, X10, UPB and 1-wire hub using Homeseer today. 
What do you use for the actual radios?
For Z-Wave here utilize the HAI serial VRCOP plugged in to my OmniPro 2 panel in the basement and a Z-Wave dot me GPIO card plugged in to the RPi which is POE connected in the attic.  The Z-Wave network is replicated from one device to another to control same devices.  IE: software and firmware control the same node.  Only thing is that one controller doesn't get status from what the other controller sends out.  Thinking the range is better on the GPIO Z-Wave controller than the Z-Wave USB sticks (utilize Aeon sticks here - testing).  I can also update the firmware on the Z-Wave dot me GPIO card (never have though).
For Zigbee testing utilize an HAI serial ZIM plugged in to the Omni Pro 2 panel and testing a few Securifi Almond + and Almond devices which do Z-Wave and Zigbee.
For the Homeseer automation just run the plugin in Linux (Z-Wave, X10 and UPB) to connect to the mothership.
This is where I just do an SSH connection / remote script from the mother ship to enable the controller stuff.  You just have to store the encryption keys on both sides so there is no password prompt.
Many users are using Linux serial ethernet transport.
Below in the HAI section of the Cocoontech forum a CT user has created an interface to the OmniPro 2 panel using a Samsung Smarthings Hub and Amazon Echo.  The software interface runs on the RPi and any Wintel PC.  The Almond + is a multiradio hub with a touchscreen and OpenWRT firewall and AP in one tiny box and switch.  It has a switchable on or off cloud component, Android, iOS and Windows remote piece to it.