Update for iOS 10 Home app

Posted on
Thu Sep 15, 2016 12:06 am
webdeck offline
Posts: 359
Joined: May 07, 2005

Update for iOS 10 Home app

The new iOS 10 Home app was causing problems for people because it requests the status of every device as soon as it starts up, and that made homebridge make requests to Indigo's RESTful API faster than it could handle for some users.

I updated homebridge-indigo so that it will not make more than one request at a time to the Indigo server. If you were experiencing the ECONNRESET errors, this will hopefully fix them. Please let me know if it does or doesn't.

To get the new version, just update:
Code: Select all
sudo npm update -g homebridge
sudo npm update -g homebridge-indigo

and then restart your instance of homebridge.

-Mike

Posted on
Thu Sep 15, 2016 1:02 am
durosity offline
User avatar
Posts: 3073
Joined: May 10, 2012
Location: Newcastle Upon Tyne, Ye Ol' England.

Re: Update for iOS 10 Home app

Preliminary testing suggests that's fixed it. It was especially an issue when using it remotely but even that seems to have cleared up, updates taking less than a second where as before it was taking 10 or so and then some failing. Good work kind sir!

Computer says no.

Posted on
Mon Sep 19, 2016 12:27 pm
goodgrapes offline
Posts: 23
Joined: Sep 27, 2011

Re: Update for iOS 10 Home app

I was wondering if anyone can help me understand where I've gone wrong?

Running: Sierra 10.12 (2nd GM), Indigo 6.1.10 & iOS 10.0.1

This weekend, I downloaded homebridge & the indigo plug-in to the following locations:

/Users/mreller/Homebridge/homebridge-0.3.3
/Users/mreller/Homebridge/homebridge-indigo-master

Did I download the right versions?

I've installed homebridge & hombridge-indigo, as follows:

npm install -g homebridge
npm install -g homebridge-indigo

mreller$ which homebridge /usr/local/bin/homebridge
mreller$ echo $HOME/.homebridge /Users/mreller/.homebridge

Starting simply (2Garage Door I/O Devices)... I've configured the config.json file as follows, but I'm not sure if I saved the file in the right location:

Where should the config.json get saved:

/Users/mreller/.homebridge/config.json

Current config.json - I assumed the user name & password are the same as used by Indigo Touch?

{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "031-45-154"
},

"description": "This is an example configuration file to configure the Indigo platform plugin. See README.md for more details.",

"platforms": [
{
"platform": "Indigo",
"name": "My Indigo Server",
"protocol": "http",
"host": "127.0.0.1",
"port": "8176",
"path": "",
"username": “XXXXX”,
"password": “XXXXX”,
"includeActions": "true",
"includeIds": [ "1926252584", "1078939051" ],
"treatAsGarageDoorIds": [ "1926252584", "1078939051" ],
"thermostatsInCelsius": false,
"accessoryNamePrefix": ""
}
],

"accessories": [
]
}

When I start homebridge, I get the following:

Home-Theater:~ mreller$ homebridge
[9/19/2016, 12:53:07 PM] Loaded plugin: homebridge-indigo
[9/19/2016, 12:53:07 PM] Registering platform 'homebridge-indigo.Indigo'
[9/19/2016, 12:53:07 PM] ---
[9/19/2016, 12:53:07 PM] Loaded config.json with 0 accessories and 1 platforms.
[9/19/2016, 12:53:07 PM] ---
[9/19/2016, 12:53:07 PM] Loading 1 platforms...
[9/19/2016, 12:53:07 PM] [My Indigo Server] Initializing Indigo platform...
[9/19/2016, 12:53:07 PM] [My Indigo Server] Indigo base URL is http://127.0.0.1:8176
[9/19/2016, 12:53:07 PM] ---
[9/19/2016, 12:53:07 PM] Loading 1 platforms...
[9/19/2016, 12:53:07 PM] [My Indigo Server] Initializing Indigo platform...
[9/19/2016, 12:53:07 PM] [My Indigo Server] Indigo base URL is http://127.0.0.1:8176
[9/19/2016, 12:53:07 PM] Loading 0 accessories...
[9/19/2016, 12:53:07 PM] [My Indigo Server] Indigo request: http://127.0.0.1:8176/devices.json/
[9/19/2016, 12:53:07 PM] [My Indigo Server] Indigo request: http://127.0.0.1:8176/devices/1%20Car%20Garage.json
[9/19/2016, 12:53:07 PM] [My Indigo Server] Discovered I/O-Linc Controller (ID 1078939051): 1 Car Garage
[9/19/2016, 12:53:07 PM] [My Indigo Server] Ignoring unknown accessory type I/O-Linc Controller
[9/19/2016, 12:53:07 PM] [My Indigo Server] Indigo request: http://127.0.0.1:8176/devices/2%20Car%20Garage.json
[9/19/2016, 12:53:07 PM] [My Indigo Server] Discovered I/O-Linc Controller (ID 1926252584): 2 Car Garage
[9/19/2016, 12:53:07 PM] [My Indigo Server] Ignoring unknown accessory type I/O-Linc Controller
DISCOVERING / IGNORING LOTS OF STUFF…
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

┌────────────┐
│ 031-45-154 │
└────────────┘

[9/19/2016, 12:53:09 PM] Homebridge is running on port 51826.

Should a Homebridge Indigo Plug-In now show up in the list of 3rd Party plug-ins in the Indigo Mac Client tool? Or does homebridge simply communicate with Indigo via the named Device IDs?

Using the native iOS 10 Home App, I can successfully pair the Homebridge server using the 031-45-154 code (Default Room). However, when I try to add accessories to rooms there's no accessories to select from... Or it says something about using the manufacturer's native app.

Any insight into troubleshooting the last mile? Thanks!

Posted on
Mon Sep 19, 2016 3:23 pm
goodgrapes offline
Posts: 23
Joined: Sep 27, 2011

Re: Update for iOS 10 Home app

Update I tried reinstalling both homebridge & homebridge-indigo. One thing I noticed on the homebridge install...

clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9

I'm not sure if this is an issue or not. Homebridge starts and loads my accessories, but I still can not add any accessories in the iOS Home App, other than Homebridge...

Any insight?

Posted on
Mon Sep 19, 2016 9:26 pm
webdeck offline
Posts: 359
Joined: May 07, 2005

Re: Update for iOS 10 Home app

Your configuration has includeIds for only two devices, both of which appear to be I/O-Linc Controllers from the log. Those devices are not supported, as the Indigo RESTful API doesn't allow control of them. What you can do is create a virtual device in Indigo for each of them and then put the virtual device IDs in your config.json instead.

If your intention was to include all of your Indigo devices, then remove the includeIds line.

-Mike

Posted on
Tue Sep 20, 2016 10:14 am
goodgrapes offline
Posts: 23
Joined: Sep 27, 2011

Re: Update for iOS 10 Home app

Thanks, Mike

I was finally able to get accessories to load into the Home App, however a few are a bit flakey or don't update their status reliably.

Specifically,

1) I changed the Garage I/O's to Virtual Devices and I can now open/close the garage doors with the Home App/Siri

However, the Opened/Closed Status in the Home App always goes back to Closed after a minute or so, even when Indigo correctly shows the Garage is in fact Open Any suggestions to troubleshoot?

2) I have a few multi-way Insteon switches in my set-up (3 ToggleLincs for Chandalier & 2 ToggleLincs for the Backyard Lights).

- Indigo keeps their status in sync as they are linked to one another
- When using the Homebridge Indigo Plug-in they seem to be getting out of sync?
- Any suggestions on setting-up multi-way switches?
- Exposing only one accessory per multi-way switch?
- Exposing a Toggle Action Group per multi-way switch?
- Exposing a Virtual on/Off Device per multi-way switch?
- Other?

Thanks!

Posted on
Wed Sep 21, 2016 8:29 am
webdeck offline
Posts: 359
Joined: May 07, 2005

Re: Update for iOS 10 Home app

You need to update the value of the virtual device's state variable to match the state of the device. See: http://wiki.indigodomo.com/doku.php?id= ... _interface

Here is how to manage 3-way switches: http://wiki.indigodomo.com/doku.php?id= ... s_overview

Page 1 of 1

Who is online

Users browsing this forum: No registered users and 1 guest