Jump to content

iOS 11 HomeKit Software Authentication Support


addilapi

Recommended Posts

Posted

Yeah, I have two Apple TV 4's. Just to rule them out as well as my own iOS devices, I did another test by wiping out the persist and accessories folders in Homebridge and used my parents iPhone 7 (not tied to my iCloud account) and got the same result. What's even stranger is that after a while ALL of my devices completely disappear from the Home app and cannot be recovered without repeating the entire setup process. So close yet so far away,..

Chuck

As it turns out, I believe I inadvertently created this problem by assigning out of bound variable values to switches. So far, it's been stable since setting the variables back to inbound parameters. After doing some reading I discovered that HomeKit will remove devices which report incorrect status values after a given period of time. The reason I did this is because HomeKit will not send an on/off command if a switch is already matching the requested state . This creates a problem when using switches with IR devices which doesn't report current state. Example: controlling a TV, HomeKit has no sense of the current state, and if I try to send an off command for that switch when it's already reporting its current state as off, results in HomeKit not sending the off request. At the end of the day, it creates a new problem with devices being out of sync...

 

Chuck

Posted

Hi Chuck, 

 

I might have a solution for you ... I'm using isymaker https://www.npmjs.com/package/homebridge-isy-maker as it allow to create fake switches or devices (just by creating a variable with a certain naming convention) in HomeKit triggered by a value.

 

In my case, I have network ressources (controlling whole house Audio, TV, Camera...) Changing the variable will change the switch status to on or off..

Check it out, and hope this helps.

Posted

Hi Chuck, 

 

I might have a solution for you ... I'm using isymaker https://www.npmjs.com/package/homebridge-isy-maker as it allow to create fake switches or devices (just by creating a variable with a certain naming convention) in HomeKit triggered by a value.

 

In my case, I have network ressources (controlling whole house Audio, TV, Camera...) Changing the variable will change the switch status to on or off..

Check it out, and hope this helps.

Hi,

 

That's what I'm using now and it works great with one exception. I have some switches pointing to IR devices which don't report status, so for example if I want to turn on or off my TV, I have a variable set up for that device along with a program which polls this variable and responds accordingly. The only way this works in this case is if the device stays in sync with HomeKit. Let's say for example that I use the remote to turn on my TV, HomeKit has no idea that the TV is on, so now let's say I try to turn the TV off using Siri, HomeKit will see this switch as off so it will not send the off command. I tried to work around this by setting the variable value at "3" after receiving requests which solves the switch not triggering in all cases but creates a major problem with status updates back to HomeKit since the status returns an out of bound value and eventually causes HomeKit to remove my devices because it thinks there is a problem.

 

Any ideas?

Chuck

Posted

Ok now I understand better... humm not easy to work around this in that case. Everything works well if it's all controlled via Network ressources (IE: having program to send IR commands to a global cache or something) but when adding the remote, you loose the status.

 

Not a clean solution, but maybe a workarround would be to create 2 variables 

 

Like  hb.My_Television1.Switch.On and hb.My_Television2.Switch.On

 

Then use My_Television1 variable to tunr on the TV and Television2 to only turn off the TV.

 

You could have a script that monitors those variable and always reset them so if you ask Siri to turn on Television1, the variable will change from 0 to 1 and trigger your program to turn on the TV. 

Add a wait in that program to change back the Television1 variable back to 0 after x seconds.

 

Do the revers with Television2 variable and an associated program.

 

You would have to always use the 2 names for each option.

 

On: Siri turn television1 On

Off: Siri turn television2 Off

 

Not super clean, but a viable workaround ;)

 

Hope this helps

Posted

Ok now I understand better... humm not easy to work around this in that case. Everything works well if it's all controlled via Network ressources (IE: having program to send IR commands to a global cache or something) but when adding the remote, you loose the status.

 

Not a clean solution, but maybe a workarround would be to create 2 variables 

 

Like  [/size]hb.My_Television1.Switch.On and hb.My_Television2.Switch.On[/size]

 

Then use My_Television1 variable to tunr on the TV and Television2 to only turn off the TV.[/size]

 

You could have a script that monitors those variable and always reset them so if you ask Siri to turn on Television1, the variable will change from 0 to 1 and trigger your program to turn on the TV. [/size]

Add a wait in that program to change back the Television1 variable back to 0 after x seconds.[/size]

 

Do the revers with Television2 variable and an associated program.[/size]

 

You would have to always use the 2 names for each option.

 

On: Siri turn television1 On

Off: Siri turn television2 Off

 

Not super clean, but a viable workaround ;)

 

Hope this helps

Excellent suggestion and I have implemented it with success. That said, the last challenge I'm experiencing is with the naming of devices and commands. Coming from the Amazon Echo, I've gotten familiar with accepted words/phrases used to name device commands, however I'm finding it a bit more challenging with Siri. Example: "Turn on Apple TV" sometimes results in "I'm sorry I can't do that" while other times Siri will execute the command. I tried setting up a scene and it seems to be a bit more reliable but still sometimes hit or miss as well. I have discovered that by using the prefix "set', it seems to cause Siri to try to match my request to available HomeKit scenes.

 

Any advice you could offer on this subject?

 

Thanks for all of your help!

Chuck

Posted

Hi Michel,

 

I strongly disagree with this. Apple will NEVER allow the type of customizations that the ISY allows. HomeKit could replace the ISY for very simple setups for light home automation. It will not replace the ISY for the type of customer that are currently coming to you for a home automation solution. All the scripting and customization is something that Apple won't do. I do not think you should see Apple as a competitor here. But not having HomeKit support in your products is absolutely a competitive disadvantage, in my opinion.

 

Hopefully there will be an opportunity at some point in time for you guys to support HomeKit.

How is it a competitive disadvantage when not many controllers support homekit?

 

While variety is nice, It's better for them to focus on their strengths and have the best system for what they do, than try to cater to a small segment and lose out on what the majority wants.

 

While using a different system may not be perfect, there is at least a solution.

Posted
ahwman

 

Glad to ear it's working ;)

 

As for the issue, I also sometime have some replies saying it can't do that... always tough it was my pronunciation that was causing this, and did not spent the time to find the proper way to get it on all the time. 

But if you experienced it with Alexa (Amazon Echo) I had read that they implemented it in their Amazon IOS app..

 

I can't test it since I'm from canada and I do no tee it in the app. But maybe you can. You would still have to open the Amazon app (not as clean as siri)

 

http://www.macworld.com/article/3181810/ios/amazon-brings-alexa-to-its-main-ios-app-to-help-iphone-users-shop-and-track-orders.html

 

Or there is also this option maybe: 

https://itunes.apple.com/us/app/reverb-for-amazon-alexa/id1144695621?mt=8

 

Sorry I can't help you much on this one.

 

 

 
Posted

How is it a competitive disadvantage when not many controllers support homekit?

While variety is nice, It's better for them to focus on their strengths and have the best system for what they do, than try to cater to a small segment and lose out on what the majority wants.

While using a different system may not be perfect, there is at least a solution.

Thanks for all of your help!

  • 2 weeks later...
Posted

ahwman

 

Glad to ear it's working ;)

 

As for the issue, I also sometime have some replies saying it can't do that... always tough it was my pronunciation that was causing this, and did not spent the time to find the proper way to get it on all the time. 

But if you experienced it with Alexa (Amazon Echo) I had read that they implemented it in their Amazon IOS app..

 

I can't test it since I'm from canada and I do no tee it in the app. But maybe you can. You would still have to open the Amazon app (not as clean as siri)

 

http://www.macworld.com/article/3181810/ios/amazon-brings-alexa-to-its-main-ios-app-to-help-iphone-users-shop-and-track-orders.html

 

Or there is also this option maybe: 

https://itunes.apple.com/us/app/reverb-for-amazon-alexa/id1144695621?mt=8

 

Sorry I can't help you much on this one.

 

 

 

 

 

One more question if you please. Everything now seems to be working well with one major exception that's causing me great frustration. Sometimes, either Siri or Homebridge/Homekit goes crazy and will turn on most if not all of my devices instead of just the device I triggered. At first I thought that perhaps Siri had misunderstood me and tried to turn on my entire home or room so I purposely changed the name of my home and room to be sure, however this issues continues. Have you ever experienced this?

 

Thanks again,

Chuck

Posted

I'm a fairly simple user. Lots of devices, but they're all Insteon, except some Hue colored bulbs. Tinker a little, but nothing too sophisticated.

 

I have used Alexa with some success (much better success after integration with ISY, Thanks a TON!!!), but we use a LOT of other Apple products and I'm looking seriously at the Homepod release.

 

Any harm in using the ISY as the main device to create links, programs, and such. And then also use the Insteon Hub for Homekit (2243-222) for simply using your iOS devices to interact with your switches, etc. (specifically for the better Wife Acceptance Factor within the iPhone/iPad/Watch/Homepod)?

 

Just wondering..

Posted

ahwman

 

Glad it's is working well.

 

I had ran into a similar issue, and it was caused by the namming of my devices.

 

I now created 'zones' and the devices are in them

 

IE, (First floor, basement and exterior) sO I can ask siri to turn on the basement and it will do the all)

 

Or I can jsut request to turn on kitchen, or turn on front lights and it will do them...

 

Hope this helps!

Posted

ahwman

 

Glad it's is working well.

 

I had ran into a similar issue, and it was caused by the namming of my devices.

 

I now created 'zones' and the devices are in them

 

IE, (First floor, basement and exterior) sO I can ask siri to turn on the basement and it will do the all)

 

Or I can jsut request to turn on kitchen, or turn on front lights and it will do them...

 

Hope this helps!

The challenge with implenting this sort of a strategy is that most of my devices are actually switches which send IR commands to my TV, DVR, etc and are shared across multiple rooms based on occupancy. So when I say "Siri, turn the TV on", my ISY sends the command to the appropriate TV in the house based on occupancy which saves me having to be room specific with all of my commands, i.e. "Siri, turn the family room TV on". It may sound a bit lazy, but when you issue many commands as I do, it really makes a big difference. This is why I can't really break up these commands into rooms or zones...

 

Great idea however.

Chuck

Posted

Nice, preatty cool setup you have there... Sorry no idea for this one!! Maybe with the release of ios11 Siri will be better for what you're trying to do

 

 

Envoyé de mon iPhone en utilisant Tapatalk

  • 1 month later...
Posted

Hi Michel,

 

You mentioned that you need an Apple certified chip in order to work as a HomeKit hub. I actually do not think this is correct.

 

ikea is updating it’s TRÅDFRI Hub with HomeKit support. The hub does not have any special Apple sanctioned chip. This is a software upgrade to HomeKit.

 

If this is possible for this cheap Ikea Hub I really can’t imagine why the same would not be possible for your hub?

 

Am I missing something?

 

Thanks!

 

Philipp

Posted

Hi Michel,

 

You mentioned that you need an Apple certified chip in order to work as a HomeKit hub. I actually do not think this is correct.

 

ikea is updating it’s TRÅDFRI Hub with HomeKit support. The hub does not have any special Apple sanctioned chip. This is a software upgrade to HomeKit.

 

If this is possible for this cheap Ikea Hub I really can’t imagine why the same would not be possible for your hub?

 

Am I missing something?

 

Thanks!

 

Philipp

Hello Philipp,

 

The UDI team is fully aware of the new change in Apple Home Kit. This has been discussed in many other related threads. One of the pain points to the company is having to support multiple product sku's and firmware branch.

 

At a high level the company wants to move exclusively to the 5.XX branch moving forward. Once it becomes the official release the 4.XX will be EOL.

 

Lastly, none of the above addresses the endless validation, submission, testing process from Apple / UDI.

 

They are a small team and their primary focus thus far is to finalize Z-Wave Plus, Polyglot / Node Servers, and 5.XX.

 

 

Sent from my iPhone using Tapatalk

  • 2 weeks later...
Posted

Hello dear friends, i personally havent tried iOs 11 so far. that's because i'm afraid its going to have lots of bugs. is there someone who already tried it? how is it?! Any advices?!! i'm currently sitting home for 2 days taking growth hormone without getting out of my house because that's what my doctor said i need to do. in the meantime i decided to learn a bit and i count on you and this forum. thank you!

Posted

Hi Michel,

 

You mentioned that you need an Apple certified chip in order to work as a HomeKit hub. I actually do not think this is correct.

 

ikea is updating it’s TRÅDFRI Hub with HomeKit support. The hub does not have any special Apple sanctioned chip. This is a software upgrade to HomeKit.

 

If this is possible for this cheap Ikea Hub I really can’t imagine why the same would not be possible for your hub?

 

Am I missing something?

 

Thanks!

 

Philipp

 

 

Philipp,

 

I'd bet that IKEA had the authentication chip inside their hub all along, and when they completed their HomeKit certification with Apple, they pushed out a software update that started making use of that chip.

 

Below is a quote from the Apple Developer website in regards to the when that "chip" is required. 

 

 

How will a commercial HomeKit accessory be different from an accessory that I create using this specification?

Unlike a non-commercial HomeKit accessory, a HomeKit accessory that will be distributed or sold must incorporate the Apple Authentication Coprocessor, obtain Wi-Fi Alliance certification or Bluetooth SIG certification depending on the transport used, and complete HomeKit certification under the MFi Program. At a user level, a non-commercial accessory will use a different process for on-boarding an IP-based accessory to the network, and will present a warning dialog in iOS that the user must acknowledge before continuing.

.

Posted

Philipp,

 

I'd bet that IKEA had the authentication chip inside their hub all along, and when they completed their HomeKit certification with Apple, they pushed out a software update that started making use of that chip.

 

Below is a quote from the Apple Developer website in regards to the when that "chip" is required. 

There is some confusion that comes from the fact that Apple hasnt done a good job of updating its dev pages, but my understanding based is that the non-commercial page is actually alluding to a requirement for commercial products that no longer exists. In August, they changed pace and made it so that software authentication was acceptable for all Homekit uses; however using the Homekit badge and name still requires that the product go through the MFI certification. MFI does however require ONE of the following:

- Wifi Alliance certification

- Bluetooth Sig

- MFI hardware

 

Ikea and LIFX are 100% software auth.

Posted

There is some confusion that comes from the fact that Apple hasnt done a good job of updating its dev pages, but my understanding based is that the non-commercial page is actually alluding to a requirement for commercial products that no longer exists. In August, they changed pace and made it so that software authentication was acceptable for all Homekit uses; however using the Homekit badge and name still requires that the product go through the MFI certification. MFI does however require ONE of the following:

- Wifi Alliance certification

- Bluetooth Sig

- MFI hardware

 

Ikea and LIFX are 100% software auth.

350.png

  • 1 month later...
Posted

I’d love to see Homekit. It is part of the future and has a great and reliable platform behind it.

 

Fact: Homebridge works with no special chip.

Fact: Homekit is gaining momentum with new devices and UI improvements

Fact: There are amazing third party UIs that support homekit like Simple Home 5.0

Fact: Lutron supports homekit and the amazon ecosystem and is gaining momentum as is leviton.

 

Opinion: Smarthome, Universal Devices, others have a big opportunity to take what is solid Insteon hardware and bring that to each ecosystem (google, echo, homekit) with great software development. Smarthome/Insteon has proven that they are inept at doing this so the ball is in Universal Devices Hands. If it can be accomplished in open source on node.js then it can certainly be done by the talented team that brought us the ISY. Otherwise, the innovators will outpace the entrenched and we know how that works out.

Posted

Hi daveman918,

 

Homebrige runs on RPi with a CPU that is 100x faster than ISY. Also, it's in development mode and not official production (as far as I know). Once you take HomeBridge to production, there are no guarantees that you don't need a chip.

 

I totally understand Apple and their tightly managed ecosystem. This said, for a small company, it's just way too much overhead for something with an unknown (chip) future. It's just too risky. Hopefully things will change.

 

With kind regards,

Michel

Posted

Thanks Michel,

 

Yeah. I get the unfortunate situation re: the hardware, the challenge of the chip and supporting multiple ecosystems as a small company. It also pains me to see a missed opportunity to be the bridging hub between a bunch of devices, programs, etc. into HomeKit. Someone will do that at some point. 

 

I'm going to play a bit with Homeassistant tonight since they now have a homebridge plugin and see how that works. Looks like it may be the middleware piece that could give me homekit and an easy way to YAML up some dashboards. I'll let folks know how that goes.  :-)

 

Interesting times. 

 

Dave

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...