News about HomeKit and Vera

[quote=“Hackworth, post:360, topic:186853”]@rlmalisz Absolutely, once I’m home. In the meantime, I’ve been poking around for other people with the issue and they’re suggesting one of your devices is causing it to die. I’ve got two ideas, one you could look at your http://IPADDRESS:51826/accessories file (after running it through a json formatter service) and see if anything looks wrong, for instance a value is outside a min or max value. The second is you could git checkout 15d263 which is the commit right before I converted this to bridge mode, then go add every device individually and note which fails to add.

Also, do you have window coverings or garage doors?[/quote]

Can do, it may be a day or two before I get it done.

Yes on garage doors, using the garage door plugin. And yes on window coverings, but they’re being controlled as dimmable lights via a plugin I wrote myself. They’re Hunter Douglas, so they actually report position and can have position set explicitly, so the window covering Vera interface was underwhelming.

You might want to poke at those two first, especially the window covering. I too am using the garage door plugin, so I’m reasonably sure that’s not causing the issue. I don’t have any window coverings, so I’m less sure about that.

BTW, I am still on UI5 (early version) Vera 2. Hope to migrate over the Christmas break to the V3 that’s been sitting in a drawer for a year+.

I would hope that would make no difference. But it’s worth mentioning.

–Richard

I’m using VeraHomeKitBridge (latest updates) on my Raspberry (newest Desbian Jessie lite OS) and everything works fine so far :smiley:

But I have 2 questions:

I start the HomeKitBridge in the appropriate directory with “nmp run start” but I’d like to start the Bridge automatically during the booting process of my raspberry. I’ve tried to realize that with “Forever” and “PM2” but it doesn’t work. Maybe I’m to stupid for that ???
Can anybody explain me how I can realize the autostart of VeraHomeKitBridge, maybe with a script or something?

I use several roller shutters (window coverings), controlled by Vera. In EVE or mytouchhome they were shown as dimmers. So I have to say ON or OF to Siri instead of OPEN or CLOSE. I know that Apple HomeKit actually supports no roller shutters. But is there a workaround? I found something in this forum to use it as a door lock ???

Sorry in advance if these are stupid questions, but I’m a beginner :-\

[quote=“rlmalisz, post:361, topic:186853”][quote=“Hackworth, post:360, topic:186853”]@rlmalisz Absolutely, once I’m home. In the meantime, I’ve been poking around for other people with the issue and they’re suggesting one of your devices is causing it to die. I’ve got two ideas, one you could look at your http://IPADDRESS:51826/accessories file (after running it through a json formatter service) and see if anything looks wrong, for instance a value is outside a min or max value. The second is you could git checkout 15d263 which is the commit right before I converted this to bridge mode, then go add every device individually and note which fails to add.

Also, do you have window coverings or garage doors?[/quote]

So the formatted json from “accessories” for our system is just shy of 23K lines. This is going to take some time. Is there any chance that we’re blowing out the end of some conservatively sized data structure?

–Richard

Can do, it may be a day or two before I get it done.

Yes on garage doors, using the garage door plugin. And yes on window coverings, but they’re being controlled as dimmable lights via a plugin I wrote myself. They’re Hunter Douglas, so they actually report position and can have position set explicitly, so the window covering Vera interface was underwhelming.[/quote]

[quote=“rlmalisz, post:365, topic:186853”][quote=“rlmalisz, post:361, topic:186853”][quote=“Hackworth, post:360, topic:186853”]@rlmalisz Absolutely, once I’m home. In the meantime, I’ve been poking around for other people with the issue and they’re suggesting one of your devices is causing it to die. I’ve got two ideas, one you could look at your http://IPADDRESS:51826/accessories file (after running it through a json formatter service) and see if anything looks wrong, for instance a value is outside a min or max value. The second is you could git checkout 15d263 which is the commit right before I converted this to bridge mode, then go add every device individually and note which fails to add.

Also, do you have window coverings or garage doors?[/quote]

So the formatted json from “accessories” for our system is just shy of 23K lines. This is going to take some time. Is there any chance that we’re blowing out the end of some conservatively sized data structure?

–Richard

Can do, it may be a day or two before I get it done.

Yes on garage doors, using the garage door plugin. And yes on window coverings, but they’re being controlled as dimmable lights via a plugin I wrote myself. They’re Hunter Douglas, so they actually report position and can have position set explicitly, so the window covering Vera interface was underwhelming.[/quote][/quote]

So I am seeing some entries in the accessories file where the description is “BlaBla”:

                  {

                     "iid": 9,

                     "type": "0000000E-0000-1000-8000-0026BB765291",

                     "perms": [

                        "pr",

                        "ev"

                     ],

                     "format": "int",

                     "value": 0,

                     "description": "BlaBla",

                     "maxValue": 4,

                     "minValue": 0,

                     "minStep": 1

                  },

Is this odd, or what?

Have 2 Vera edges covering my home. I want to use VeraHomeKitBridge to control both Vera’s, how do I do this?(I have successfully set up for one Vera)

You can setup two bridges on different ports of the same computer or use two computers each with its own bridge. You would also have to look into the code to find where the bridge port is defined and change it manually. If I remember correctly it is in app.js towards the end.

@rlmalisz - ;D Or What. That’s actually in the HAP-NodeJS Garage Door accessory template.

@dsroberts1945 - You can’t run it twice on the same box since it has to register a name in Bonjour. You could run it in a bridged VM or run it on a separate box.

Hi,
I have the same issue of rlmalisz (or similar):

VeraLink ------ Temp sensor Added: Allarme in corso +0ms VeraLink ------ Temp sensor Added: Antincendio +11ms VeraLink ------ Switch Added: Luce Balcone +10ms VeraLink ------ Switch Added: Luce Cucina +3ms VeraLink ------ Switch Added: Luce Mobile +2ms VeraLink ------ Switch Added: Luci Natale +1ms VeraLink ------ Switch Added: Multimedia +3ms VeraLink ------ Temp sensor Added: Radar Balcone +1ms VeraLink ------ Temp sensor Added: Stato Allarme +2ms Accessory [Allarme in corso] Creating new AccessoryInfo for our HAP server +3ms Accessory [Allarme in corso] Creating new IdentifierCache +10ms Accessory [Antincendio] Creating new AccessoryInfo for our HAP server +15ms Accessory [Antincendio] Creating new IdentifierCache +1ms Accessory [Luce Balcone] Creating new AccessoryInfo for our HAP server +3ms Accessory [Luce Balcone] Creating new IdentifierCache +1ms Accessory [Luce Cucina] Creating new AccessoryInfo for our HAP server +2ms Accessory [Luce Cucina] Creating new IdentifierCache +1ms Accessory [Luce Mobile] Creating new AccessoryInfo for our HAP server +1ms Accessory [Luce Mobile] Creating new IdentifierCache +1ms Accessory [Luci Natale] Creating new AccessoryInfo for our HAP server +3ms Accessory [Luci Natale] Creating new IdentifierCache +1ms Accessory [Multimedia] Creating new AccessoryInfo for our HAP server +2ms Accessory [Multimedia] Creating new IdentifierCache +1ms Accessory [Radar Balcone] Creating new AccessoryInfo for our HAP server +2ms Accessory [Radar Balcone] Creating new IdentifierCache +0ms Accessory [Stato Allarme] Creating new AccessoryInfo for our HAP server +3ms Accessory [Stato Allarme] Creating new IdentifierCache +11ms EventedHTTPServer Server listening on port 5228 +12ms EventedHTTPServer Server listening on port 5336 +9ms EventedHTTPServer Server listening on port 5442 +8ms EventedHTTPServer Server listening on port 5446 +5ms EventedHTTPServer Server listening on port 5450 +5ms EventedHTTPServer Server listening on port 5406 +5ms EventedHTTPServer Server listening on port 5230 +5ms EventedHTTPServer Server listening on port 5212 +5ms EventedHTTPServer Server listening on port 5226 +4ms EventedHTTPServer [10.0.0.72] New connection from client +18s EventedHTTPServer [10.0.0.72] HTTP server listening on port 54826 +1ms EventedHTTPServer [10.0.0.72] HTTP request: /pair-setup +12ms HAPServer [D0:98:17:15:05:55] HAP Request: POST /pair-setup +1ms HAPServer [D0:98:17:15:05:55] Pair step 1/5 +3ms EventedHTTPServer [10.0.0.72] HTTP Repsonse is finished +36ms EventedHTTPServer [10.0.0.72] HTTP request: /pair-setup +6s HAPServer [D0:98:17:15:05:55] HAP Request: POST /pair-setup +0ms HAPServer [D0:98:17:15:05:55] Pair step 2/5 +2ms EventedHTTPServer [10.0.0.72] HTTP Repsonse is finished +24ms EventedHTTPServer [10.0.0.72] HTTP request: /pair-setup +9ms HAPServer [D0:98:17:15:05:55] HAP Request: POST /pair-setup +0ms HAPServer [D0:98:17:15:05:55] Pair step 3/5 +2ms HAPServer [D0:98:17:15:05:55] Pair step 4/5 +10ms HAPServer [D0:98:17:15:05:55] Pair step 5/5 +2ms Accessory [Luce Balcone] Paired with client 41A2BADC-E0E1-4141-BFA0-29093C7CCC48 +5ms EventedHTTPServer [10.0.0.72] HTTP Repsonse is finished +6ms EventedHTTPServer [10.0.0.72] Client connection closed +51ms EventedHTTPServer [10.0.0.72] HTTP connection was closed +2ms EventedHTTPServer [10.0.0.72] HTTP server was closed +1ms

On the client (Insteon, EVE, ecc) the error is “Unable to comunicate with the device”.

As attached the accessories list.

Thanks for the support

Have finally gotten around to doing this. Partially. Have reverted to the non-bridge version, and started adding things onesies. Once it failed to add one of three identical garage doors, but on a second pass (after blowing everything away and starting over), that went fine. Have added all of my hand-written dimmers, virtual switches, etc. All added successfully. Have not added all of the z-wave devices yet, but will be surprised if they are an issue. So thus far, nothing has shown up as suspect.

I have a ton of scenes, none of which are the nice “turn blah on”/“turn blah off” genre. I have to wonder if the scene aggregation logic you’ve got in the bridge version is falling down a flight of stairs on that. But starting up the bridge seems to get through device enumeration just fine. Dunno.

Anyway, I’ll try to finish adding the z-wave devices over the weekend, but am not expecting much by way of enlightenment.

–Richard

@rlmalisz The scenes are fine. I thought of another way you could troubleshoot. On the current commit, in app.js there’s some case statements for each category of device, you could comment out categories one by one to single out which category is causing the issue.

Good hint. I went through this methodically, and commented everything out but switches, and things came up. But I was annoyed at the enormous number of “switches” for scenes (how do you invoke those using Siri, anyway?), so I commented out the “processScenes” line in app.js. Added things back in onesies. Worked every time. Finally uncommented out the scene processing. Breaks.

So there’s something odd going on here. It appears having scenes processed with just the light switches works. But having them processed with everything else enabled breaks. I can try to do a binary search this weekend to see which thing + scenes breaks the pairing. But it’s odd. For now, I am happy to leave the scenes commented out and have something to play with.

–Richard

One more question about scene-pair conversion. From the code and from your github instructions, it looks like the only time a pair of scenes would get converted to a virtual device/accessory is when the pair is exactly of the form:

whatever - on
whatever - off

Is that the case, or is it more general than that?

In either case, what happens if “whatever” is a real device and you create a “whatever” virtual device/accessory from the pair of scenes? Do both get exposed with the same name? I can see where HomeKit would refuse to accept that as a valid response, and cause Eve tp drop the connection.

If the regular expression matching is as strict as it appears, this isn’t what’s happening to me. But it may be something to look at.

–Richard

@Hackworth, @Albeebe and others - Thank you for your time on this project. I posted a video of it working on the Apple Watch, you can see it on YouTube here: [url=https://youtu.be/T5kibmQiTuM]Vera HomeKitBridge - YouTube

With WatchOS 2 I don’t have any of the Siri handoff issues people where reporting before. It works great and is very responsive.

For those just looking to set this up, don’t use the instructions on the first post. Use @Hackworth’s repo on github and the instructions there.

@Chris H. - Thanks so much! Glad it’s working for you :slight_smile: I too have an Apple Watch it works well on, I would however like an Apple TV so it’s functional when I’m not on my local wifi.

@rlmalisz - Scenes have to match " - On" or " - Off" its all in the code. It won’t create a duplicate named device, it’ll log it to the console. Again, all in the code.

@Hackworth, yeah I just read today that I can use the AppleTV to allow me to control it out of the house, I plan on trying that out tonight when I get home.

Another question, this works great on my iPhone and Apple Watch but I went to install it on my Wife’s iPhone and Apple Watch but when I opened the Elgato Eve app on her phone and tried to add the VeraHomeKitBridge to her app it never found it. Can this only be paired to one iPhone at a time? Do I need to setup another Raspberry Pi with VeraHomeKitBridge on the network just for her iPhone?

I didn’t get mine up and running til about 2am so I may have missed something, I’ll try again this evening, but was just wondering if anyone else had multiple iPhones pared to the same VeraHomeKitBridge.

@Chris H. - So HomeKit lets you share your house to other iCloud members, no need to pair her phone separately.

@Chris H

In Eve app…settings cog / Guest Access / Invite People.

Apple TV support outside of the LAN only allows the primary icloud account remote access. Unless your wifes iphone is using your account she will not get remote access to Homekit.

Also “guests” do not need Eve installed to have Siri do their bidding.

HTH

OK, I went into Settings->HomeKit->Home and invited my wife using her AppleID Email and everything worked great, she can now control everything I setup with Siri on her Apple Watch. The wife was happy… Happy Wife, Happy Life.

Spent all night trying to get Remote Access working with my AppleTV 3 but no luck.

  1. Made sure I had the latest update on AppleTV,
  2. Made sure I had “Allow Remote Access” enabled in Settings->HomeKit->Home,
  3. Signed out and back in to my iCloud Account on my AppleTV,
  4. Toggled “Allow Remote Access” off and back on, Signed back out and back in on AppleTV,
  5. Reset HomeKit and repeated steps 2 & 3.

Am I missing something here? Did anyone else get Remote Access working with the AppleTV 3?

From what I was reading it looks like with iOS9 you shouldn’t need the AppleTV to talk to the HomeKit Bridge remotely:

Starting with Apple's iOS 9 update, your iPhone can securely chat with your HomeKit bridges and accessories even while out of the house. It can do so because of the new HomeKit Accessory Protocol (HAP), which uses secure networking over iCloud to talk to your connected HomeKit accessories. HAP doesn't work with prior versions of Apple's mobile operating system; as such, if you're still using iOS 8, you'll still need to use and set up an Apple TV for controlling your house outside your local Wi-Fi network.
source: [url=http://www.imore.com/everything-you-need-know-about-apple-tv-and-homekit]http://www.imore.com/everything-you-need-know-about-apple-tv-and-homekit[/url]

Can anyone else out there that is using HomeKit Remotely chime in and give us more input.