Jump to content
C4 Forums | Control4

Homebridge Driver for HomeKit Support?


Joshua Pressnell

Recommended Posts

5 hours ago, Joshua Pressnell said:

The driver I'm currently working on wouldn't do this so well.  My initial goal was to do a direct link between C4 hardware and HomeKit hardware concepts.  HomeKit doesn't have any "AV profiles" yet, so "Hey Siri, Watch AppleTV in my bedroom" won't link easily to starting an AV source in a room.  It's easy enough to get that kind of thing done, but in HomeKit, it would have to look like a series of switches.  Then you'd tie the "switch state" to active scenes (Watching Apple TV, Watching News, etc) and turning one on would turn the others off and have the desired effect you wanted.  

I might be convinced to make a separate driver/plugin that does that, but it goes beyond the intent of my C4/HomeKit bridge enough that I wouldn't want to muddy the waters with it in this product.

Considering the proliferation of Dots in my house, there really is no need for video control via HomeKit. If I'm there to see it, the Dot (or wand) can make it happen. 

Link to comment
Share on other sites


Ok folks... I have the homebridge plugin pretty well prepared and published in npm.  You can find it here -> https://www.npmjs.com/package/homebridge-control4

For those of you with homebridge setups already (or at least a machine that's always running that you don't mind installing homebridge on), you can go ahead and install my plugin via npm to get your setup prepared for the driver.

I've got the driver setup for beta test and I'm just doing final testing on it now to make sure it's stable.  I'll post a link to the beta driver here as well as soon as I'm sure it's solid and good to go.  The beta will work until Dec 15, at which point the driver will no longer operate.

Link to comment
Share on other sites

Okay.  The driver's looking solid so far.  I'm going to go ahead and post it here and hopefully get feedback from you folks.  You can download it here -> https://dl.dropboxusercontent.com/u/13324724/homebridge.c4z

As a reminder, this driver will only be functional until Dec 15 OR until I release a new updated version of the beta.  A new release will deactivate old beta versions.  Since there's no programming involved, it's not a problem.  Just upgrade the driver to the new version (or delete it and re-add the new version) and everything will pick up from where you left off.

The documentation outlines what you need to do to get it running.  If you're familiar at all with homebridge, it should be a piece of cake.  I don't want to post more than that here, because I really want feedback on the documentation as well as the driver operation.  If something doesn't make sense, I'd like to know about it.

Please let me know when you folks have installed the driver and gotten the plugin working.  I'm interested in success stories as well as trouble reports, as I want to verify that everything is solid, not just find errors.

A note on doors that's not in the documentation yet.  By default, all window and door "contact sensors" in the project will get output using a generic "Contact" device type in the homebridge plugin.  Due to how HomeKit works, you can display contact sensors, but it doesn't let you get notifications when open/close events happen.  If you want a door with a notification (I like to have my front door do this so I can see when my kids get home), then you'll need to change the configuration a little bit.  Just change the "Service" value in the config.json to be "Door" instead of "Contact".  The downside here is that HomeKit thinks doors should be something you can *control* so HomeKit will give you the option to open/close the door.  My plugin ignores those commands, so if you tap on the "Door" in HomeKit, it'll show as "Opening" with a transition status until you tap on it again to get rid of the "Opening" state.  There's not much I can do about that... and it's only a display issue.  But that way you can get notifications when a door opens and closes if you want.

Link to comment
Share on other sites

One further note.  Siri gets a little picky in terms of naming and how you define things.  If you can either say a command to turn on an exact item, or command to turn on all lights in a given room.  "Hey Siri, turn on the basement lights" will turn on all lights.  But if you say a command like "Hey Siri, turn on the basement hall light" and there isn't an item *named* "Basement Hall Light", then it will turn on all the lights in the basement.  So you really want to have an item named "Basement Hall Light" that's also located in the Basement room to make it play nice.  It takes a little tweaking to get used to, but once you understand how HomeKit works and get it all setup, it's pretty smooth.  And I really like setting the theater dimmer settings based using the Apple TV in my theater with the voice remote.  That's just fun.

Link to comment
Share on other sites

I haven't heard from too many people who are trying this out yet, but the homebridge-control4 plugin has been installed nearly 200 times.  I have been in touch with one person who is successfully using this driver in his project... so far so good.

I have a pre-configured homebridge appliance nearly ready to go on sale.  This will be a drop-in network appliance that comes pre-configured with everything needed to get the Homebridge driver running with HomeKit, and which supports a super-easy web-based configuration.  Plug it in, enter a few settings, and everything should "just work."  It will even auto-import the device configuration from your Control4 system. :)  Here's a little sneak-peek.  MSRP for the hardware box will be about $225.

Untitled-1.jpg

Link to comment
Share on other sites

Hey Folks, 

As I mentioned, I got this running last night and have been playing with it like mad.  I'm hoping it's ok with Joshua to talk about the great things I'm seeing:

I have no problems asking Siri to turn things on and off.  Much easier to create scenes on my iPhone than in Control4, test them, and of course use them.

I was just thinking another benefit over Amazon is being able to automate based on leaving or coming home.  It's nice to come home, have the correct garage door open, and lights go on - without pressing any buttons.  (I did most of that with Control4, but had to press the garage opener to trigger the scene).

I'm also a Mac fan, so for the first time, I used Siri on my Mac and asked her to lower the lights.  very nice.  

 

Josh - great job!  I'm hoping you keep it up an go commercial, it won't be fair to loose the driver!

 

 

Link to comment
Share on other sites

1 minute ago, ekohn00 said:

 I'm hoping it's ok with Joshua to talk about the great things I'm seeing..

No!  Absolutely not!  You must not say wonderful things about my work!!  *glib smile*

2 minutes ago, ekohn00 said:

Josh - great job!  I'm hoping you keep it up an go commercial, it won't be fair to loose the driver!

Don't worry... it'll happen.  I spent a good portion of my spare time today working on the web-based appliance code.  It's my personal opinion that the drop-in appliance is critical to the commercial success of the driver.  Too many users and too many dealers won't understand the concept of homebridge and running their own mini-servers.  The overall package *has* to be as completely seamless as possible in order to get widespread adoption.  Sadly, that means idiot-proofing the setup and *tons* of documentation, which all takes time.

Link to comment
Share on other sites

Sarcasm.....cool!

Yep, I do recommend the appliance, it wasn't straight forward setting up homebridge.  And auto-running it, is probably something the average Mac user won't be able to do.  Now being I have it installed - I hope you also have a driver-only version too. 

I do have a feature request.  I think there's no real audio with HomeKit, but do you think there's any way to shut off a room - and I don't mean the lights but the audio/TV that might be playing?

 

thanks again.  and don't worry I won't say wonderful things anymore.

Link to comment
Share on other sites

1 hour ago, ekohn00 said:

Sarcasm.....cool!

Yep, I do recommend the appliance, it wasn't straight forward setting up homebridge.  And auto-running it, is probably something the average Mac user won't be able to do.  Now being I have it installed - I hope you also have a driver-only version too. 

I do have a feature request.  I think there's no real audio with HomeKit, but do you think there's any way to shut off a room - and I don't mean the lights but the audio/TV that might be playing?

 

thanks again.  and don't worry I won't say wonderful things anymore.

LOL.... I'm a light-hearted soul. ;)

anywho... you'll need to get creative if you want more "control4-like control" There's an Extra Vegetables "virtual switch" driver that basically creates a programmable "switch state". Use C4 programming to update the switch to on when the room comes on. The program the "turned off" action to shut the room off.  Then you just have to name your virtual switch in a way that's pleasing so you can command it with Siri. If you hide that switch from navigators, basically it all comes together very cleanly. 

Link to comment
Share on other sites

For those following along at home, I've updated the copy of the driver located here -> https://dl.dropboxusercontent.com/u/13324724/homebridge.c4z

This new version extends the beta timeout from 12/15/16 to 1/15/17.  It also includes support for a few new C4 drivers (several new ones that use the light proxy) and has updated documentation to identify which C4 drivers are currently supported.  

Link to comment
Share on other sites

For those following along at home, I've updated the copy of the driver located here -> https://dl.dropboxusercontent.com/u/13324724/homebridge.c4z

This new version extends the beta timeout from 12/15/16 to 1/15/17.  It also includes support for a few new C4 drivers (several new ones that use the light proxy) and has updated documentation to identify which C4 drivers are currently supported.  

Joshua I would love to help testing this out but I'm kind of a noob, I would have to start from scratch. Let me know if you need the additional hands on help!

Link to comment
Share on other sites

Ok... one more update.  For folks following along, an updated copy of the driver is here -> https://dl.dropboxusercontent.com/u/13324724/homebridge.c4z

I'm updating the "current driver version" value on my server this afternoon, so any existing installs of older driver versions will stop functioning.  Please update your projects to use the updated copy at the link here.

Also, I've updated the homebridge control4 plugin.  On your homebridge servers please "sudo npm install -g homebridge-control4" and make sure your installed version is 1.0.12.

This update includes support for Door Locks.  Also, I expanded support to attempt to find lights and dimmers by generic proxy, so that if they're not picked up by the specific driver names, they'll still be found and output in the config.  Devices identified this way will be classified as lights (not dimmers), so if you have a dimmer that's picked up and mis-identified, you'll need to manually modify the config.json to account for it.

Any questions, let me know.  Cheers.

Link to comment
Share on other sites

  • 1 month later...

OK folks.  The latest copy of the driver is available here -> https://dl.dropboxusercontent.com/u/13324724/homebridge.c4z

This version plays nicely with my soon-to-be-released hardware appliance, and also extends the expiration date to 02/15/17.  At that point, my hardware should be finalized for production release, and I should have the production driver available on HouseLogix.

Link to comment
Share on other sites

OK folks.  The latest copy of the driver is available here -> https://dl.dropboxusercontent.com/u/13324724/homebridge.c4z

This version plays nicely with my soon-to-be-released hardware appliance, and also extends the expiration date to 02/15/17.  At that point, my hardware should be finalized for production release, and I should have the production driver available on HouseLogix.

Looking forward to that drop-in solution!!

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.