HomeKit Bridge Closed Beta Discussion

Posted on
Sun Feb 18, 2018 10:07 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: HomeKit Bridge Closed Beta Discussion

Colorado4Wheeler wrote:

So could you please try this and detail precisely what you did so I can reproduce the problem? In the above situation:

  1. Add new device
  2. Select HomeKit Bridge
  3. Select Server
  4. Change celsius to fahrenheit
  5. Click OK (didn't add any devices)


Added a second HomeKit Bridge Server device in Indigo, and did nothing other than change Celsuis to Fahrenheit. It created just fine, and started up fine as well (and the Preferences directory was created as specified as well).

That said, per my earlier post, when doing an install of 0.9.0 of the plugin in a clean Indigo environment (this same environment I just added the second HomeKit Bridge Server device to), I still experienced the problem of having to restart the plugin after adding the first HomeKit Bridge Server in order to get that server to start up.

ZachBenz's Plugins: RingForIndigo

Posted on
Sun Feb 18, 2018 11:31 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: HomeKit Bridge Closed Beta Discussion

ZachBenz wrote:
Colorado4Wheeler wrote:
I think I have located the issue, the people who didn't work initially must had created the server and just immediately click OK to save it because that's the only failure point because there was no validation to check if the ports and username were blank until I just added it to Beta 9, if you changed even one single field in the server it would have forced the three key fields to populate. Let me know if you think this is not a full solution, but I think it probably is.


I just installed v0.9 from a clean install, and even with clicking to select Farenheit, still had to reload the plugin once to get the server to start. Or am I misunderstanding?


Ok, after playing with this for a while, I found a key sign as to when the first HomeKit Bridge Server device is going to fail to start without a plugin reload after install of the plugin on a clean system: the existence of the directory ~/.config/configstore (which contains a single file: update-notifier-npm.json).

To reproduce:
    1. Delete all your HomeKit Bridge Server devices in Indigo
    2. Disable the HomeKit Bridge plugin in Indigo
    3. Delete the folder /Library/Application Support/Perceptive Automation/Indigo 7/Preferences/Plugins/com.eps.indigoplugin.homekit-bridge
    4. Delete the file /Library/Application Support/Perceptive Automation/Indigo 7/Preferences/Plugins/com.eps.indigoplugin.homekit-bridge.indiPref
    5. Delete the director ~/.config/configstore (easiest to do in Terminal)
    6. Enable the HomeKit Bridge plugin in Indigo, and click Save to accept the default Configure HomeKit Bridge settings
    7. Create a new device in Indigo of type HomeKit Bridge Server, and click Save to accept the default HomeKit Bridge Server settings

In the Indigo event log you'll see messages like:

Code: Select all
Feb 18, 2018 at 10:24:10 PM
   HomeKit Bridge                  Server 'new device' has changed ports or users, validating config
   HomeKit Bridge Warning          Attempted to verify a null port on portIsOpen, this shouldn't happen.
   HomeKit Bridge Warning          Attempted to verify a null port on portIsOpen, this shouldn't happen.


And the HomeKit Bridge Server device's state will remain "Stopped".

Also, note that ~/.config will not have a configstore directory in it

Now, reload the HomeKit Bridge plugin. The configstore directory is now created, and the HomeKit Bridge Server device will successfully start, with the Indigo event log showing something like:

Code: Select all
Feb 18, 2018 at 10:26:36 PM
   Reloading plugin "HomeKit Bridge 0.9.0"
   Stopping plugin "HomeKit Bridge 0.9.0" (pid 2056)
   Stopped plugin "HomeKit Bridge 0.9.0"
   Starting plugin "HomeKit Bridge 0.9.0" (pid 2084)
   Started plugin "HomeKit Bridge 0.9.0"
   HomeKit Bridge                  Rebuilding configuration for 'new device'
   HomeKit Bridge                  Attempting to start 'new device'
   HomeKit Bridge                  HomeKit server 'new device' has been started
   HomeKit Bridge                  HomeKit Bridge is loaded and ready to use


So, in summary, the presence/absence of the ~/.config/configstore directory is directly correlated with the first HomeKit Bridge Server device added on a clean install failing to start.

Given the file in that directory appears to be associated with NPM, I'm guessing this is occurring somewhere in the firing up of the javascript side of things...

ZachBenz's Plugins: RingForIndigo

Posted on
Mon Feb 19, 2018 12:24 am
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: HomeKit Bridge Closed Beta Discussion

v0.9.0 is not playing nicely with my Nest thermostats (which are themselves devices provided through Chameleon's Nest Plugin). Changing the temperature set point in the Home app on iOS 11.2.5 results in multiple errors showing up in the Indigo event log:

Code: Select all
Feb 18, 2018 at 11:16:26 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:16:52 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:17:18 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:17:44 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:18:10 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:18:36 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).


Judging from some of the code comments in plugin.py, I'm guessing the Nest Plugin has raised problems like this already... :-)

Note that the set point does indeed get changed on the thermostats, but with all the timeouts, a simple change plays out over the span of many minutes...(set point keeps getting changed, slowly)

My wife is sleeping, so I haven't yet investigated if this is a similar duplicate command being sent when using the Home iOS app vs. "Hey Siri" (see my previous note about this problem with Lightbulb type devices)

ZachBenz's Plugins: RingForIndigo

Posted on
Mon Feb 19, 2018 5:26 am
Coolcaper offline
Posts: 299
Joined: Aug 30, 2013
Location: Australia

Re: HomeKit Bridge Closed Beta Discussion

Colorado4Wheeler wrote:
So could you please try this and detail precisely what you did so I can reproduce the problem? In the above situation:

  1. Add new device
  2. Select HomeKit Bridge
  3. Select Server
  4. Change celsius to fahrenheit
  5. Click OK (didn't add any devices)


Deleted All Servers
Upgraded plugin to V0.9.0
Followed instructions as above

This is what I get in the log:

Code: Select all
SQL Logger                      creating table device_history_83936622 for "new device"
HomeKit Bridge                  Server 'new device' has changed ports or users, validating config
SQL Logger                      adding column "onoffstate_ui" to table device_history_83936622 ("new device")


The server does not automatically start after this

Colorado4Wheeler wrote:
This will help me to see if I can reproduce it in my current system and then also when I try it on a fresh copy of Indigo. Also, if it does not start as expected then please check the following folder and see if there is a subfolder with the device ID of the new server:

Code: Select all
/Library/Application Support/Perceptive Automation/Indigo 7/Preferences/Plugins/com.eps.indigoplugin.homekit-bridge



There is a subfolder there but nothing in it.

And as expected when trying to Turn On the server:

Code: Select all
HomeKit Bridge                  Rebuilding configuration for 'new device'
HomeKit Bridge                  Attempting to start 'new device'
HomeKit Bridge Error            HomeKit server 'new device' could not be started, please check the service logs for more information, now issuing a forced shutdown of the service to be safe.
HomeKit Bridge                  Attempting to stop 'new device'
HomeKit Bridge                  HomeKit server 'new device' has been stopped
HomeKit Bridge Error            send "new device" on failed


ZachBenz wrote:
Ok, after playing with this for a while, I found a key sign as to when the first HomeKit Bridge Server device is going to fail to start without a plugin reload after install of the plugin on a clean system: the existence of the directory ~/.config/configstore (which contains a single file: update-notifier-npm.json).

Also, note that ~/.config will not have a configstore directory in it

Now, reload the HomeKit Bridge plugin. The configstore directory is now created, and the HomeKit Bridge Server device will successfully start, with the Indigo event log showing something like:

So, in summary, the presence/absence of the ~/.config/configstore directory is directly correlated with the first HomeKit Bridge Server device added on a clean install failing to start.


I checked the folder you pointed to and I do have a update-notifier-npm.json file there. Yet the server did not start after creating it.

After a reload of the plugin, the server started.

Code: Select all
Reloading plugin "HomeKit Bridge 0.9.0"
   Stopping plugin "HomeKit Bridge 0.9.0" (pid 13609)
   Stopped plugin "HomeKit Bridge 0.9.0"
   Starting plugin "HomeKit Bridge 0.9.0" (pid 14473)
   Started plugin "HomeKit Bridge 0.9.0"
   HomeKit Bridge                  Rebuilding configuration for 'new device'
   HomeKit Bridge                  Attempting to start 'new device'
   HomeKit Bridge                  HomeKit server 'new device' has been started
   HomeKit Bridge                  HomeKit Bridge is loaded and ready to use

Posted on
Mon Feb 19, 2018 7:12 am
Coolcaper offline
Posts: 299
Joined: Aug 30, 2013
Location: Australia

Re: HomeKit Bridge Closed Beta Discussion

ZachBenz wrote:

Code: Select all
Feb 18, 2018 at 11:16:26 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:16:52 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:17:18 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:17:44 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:18:10 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).

Feb 18, 2018 at 11:18:36 PM
   HomeKit Bridge Error            Maximum time exceeded while setting the 'TargetTemperature' HomeKit characteristic for 'Downstairs Thermostat' (HomeKit device 'Downstairs Thermostat'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).



The same thing is happening to me with various devices. I don't have a thermostat or Nest:

Code: Select all
 HomeKit Bridge Error            Maximum time exceeded while setting the 'On' HomeKit characteristic for 'Bedroom Fan' (HomeKit device 'Bedroom Fan'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).
   Action Group                    Bedroom Fan On/Off
   Virtual Devices                 sent "Bedroom Fan" on
   HomeKit Bridge Error            Maximum time exceeded while setting the 'On' HomeKit characteristic for 'Bedroom Fan' (HomeKit device 'Bedroom Fan'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).
   Z-Wave                          sent "Dining Lamp" set brightness to 100
   Z-Wave                          sent "Dining Lamp" on
   Z-Wave                          received "Dining Lamp" power load to 95.947 W
   HomeKit Bridge Error            Maximum time exceeded while setting the 'On' HomeKit characteristic for 'Dining Lamp' (HomeKit device 'Dining Lamp'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).
   Z-Wave                          sent "Dining Lamp" off
   Z-Wave                          received "Dining Lamp" power load to 0.000 W
   Sent Hue Lights                 "Side Entrance Lights" on to 100 at ramp rate 0.0 sec.
   Sent Hue Lights                 "Side Entrance Lights" on to 100 at ramp rate 0.0 sec.
   HomeKit Bridge Error            Maximum time exceeded while setting the 'On' HomeKit characteristic for 'Side Entrance Lights' (HomeKit device 'Side Entrance Lights'), aborting attempt.  This can happen if you try to set a device to a state is is already in (i.e., turning off a device that is already off).
   Sent Hue Lights                 "Side Entrance Lights" off at ramp rate 0.0 sec.

Posted on
Mon Feb 19, 2018 9:37 am
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: HomeKit Bridge Closed Beta Discussion

I think most of the timeout issues will be resolved in B10, I wasn't checking if the device was already in the state requested by HomeKit so it would hang for 30 seconds because it never detected a device change. The reason is because HomeKit often sends two commands which, with Indigo, result in the same end result - i.e., set brightness to 50 turns ON a device, then HomeKit sends a command to turn on the device and because it's already on the plugin was hanging because the On state never changed. I suspect it's the root cause of the other few timeouts too. Something like a switch or outlet would never be impacted by this because they get just one command from HomeKit. Regardless it's a good change to make.

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Mon Feb 19, 2018 10:24 am
Different Computers offline
User avatar
Posts: 2533
Joined: Jan 02, 2016
Location: East Coast

Re: HomeKit Bridge Closed Beta Discussion

No idea what to make of this, but this morning, the test HKB smoke sensor device "detects smoke" though the HBB version of it does not. Indigo also does not. Indigo says, as usual, that it's status is "on."

SmartThings refugee, so happy to be on Indigo. Monterey on a base M1 Mini w/Harmony Hub, Hue, DomoPad, Dynamic URL, Device Extensions, HomeKitLink, Grafana, Plex, uniFAP, Fantastic Weather, Nanoleaf, LED Simple Effects, Bond Home, Camect.

Posted on
Mon Feb 19, 2018 11:08 am
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: HomeKit Bridge Closed Beta Discussion

Different Computers wrote:
No idea what to make of this, but this morning, the test HKB smoke sensor device "detects smoke" though the HBB version of it does not. Indigo also does not. Indigo says, as usual, that it's status is "on."

This is extremely confusing. You have a test Smoke Sensor in HKB that says it's on, and Indigo says it's on so that means it is working. How does HBB play into this at all since it doesn't support smoke sensors?

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Mon Feb 19, 2018 4:01 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: HomeKit Bridge Closed Beta Discussion

In the Army we referred to the term SNAFU often (Situation Normal: All Fouled Up, except Fouled was something else) and boy did I hit a big SNAFU today.

After reading through all the posts saying that pressing a Home button resulted in the beach ball I couldn't for the life of me figure out why. I saw it in mine all of the sudden too and it made no sense because it was working great and then POOF, nothing but beach balls. I was able to track down a little but in all of this that will save headaches later but overall I couldn't find the problem. Totally rewriting routines to find the problem, trying to come up with new ways to update device states back to HomeKit, it has been a nightmare.

Until now.

You plugin devs (and devs of all sorts too likely) will appreciate this one. Know how you laden your code with all sorts of log output so you can see the process, work it out and call it good? And then you remove, or like me, comment out that indigo.server.log line so it wasn't outputting (but you never know when you might just want to output it so you commented it instead of deleted it). And, in doing that have you accidentally also commented out something that was also critical to the proper functioning of your function? One line is all it took for me to accidentally comment out, just one, to cause me a days worth of banging my head against a rock. Once found, three seconds later everything worked.

So, now that THIS SNAFU is fixed I'm going to do a few more things and I'll drop Beta 10. :shock: :evil: :twisted: :roll:

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Mon Feb 19, 2018 5:24 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: HomeKit Bridge Closed Beta Discussion

And here is Beta 10 (click here to download) that should fix the timeout issues, there could be some lingering as a result of the device not yet being fully supported but so far my tests everything works. Oh and this will come up as 0.9.9 even though it's beta 10 because, reasons. :lol: :shock:

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Mon Feb 19, 2018 9:43 pm
Different Computers offline
User avatar
Posts: 2533
Joined: Jan 02, 2016
Location: East Coast

Re: HomeKit Bridge Closed Beta Discussion

I was excluding a bunch of items in the plugin menu (Not a bridge) and when I hit exclude, this popped up in the log:
Code: Select all
   HomeKit Bridge Error            Exception in plugin.hiddenObjectItemsList line 1496: 'ascii' codec can't encode character u'\u2019' in position 9: ordinal not in range(128)
                      CODE: name = "{0}: {1}".format(object, name)

SmartThings refugee, so happy to be on Indigo. Monterey on a base M1 Mini w/Harmony Hub, Hue, DomoPad, Dynamic URL, Device Extensions, HomeKitLink, Grafana, Plex, uniFAP, Fantastic Weather, Nanoleaf, LED Simple Effects, Bond Home, Camect.

Posted on
Mon Feb 19, 2018 9:48 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: HomeKit Bridge Closed Beta Discussion

It’s one of your oddly named devices, maybe a cynic device? If you figure it out let me know so I can do some tests.

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Mon Feb 19, 2018 10:16 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: HomeKit Bridge Closed Beta Discussion

Colorado4Wheeler wrote:
You plugin devs (and devs of all sorts too likely) will appreciate this one. Know how you laden your code with all sorts of log output so you can see the process, work it out and call it good? And then you remove, or like me, comment out that indigo.server.log line so it wasn't outputting (but you never know when you might just want to output it so you commented it instead of deleted it). And, in doing that have you accidentally also commented out something that was also critical to the proper functioning of your function? One line is all it took for me to accidentally comment out, just one, to cause me a days worth of banging my head against a rock. Once found, three seconds later everything worked.


Oh man! It's always something like that. :o

ZachBenz's Plugins: RingForIndigo

Posted on
Mon Feb 19, 2018 10:23 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: HomeKit Bridge Closed Beta Discussion

With v0.9.9 installed, delays are indeed all gone, except for NEST thermostats, which as you noted, act wonky (particularly if you try to make repeated adjustments too fast)

Speaking of the NEST thermostats, I'm not familiar with how things should look normally in the iOS Home app, but the NEST thermostats always show the appearance of being on (e.g. actively heating) even when they are not. Perhaps this is just how Apple's (fairly crummy, IMHO) Home UI works.

ZachBenz's Plugins: RingForIndigo

Posted on
Mon Feb 19, 2018 10:27 pm
ZachBenz offline
Posts: 163
Joined: Feb 08, 2014

Re: HomeKit Bridge Closed Beta Discussion

Oh, and one random request for some distant future version: support for devices from Cynical's Denon Plugin (I can provide a sample device info dump). Just being able to treat it as a HomeKit Switch device to turn it on and off would be helpful (especially given Speaker isn't a working device in HomeKit yet). Then I could just tell Siri to turn everything off downstairs when we go to bed. :-)

ZachBenz's Plugins: RingForIndigo

Page 10 of 26 1 ... 7, 8, 9, 10, 11, 12, 13 ... 26

Who is online

Users browsing this forum: No registered users and 5 guests