niall Posted October 28, 2015 Share Posted October 28, 2015 I've got a feeling this is going to be of some interest to people here. I spent a couple of hours this morning getting this integrated with my system and now I feel like my apple watch is amazing. Its fairly simple to setup, all you need is a computer of some sort (raspberry pi is perfect) to run a bridge between the HomeKit and Control4. If anyone is interested I documented the whole process here: https://c4drivers.wordpress.com/2015/10/28/homekit-for-control4/ Link to comment Share on other sites More sharing options...
Gene Posted October 28, 2015 Share Posted October 28, 2015 I definitely will try this... Yes, it will make alot of people happy!!!!! Link to comment Share on other sites More sharing options...
c4toys Posted October 28, 2015 Share Posted October 28, 2015 Voicer does this on an android devise, I assume it works with apple iOS! msgreen can chime in on this.. Link to comment Share on other sites More sharing options...
msgreenf Posted October 28, 2015 Share Posted October 28, 2015 Voicer does this on an android devise, I assume it works with apple iOS! msgreen can chime in on this..No Voicer for iOS...would like to write it but knowledge and time to learn are preventing it. Link to comment Share on other sites More sharing options...
control4user007 Posted October 28, 2015 Share Posted October 28, 2015 Giving this a try ! Link to comment Share on other sites More sharing options...
control4user007 Posted October 28, 2015 Share Posted October 28, 2015 Just tried it! Pretty sweet! Running the bridge on an OS X server I have. Even works remotely, so I can be out of the house and say "arm the alarm", and it goes on. Little concerned about how its doing this, and how encrypted it is. So disabling it for the moment. But a lot of potential! Reminds me of SiriProxy, but a little bit more responsive than I remember! Link to comment Share on other sites More sharing options...
cdepaola Posted October 28, 2015 Share Posted October 28, 2015 Trying to get it running, not much luck Link to comment Share on other sites More sharing options...
StroTek LLC Posted October 28, 2015 Share Posted October 28, 2015 too bad I have mostly android devices.., but I love this idea Link to comment Share on other sites More sharing options...
control4user007 Posted October 28, 2015 Share Posted October 28, 2015 Trying to get it running, not much luck What's the setup your having trouble with? Link to comment Share on other sites More sharing options...
Gene Posted October 28, 2015 Share Posted October 28, 2015 Just tried it! Pretty sweet! Running the bridge on an OS X server I have. Even works remotely, so I can be out of the house and say "arm the alarm", and it goes on. Little concerned about how its doing this, and how encrypted it is. So disabling it for the moment. But a lot of potential! Reminds me of SiriProxy, but a little bit more responsive than I remember! Thats awesome! I can't wait to try it...thinking of repurposing a shuttle I have to run it...now just need time to do it... From the instructions it doesn't seem like it will take that long. I think like anything, if your network is secure, it should be fine in your house but if your not connecting securely remotely, thats an issue...hopefully someone will modify the driver so its atleast ssl. But atleast a start since SiriProxy has been dead for over a year. Link to comment Share on other sites More sharing options...
cdepaola Posted October 28, 2015 Share Posted October 28, 2015 What's the setup your having trouble with? Trying to install on a windows machine. I've installed Node and GIT for windows, edited the Config.json file. Fairly sure I'm getting errors on the NPM Install command and I am running as administrator When I do: NODE APP.JS I get the following error: module.js:339 throw err; ^Error: Cannot find module 'hap-nodejs' at Function.Module._resolveFilename (module.js:337:15) at Function.Module._load (module.js:287:25) at Module.require (module.js:366:17) at require (module.js:385:17) at Object.<anonymous> (C:\Users\Chris\Documents\homebridge\app.js:4:11) at Module._compile (module.js:435:26) at Object.Module._extensions..js (module.js:442:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:311:12) at Function.Module.runMain (module.js:467:10) Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 Just tried it! Pretty sweet! Running the bridge on an OS X server I have. Even works remotely, so I can be out of the house and say "arm the alarm", and it goes on. Little concerned about how its doing this, and how encrypted it is. So disabling it for the moment. But a lot of potential! Reminds me of SiriProxy, but a little bit more responsive than I remember! Can I ask if you have an Apple TV? If so thats the reason you can run it remotely. If you haven't then I'm unsure why it works remotely. For remote access this is all taken care of by Apple HomeKit, so it will be protected by the encryption and authentication it is using. Its only the local access between the HomeBridge software and the C4 Driver that is unencrypted. To me the issues are that someone would need to be:1) Connected to your network (you allowed them access via wifi or they connected via a cable)2) Break into your network (they gained access via some other method, at which point you are in more trouble than them doing what your C4 script allows)For both of these all they would be able to do would be to run the commands you had allowed via your C4 Script. So if its things like turning on and off lights etc, then to me its not the end of the world. If you added scripts to turn off your house alarm or change the heating to a massive level or disable power to your house, then thats asking for trouble. At the end of the day its what level of risk you are happy with. To be honest I'd like to see someone do a full security assessment of C4 devices on their own. Or to have some knowledge that C4 are doing their own pen testing. Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 Trying to install on a windows machine. I've installed Node and GIT for windows, edited the Config.json file. Fairly sure I'm getting errors on the NPM Install command and I am running as administrator When I do: NODE APP.JS I get the following error: module.js:339 throw err; ^Error: Cannot find module 'hap-nodejs' at Function.Module._resolveFilename (module.js:337:15) at Function.Module._load (module.js:287:25) at Module.require (module.js:366:17) at require (module.js:385:17) at Object.<anonymous> (C:\Users\Chris\Documents\homebridge\app.js:4:11) at Module._compile (module.js:435:26) at Object.Module._extensions..js (module.js:442:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:311:12) at Function.Module.runMain (module.js:467:10) I'm thinking that the npm install didn't work.What this should do is install all of the packages listed in package.json in the node_modules directory.If you look in the node_modules directory you should see if they are there. One problem that could have occurred with this is that after you installed git it wasn't in the system path on your computer. You can check this by just entering git from the command prompt and see if you get an error. If you get an error you will need to modify the path to include where git is installed (or just re-install git and check the option where it adds itself to the path)Alternatively if you had the command prompt open before you installed git, the path for that session won't be updated (so just close the command prompt and open a new one) Hope one of these helps you. Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 Thats awesome! I can't wait to try it...thinking of repurposing a shuttle I have to run it...now just need time to do it... From the instructions it doesn't seem like it will take that long. I think like anything, if your network is secure, it should be fine in your house but if your not connecting securely remotely, thats an issue...hopefully someone will modify the driver so its atleast ssl. But atleast a start since SiriProxy has been dead for over a year. I looked what was needed to run it in ssl. From the HomeBridge side its trivial, infact you just change the url to be https, but unfortunately there is no support in the lua functions on the director to do this for the driver (unless someone knows different). Link to comment Share on other sites More sharing options...
alanchow Posted October 29, 2015 Share Posted October 29, 2015 I was thinking of porting the code into a driver so that everything would be automatic but reading more about HAP-NodeJS leads me to decide i don't want a lawsuit from apple:) NotesSpecial thanks to Alex Skalozub, who reverse engineered the server side HAP. You can find his research at here. (Sadly, on Nov 4, Apple sent the DMCA request to Github to remove the research.)There is a video demo running this project on Intel Edison.If you are interested in HAP over BTLE, you might want to check this. Link to comment Share on other sites More sharing options...
control4user007 Posted October 29, 2015 Share Posted October 29, 2015 Can I ask if you have an Apple TV? If so thats the reason you can run it remotely. If you haven't then I'm unsure why it works remotely. For remote access this is all taken care of by Apple HomeKit, so it will be protected by the encryption and authentication it is using. Its only the local access between the HomeBridge software and the C4 Driver that is unencrypted. To me the issues are that someone would need to be:1) Connected to your network (you allowed them access via wifi or they connected via a cable)2) Break into your network (they gained access via some other method, at which point you are in more trouble than them doing what your C4 script allows)For both of these all they would be able to do would be to run the commands you had allowed via your C4 Script. So if its things like turning on and off lights etc, then to me its not the end of the world. If you added scripts to turn off your house alarm or change the heating to a massive level or disable power to your house, then thats asking for trouble. At the end of the day its what level of risk you are happy with. To be honest I'd like to see someone do a full security assessment of C4 devices on their own. Or to have some knowledge that C4 are doing their own pen testing.Yes I do have an Apple TV (5 actually, all 3rd gens - and not upgrading to 4th gen). Thanks for clearing that up - I think ill put it back up, although it would be nice to have it encrypted with SSL even on the local network. Do you think this can be setup to run on a master controller? E.G. run all of those install scripts that were outlined in the instructions above, and have it autostart at boot. Would this have a negative impact as far as performance or create other issues that people can think of? Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 Do you think this can be setup to run on a master controller? E.G. run all of those install scripts that were outlined in the instructions above, and have it autostart at boot. Would this have a negative impact as far as performance or create other issues that people can think of? Do you mean could you install the HomeBridge software on the C4 Controller?I suppose technically you could if you could get to the linux cli and then install node etc. I don't think it would be a good idea though, as it probably wouldn't survive upgrades, would stop C4 supporting you and might cause performance problems.I've put mine on a raspberry pi, very cheap and keeps everything separate. Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 I was thinking of porting the code into a driver so that everything would be automatic but reading more about HAP-NodeJS leads me to decide i don't want a lawsuit from apple:) NotesSpecial thanks to Alex Skalozub, who reverse engineered the server side HAP. You can find his research at here. (Sadly, on Nov 4, Apple sent the DMCA request to Github to remove the research.)There is a video demo running this project on Intel Edison.If you are interested in HAP over BTLE, you might want to check this. I've got a better idea for you, if you want to make the perfect driver you should make a driver that gives out an API to C4. Something that does the following- Allows getting a list of all the different rooms and devices in a system in json or xml- Allows running commands on a device, switch light on, send key etcThat way anyone who wanted to build something would be able to interface with C4 without having to know anything about writing lua on it. It would make it simple for someone to write an accessory for home bridge to interface with C4. Something this generic would be used by everyone who wanted to build something. Why C4 have never done this is probably down to their closed shop system, which is going to be the death of them. They should embrace an open world and offer an API, it will only increase their market. Link to comment Share on other sites More sharing options...
msgreenf Posted October 29, 2015 Share Posted October 29, 2015 C4Soap does exist...but isn't documented or recommended to be used... Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 C4Soap does exist...but isn't documented or recommended to be used...Thats a shame, if they don't document it then it might as well not exist Link to comment Share on other sites More sharing options...
digitaltrader Posted October 29, 2015 Share Posted October 29, 2015 I'm have trouble figuring out how to install the homebridge on my OSX server. I've never messed with command line and JSON. Anybody have a tutorial for the OSX install portion? Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 I'm have trouble figuring out how to install the homebridge on my OSX server. I've never messed with command line and JSON. Anybody have a tutorial for the OSX install portion? This is where I installed it first.You need to install node, which has an installer from their web site. Then you just open a command prompt and follow the instructions here on getting it with git and running npm installhttps://github.com/nfarina/homebridge Link to comment Share on other sites More sharing options...
alanchow Posted October 29, 2015 Share Posted October 29, 2015 Yep c4soap does just that. It's an internal API but it is how navigator communicates to director. Link to comment Share on other sites More sharing options...
niall Posted October 29, 2015 Author Share Posted October 29, 2015 Yep c4soap does just that. It's an internal API but it is how navigator communicates to director. Thanks, but as I said that means it doesn't exist outside of Control4 Inc. They seriously need to create an API for outside devices to use before its too late for them. Link to comment Share on other sites More sharing options...
msgreenf Posted October 29, 2015 Share Posted October 29, 2015 Thanks, but as I said that means it doesn't exist outside of Control4 Inc. They seriously need to create an API for outside devices to use before its too late for them.Nothing prevents you from using c4 soap. You just have to figure it all out and expect no c4 support Sent from my iPhone using Tapatalk Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.