Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problems with Homebridge's new "Bridged Mode" #1

Closed
markleepgh opened this issue Nov 29, 2015 · 19 comments
Closed

Problems with Homebridge's new "Bridged Mode" #1

markleepgh opened this issue Nov 29, 2015 · 19 comments

Comments

@markleepgh
Copy link

I have a ISY994i that I am using as a controller for three LampLincs and about a dozen SwitchLincs. I am able to control each of the devices individually as well as in groups, using scenes, via the ISY’s built-in web-based (Java) interface. I also use Mobilinc HD on my iPad and iPhone to control the devices and scenes.

I’ve just installed the latest version of HomeBridge on a Raspberry Pi 2 B along with homebridge-isy-js. When I start the HomeBridge server, it initializes the ISY platform as well as the LampLincs exposed by the ISY (thanks to the new "Bridged Mode"). However, it does not seem to pick up on the SwitchLincs via Bridge Mode. Am I missing something?

Any advice/pointers would be greatly appreciated. Many thanks in advance!

@markleepgh
Copy link
Author

Per DavidG's suggestion on the UDI forum I managed to solve this by by looking at the nodes on the ISY at http:///rest/nodes, then editing the isydevicetypes.json file located at /usr/local/lib/node_modules/homebridge-isy-js/node_modules/isy-js/isydevicetypes.json to include entries for the SwitchLinc versions that I have.

@rodtoll
Copy link
Owner

rodtoll commented Dec 4, 2015

Sorry I missed this. Could you send along the change you made? I'll flow it back into the root project so this is supported for others.

@markleepgh
Copy link
Author

No worries. I added the following line to /usr/local/lib/node_modules/homebridge-isy-js/node_modules/isy-js/isydevicetypes.json :

{ "type": "1.32.69.0", "address": "", "name": "(2477D) Dual Band SwitchLinc Dimmer v.45", "deviceType": "DimmableLight", "connectionType": "Insteon Wireless", "batteryOperated": false },

@gorobotgo
Copy link

Following the same advice, I added a few more entries to the isydevicetypes.json file to enable support for three more Insteon devices:

{ "type": "2.42.67.0", "address": "", "name": "(2477S) Dual Band SwitchLinc On/Off Switch v.43", "deviceType": "Light", "connectionType": "Insteon Wireless", "batteryOperated": false },
{ "type": "1.66.67.0", "address": "", "name": "(2334-2) KeypadLinc Dimmer 5 Buttons v.43", "deviceType": "DimmableLight", "connectionType": "Insteon Wired", "batteryOperated": false },
{ "type": "2.44.65.0", "address": "", "name": "(2487S) Dual Band KeypadLinc Relay v.41", "deviceType": "Light", "connectionType": "Insteon Wireless", "batteryOperated": false },

@rodtoll
Copy link
Owner

rodtoll commented Dec 10, 2015

Note that I added all 4 of these devices to the isy-js library. You should be able to do a sudo npm update and it should pull down the new version of these.

@PaulWieland
Copy link

@rodtoll I have the following devices in my insteon environment which aren't part of isydevicetypes.json:

  { "type": "16.1.38.0", "address": "1", "name": "(2842-222) Insteon Motion Sensor v.24", "deviceType": "MotionSensor", "connectionType": "Insteon Wireless", "batteryOperated": true },
  { "type": "2.55.70.0", "address": "", "name": "(2635-222) Insteon On/Off Module", "deviceType": "Light", "connectionType": "Insteon Wireless", "batteryOperated": false },
  { "type": "1.33.65.0", "address": "", "name": "(2472dwh) Insteon OutletLinc Dimmer", "deviceType": "DimmableLight", "connectionType": "Insteon Wireless", "batteryOperated": false },
  { "type": "1.65.69.0", "address": "", "name": "(2334-222) KeypadLinc Dimmer 8 Buttons", "deviceType": "DimmableLight", "connectionType": "Insteon Wireless", "batteryOperated": false },
  { "type": "2.13.53.0", "address": "", "name": "(2466S) ToggleLinc", "deviceType": "Light", "connectionType": "Insteon Wired", "batteryOperated": false },

This next one is a dual On Off outlet, so there are two addressable relays in one device. I'm not sure if I understood the "address" parameter correctly, but here is my initial guess as to how it should be setup:

  { "type": "2.57.68.0", "address": "1", "name": "(2663-222) Insteon Dual On/Off Outlet Top", "deviceType": "Outlet", "connectionType": "Insteon Wireless", "batteryOperated": false },
  { "type": "2.57.68.0", "address": "2", "name": "(2663-222) Insteon Dual On/Off Outlet Bottom", "deviceType": "Outlet", "connectionType": "Insteon Wireless", "batteryOperated": false },

@eddiemoy718
Copy link

where do i get the type from? I have a (2635-222) On/Off Module v.48 that isn't being recognized, i tried to add this to the /usr/local/lib/node_modules/homebridge-isy-js/node_modules/isy-js/isydevicetypes.json file:

{ "type": "2.37.48.0", "address": "", "name": "(2635-222) On/Off Module v.48", "deviceType": "Light", "connectionType": "Insteon Wired", "batteryOperated": false },

I was using the "Device Details" from Insteon Hub to get the "type"...

It still isn't picking up.

@eddiemoy718
Copy link

nevermind, reread the thread - it is at http:///rest/nodes, thanks! picking it up now.

@PaulWieland
Copy link

@eddiemoy718 is your On/Off module a different type then mine? According to what you posted they are the same model #. Just curious...

@eddiemoy718
Copy link

@fahrvergnuugen my type is different I ended up putting this in based on the http:////rest/nodes output

{ "type": "2.55.72.0", "address": "", "name": "(2635-222) On/Off Module v.48", "deviceType": "Light", "connectionType": "Insteon Wired", "batteryOperated": false },

Anyone know if there is a connection type for both? I see "Insteon Wired" and "insteon Wireless", but most of my switches are dual band, meaning they use both the wire line and wireless communication.

It is working great now by the way... I have all the devices registered now and can control it with Siri. Really Cool! Also ISY works a lot better than the Insteon Hub, but I still need the Hub for Amazon Echo Integration.

@rodtoll
Copy link
Owner

rodtoll commented Dec 21, 2015

I added all the requested devices to the isy-js package. If you update to the latest version of isy-js it will pickup all your devices from above. (Homebridge-isy-js uses isy-js under the covers).

Regarding the connection type it's for informational reasons only so feel free to set it to something like Insteon Dual or something else. I may make this stricter in the future but for now it is freeform.

BTW, for future device adds there is a issue in the isy-js project for requesting them. You can see it here:
rodtoll/isy-js#7

@eddiemoy718
Copy link

@rodtoll thanks! So does isy-js pick up the devices based on the device type only? I see that I have different device type even though the description is the same as some of the others here.

@rodtoll
Copy link
Owner

rodtoll commented Dec 21, 2015

Yes. All fields are used but only the type, deviceType and address elements actually make a difference in the code. The other fields are just used for descriptive purposes. (Although I'd like to use them for more later).

Essentially the code enumerates all the devices from the ISY via the REST API and then looks at the type attribute to find a matching entry in isydevicetypes.json. If it's not in that list it's ignored. Hope this helps!

@rodtoll
Copy link
Owner

rodtoll commented Dec 21, 2015

@fahrvergnuugen - The address field tells the ISY library to only match that entry if the last digit of the address matches the specified value. If the value is empty it matches regardless. This is used when you have composite devices with multiple components. For example FanLinc has a light and a fan level control and so two entries end up in the isydevicetypes.json -- one for the fan and one for the light. Both have the same type, they only differ in addresses.

@eddiemoy718
Copy link

@rodtoll ah, that is where i can get only the 1st button from a 5 button device. so if i put in "1" in the address then it will only match the first instance of the 5 entries in the 5 button device.

thanks, this helps a lot!

@rodtoll
Copy link
Owner

rodtoll commented Dec 21, 2015

@eddiemoy718 Correct! Glad to help.

@markleepgh
Copy link
Author

Hi Rod,

I hope you’re well. I had to add the following line to the isydevicetypes.json file to get a recently purchased ToggleLinc to work. You might want to add it to the package in your next update:

{ "type": "2.26.65.0", "address": "", "name": "(2466S) ToggleLinc Relay v.41", "deviceType": "Light", "connectionType": "Insteon Wired", "batteryOperated": false },

Best regards,

Mark

On Dec 20, 2015, at 9:36 PM, rodtoll notifications@github.com wrote:

I added all the requested devices to the isy-js package. If you update to the latest version of isy-js it will pickup all your devices from above. (Homebridge-isy-js uses isy-js under the covers).

Regarding the connection type it's for informational reasons only so feel free to set it to something like Insteon Dual or something else. I may make this stricter in the future but for now it is freeform.

BTW, for future device adds there is a issue in the isy-js project for requesting them. You can see it here:
rodtoll/isy-js#7 rodtoll/isy-js#7

Reply to this email directly or view it on GitHub #1 (comment).

@rodtoll
Copy link
Owner

rodtoll commented Feb 14, 2016

@markleepgh - Just FYI -- I missed your comment earlier so the device didn't get added to the device types. But I made sure it went in this morning's publish of v0.4.1. Thanks for sending it.

@wilhar0046
Copy link

@rodtoll - Is there anyway with Homebridge-isy-js to change the device type as it is fed into Homekit? I have an Insteon switch that I am using to control a celling fan and one for bathroom fan. They are not "Lights" so I would like Homekit to think they are so when I "Turn Off The Lights" it does not cut off the fans. Didn't know if there was a way to do this like the rename statements or something.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants