Homebridge/HAI/UPB

tannebil

Member
Anybody done anything with Homebridge? It's an open source program for connecting non-HomeKit devices to HomeKit. I've played around a bit and connected HomeKit to Smarthings but I'm really more interested in connecting either to an Omni (directly over Ethernet or via HaikuHelper) or my UPB switches.
 
https://github.com/nfarina/homebridge
 
First of all, I don't own a Smart Things hub or plan to purchase one in the near future.
 
But if it were up to me, I would use the SmartThings hub. IMHO, the ST hub is a very open, developer friendly platform, very conducive to integrating third party products. The flip side, using HomeBridge does concern me since their github page indicates that the product is ONLY a temporary solution until manufacturers start implementing the Homekit API. Thus, support of HomeBridge will probably wane over time.
 
The ST forums in general and the ST developer forum in particular are very robust. So, I believe you will receive a lot of support if you attempt to interface the Omni and UPB to ST. The only requirement would be to have a solid background in programming.
 
There have been a few requests on the ST forum to integrate the Omni and UPB. But AFAIK, nothing ever became of the requests.
 
Finally, as I said before, if you have a solid background in programming, you can use open source software such as JomniLink to access the Omni from Homekit via ST. Also, you could use my UPB open source application to do the same with UPB.
 
The programming part is the kicker. I've got a bit of programming experience but it's mostly pre-web so things are JSON, JavaScript, OATH, and GitHub are pretty mysterious technologies to me.
 
If I thought there were good alternatives to HAI/UPB, I'm not so invested that I couldn't jump but ST/Z-Wave/ZigBee feels like a long way from the reliability and robustness that I'm used to having. Both Z-Wave and ZigBee mesh networks always sound about one step away from a mysterious meltdown leading to hours of troubleshooting while the idea of replacing all my built-in door/window dry contact sensors with ugly battery-powered sensors seems crazy.
 
If you need JavaScript for it, several years ago, HAI put out a 100% javascript module for communicating with the OmniPro's from the Philips Pronto remotes.  That code could possibly be a starting point for getting something going with a plug-in since it has all the code for handling encryption and message responses.
 
I have interest in this as well.  I've done some work with Homebridge and DSC alarm control so far, but haven't looked in to Omni/Lumina integration (which I suspect is a bigger task.)
 
Just to learn a little more about HomeKit,, I installed homebridge-http and configured a few of my lights into it. HomeKit apps talk to HaikuHelper via http and HH talks to the Omni. It actually works OK as a proof of concept. I'm going to see if I can do something similar for Smartthings.

Creating either a homebridge-omni or an Omani device for Smartthings is beyond me but I'd be glad to work with anyone that's interested in pursuing either one.
 
I haven't been as thrilled with using Alexa as I thought I would as it has a hard time understanding commands at times.  Today I killed a couple of hours by installing homebridge and doing a little proof-of-concept interfacing.  So far, the speed of Siri vs Alexa seems a bit faster.  Not sure if all Siri requests go out to Apple like the Alexa ones do with Amazon, but it is quick.
 
I'm doing this with my own custom app that is an HTTP listener and maintains a connection to the Omnipro.  I'm using the homebridge-http module so the homebridge app sends URL's that triggers a device on/off/dim and return status.  I've not attempted to do anything with security or zones yet.
 
Just a quick update.

I ended up using OpenHAB (1.9) as a shim between HomeKit and Homebridge. As somebody once said, the surprising part wasn't that it works badly but that it works at all. There were some minor issues along the way, e.g. dimming broke with iOS 10 so all my dimmers had to redefined as switches, OpenHAB push notifications got moved to a new server so it took some fussing around to get working on the new service, a change in macOS broke the startup shell script, everybody on the OpenHAB forums seems to be into advance stuff like MQTT so I feel like an idiot trying to follow things, the HAI/Omniscript binding has some limitations (but nothing that effects me), it lacks an active developer for either the OpenHAB binding or the Homebridge plug-in so it's always one change away from being dead in the water, and it's not at all clear how well it works with OpenHAB 2.0 which is now out of beta. But it mostly works and, despite what you might read elsewhere, all it needs is some copy/paste configuration and some trial/error to get working. Virtual servers are a godsend for this type of work (I'm using macOS VMs running on a Mac Mini with Parallels).

SmartThings via Homebridge is also working although I mostly use it for a couple of Z-Wave door sensors. Like OpenHAB, it requires some care and feeding, the most recent being this week when everybody needed an update to reduce the amount of traffic hitting the ST servers. That update required an update to Homebridge and, like an idiot, I decided that I should update node and npm, so it didn't take me long to turn my Homebridge and OpenHAB virtual servers into dumpster fires. But I rolled them back, limited myself to the essential upgrades, and I was back in business within a day.

The reality is that I lack the interest and skills to keep this precarious mountain of software and hardware running indefinitely so my plan is to strip it down as opportunities present themselves. HAI/Omni, Homebridge, SmartThings, UPB, SmartThings, and OpenHAB are all on the list of things I'm expecting to replace in the next couple more years. HomeKit, Lutron (switches and shades), Hue, Alexa, SimpleHome (for AV), Nest Protects, and Nexia (thermostat only) are the technologies I'm investing in now.

I'm not saying that these are the right technologies for anybody else (most of the people here would think that keeping that mountain running was at least half the fun of HA and want to hack it) but these are the ones that fit most comfortably with my skills and interests. Also, I think these are the ones (except maybe SimpleHome which is not so simple) that my wife wouldn't have to immediately pay to rip out if I got hit by a bus.
 
tannebil - I'm guessing you mean you're using OpenHAB as a shim between Homebridge and the OmniPro (since Homekit to Homebridge requires no shim).  I installed OpenHAB and played with it briefly, but wasn't real impressed (mostly just as it relates to supporting the OmniPro).  The lack of info on getting the OmniPro working plus the fact that, like you, I'd be putting another platform into the mix just to get OmniPro communication working, turned me off.  The funny thing with that is the main author of OpenHAB (DigitalDan) is also the author of an older iPhone OmniPro program called "H@me" that I still use and consider one of the best apps I have.  Unfortunately he no longer has an OmniPro, so I'm guessing that's why both the H@me app is dead as well as the OpenHAB OmniPro support.
 
Even though HAI/Leviton hasn't done much in years with the OmniPro platform, I'm still satisfied with the ability to create interfaces to it.  It took a couple of days to get an Alexa interface going, but once that was done, I instantly had over 100 devices controllable by voice.  Once I do some work on the Homebridge plugin, I'll have everything working there as well.   While I'm looking forward to playing more with the Homekit stuff, I'd never rely on it as a platform for scheduling and controlling devices.  It's just too slow using the apps with a lot of devices and I've already encountered some of the oddities that iCloud syncing causes.  I guess what I'm saying is that I still really like having a hardware controller like the OmniPro at the heart of things as it is just plain reliable.  I wouldn't want to rely on cloud devices from several manufacturers to try and get the same level of integration and stability.
 
Related to Homebridge, during this last week I wrote a Homebridge plugin for Embedded Control Concepts, Brewery Control System (https://www.embeddedcc.com/).   Doing this plugin has been a huge learning curve for me and after I have this all wrapped up, I'll be looking to do a full fledged OmniPro plugin.  I'm already using the homebridge-http plugin with my OmniPro with great success.  Homebridge seems a little light on documentation, but once I got past the learning curve, it actually is a pretty nice little platform for Homekit/Siri integration.  I'm still not sure if I'll use my HTTP listener app along with the Homebridge plugin or if I'll write a pure Homebridge plugin that doesn't require any other apps.  The former will be easier for me, but the latter would be something that everyone could easily use.
 
Since all Homebridge plugins are open source, many existing plugins get leveraged to make new plugins.  FWIW, the code for the Homeseer plugin looks like a decent starting place to start working on an OmniPro plugin.  
 
Back
Top