Jump to content

How To: Homebridge on Raspberry Pi for controlling ISY with Apple Homekit and Siri Integration


TheSwartz

Recommended Posts

Posted (edited)

See my updated instructions in the first comment. This is now INCREDIBLY EASY.

First off, this is probably a horrible admission prior to creating a "how to", but I am one of those complete newbs, who somehow is able to figure out how to make something very complicated work, but is not any sort of expert and honestly doesn't really understand how any of this actually works.

With that out of the way, I wanted to give a complete run down on how I got this to work, because now that I do, I am very happy with this set up. Works so well that I am decommissioning 8 Amazon Alexas as we have 4 iPhones, 3 Apple Watches, 4 Apple TVs, and 2 HomePods throughout the house that now can do 95% of what I was previously doing with ISY 994i + ISY Portal + Amazon Echo.

My Environment

  • ISY 994i IR/Pro v4.7.3 purchased in 2013 (I haven't tested on the 5 beta..)
  • 90 Insteon Dual Band Switches (On/Of and Dimmers)
  • 5 Insteon LampLincs
  • 5 Insteon Leak Detectors
  • 2 Insteon v2 Motion Detectors
  • 2 Insteon Garage Door Relays
  • Insteon 2441 Thermostat --> changed to Ecobee 3 lite; using directly with Homekit
  • Phillips Hue with 25 bulbs - Whites and Colors. for now, using directly through it's hub with Homekit
  • Logitech Harmony Hub - have yet to set up with it's individual Homekit plugin
  • Ring Pro - waiting for 1st party Homekit support...
  • Dedicated Raspberry Pi 2 model B

Limitations

As of this writing, and may only be specific to my set up and lack of knowledge, these are the following limitations:

  1. My instructions below are the notes I used as I did this 3 times, it made sense to me... I hope it does to you. I also assume you know how to use SSH (I didn't until I did this, so I assume you're able to figure it out too!). As a side note, you don't have to SSH if you just plug in a keyboard and monitor to the Raspberry Pi..
  2. I cannot control my old Venstar Insteon thermostat.
  3. I haven't found a way, yet, to program alternative names for devices, like what I can with ISY Portal.
  4. This took A SHIT-TON of time, research, and experimentation to get up and running.
  5. It is minor, but you need about $50 to get a Raspberry Pi, memory card, charger, and optional case. This should work perfectly fine with a v2 or higher (currently on v3).
  6. The author of Homebridge ISY JS (which is essential for this to work) no longer actively supports this. I am very hopeful that some smart chap will pick it up...

Some essential resource Links:

Homebridge

  • This is the main program that everything else plugs into. I'll show what is helpful for this particular post, but you can add other plugins, i.e. for for Logitech Harmony Hub
  • Github
  • NPM
  • Reddit

Homebridge ISY JS

  • This is the plugin which will connect your ISY to homebridge (and thus to Apple Homekit)
  • Github
  • NPM

Homebridge Config UI X

  • Not necessary, but very helpful so that once you get things set up, you can copy/paste new JSON config files and reset your homebridge on the fly through a web portal
  • Github
  • NPM
  • This is a fork of the original Homebridge Config UI; it's probably something I screwed up, but I had a problem getting the original to work. But this X version also has some additional options, so I'm sticking with it.

Homebridge ISY Maker

  • Not necessary and I am not using this yet, but I have it installed; looks like it will open up a lot more options as I continue to work on this setup.
  • Github
  • NPM

JSON Validator

  • Use this to test every time you make a change to your JSON config file. Trust me.

Text Editors

  • Don't directly copy and paste many of the text from websites (including this post). It doesn't always copy the intended text for when you paste into your Linux prompt.
  • if you are using Windows, Notepad++ is probably the best text editor out there
  • If you are using Mac, I used Atom, apparently there are various options but I'm new to using a Mac

SSH

  • On Windows, I used PuTTY
  • And, on MAC, I used Finder then use COMMAND+K to bring up "Connect to Server" then type ssh://pi@XXX.XXX.XXX.XXX (pi as the default login username and XXX.XXX.XXX.XXX as the IP address for your Raspberry Pi)

Raspbian

Guide to The Raspi-Config Tool

 

My Exact Step by Step Process

  • Quick Note for newbs (like me): the dollar sign "$" indicates that you enter the remainder of that line as a command. You don't actually type the "$"
  • Quick Note #2: I put "sudo" prior to all commands, because I don't otherwise know what I'm doing, and it just makes things work
  • Quick Note #3: if you get an error on step #5 while on a Mac, scroll down to TroubleShooting at the bottom of this post.

Part 1: Homebridge Setup

General Setup

  1. 1. Download the Raspbian Lite image file at https://www.raspberrypi.org/downloads/raspbian/
  2. Install Raspbian Lite Image to an SD card using the instructions at https://www.raspberrypi.org/documentation/installation/installing-images/ for Windows, Mac, or Linux.
  3. Open the SD card (in File Explorer on Windows or in Finder on a Mac) and add a file named “ssh” with no suffix extension - this is NECESSARY to that you can SSH to the RPi
  4. Put the SD card into your Raspberry Pi, power it on, and ensure it's connected to your network (i.e. via ethernet, or look up how to set up on WiFi)
    1. take note of your Pi's IP address (i.e. log into your router and look for it under attached devices)
  5.  SSH to Raspberry Pi
    1. Default username: pi
    2. Default password: raspberry
    3. tip: ssh pi@xxx.xxx.xxx.xxx
  6. $ sudo dpkg-reconfigure tzdata
    1. choose the appropriate time zone
  7. $ sudo raspi-config
  8. “Change User Password” -> change password !
  9. "Update"
  10. “Advanced Options” -> “Expand Filesystem”
  11. “Finish” - >“Reboot” -> SSH back into RPi
  12. $ sudo apt update
  13. $ sudo apt full-upgrade (choose “Y” if asked)
    1. "q" through any changelogs that pop up
  14. $ sudo apt-get autoremove
  15. $ sudo reboot -> SSH back into RPi

 

Homebridge Setup (including dependencies)

DO THIS FIRST

  • $ uname -m
  • You will get a result; I don't know what this does. I think it tells you something about the CPU in your Pi. It will be "arm" and a number
  • If the number is > 61 (mine is arm71), then go to my manual instructions.
  • Otherwise, use this script from: https://www.youtube.com/watch?v=_S66mtwNkQo
    • $ curl -sSL goo.gl/Ksdhph | bash
  • If any questions, you can still use the script, but it installs an older version of things

Manual Instructions:

  1. $ sudo apt-get remove node nodejs nodejs-legacy -y
  2. $ sudo apt-get install git-core libnss-mdns libavahi-compat-libdnssd-dev -y
  3. $ sudo curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash -
    1. NOTE: you may want to see if there is a newer version of Node.js
    2. https://github.com/nodesource/distributions
  4. $ sudo apt-get install -y nodejs
  5. $ sudo npm install -g n
  6. $ sudo rm /usr/local/bin/node
    1. note: it might tell you there is no such directory
  7. $ sudo rm -rf /usr/local/lib/node_modules/npm
  8. $ sudo n prune
  9. $ sudo useradd -M --system homebridge
  10. $ sudo npm install -g --unsafe-perm homebridge
  11. $ homebridge
    1. test to see that homebridge is working
    2. You should get a print out and the code for scanning into Homekit
      1. DO NOT install this to HomeKit yet.
  12. CTRL-C to stop homebridge
  13. $ cd .homebridge/
  14. $ ls
    1. [this lists the files in this directory, you probably see no config.json file listed, that's OK, go to next step]
  15. $ nano config.json
    1. [this creates config.json and opens edtor]
  16. Copy and Paste, or type in the following simple configuration which changes default PIN (you can pick any 8 digits you want)
    1. REMEMBER to put any JSON stuff into a validator first, then copy/paste that to your Pi (otherwise, sometimes your'e copying/pasting buggy "non-plain-text" stuff for lack of a better explanation"
      1. https://jsonlint.com
{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:22:3D:E3:CE:30",
        "port": 51826,
        "pin": "123-45-678"
    }
}

19. CTRL+X to exit and save, choose “yes”
20. $ cd

21. $ homebridge [to test your new pin]
22. CTRL+C to exit

 

Part 2: Setup Homebridge to run at startup using systemd (optional but highly recommended)

This was the hardest thing to get right... I seriously want to put a gun to my head.... so if this doesn't work for you, sorry!

Resource #1: https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi

Resource #2: https://gist.github.com/johannrichard/0ad0de1feb6adb9eb61a/

Alternative Resource: https://timleland.com/setup-homebridge-to-start-on-bootup/

Note: if you don't know, anything that ends in "d" means "daemon" which means it runs as a service. And, "systemd" is like a service manager for Linux.

  1. $ sudo useradd -M --system homebridge
    1. If you didn't do this above already for some reason (so, you might get a message that it's already done)
  2. $ sudo nano /etc/default/homebridge
  3. Paste:
# Defaults / Configuration options for homebridge
# The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
HOMEBRIDGE_OPTS=-U /var/homebridge

# If you uncomment the following line, homebridge will log more 
# You can display this via systemd's journalctl: journalctl -f -u homebridge
# DEBUG=*

5. Exit and use default name to save

6. $ which homebridge

————————————————————————————————
For Step 8 below:

NOTE what result you get with "$ which homebridge" —> use that directory below for ExecStart=

example: mine is usr/bin/homebridge, but sometimes it is /usr/local/bin/Homebridge
————————————————————————————————

7. $ sudo nano /etc/systemd/system/homebridge.service

8. Paste

[Unit]
Description=Node.js HomeKit Server 
After=syslog.target network-online.target

[Service]
Type=simple
User=homebridge
EnvironmentFile=/etc/default/homebridge
ExecStart=/usr/bin/homebridge $HOMEBRIDGE_OPTS
Restart=on-failure
RestartSec=10
KillMode=process

[Install]
WantedBy=multi-user.target

9. $ sudo mkdir /var/homebridge

10. $ sudo cp ~/.homebridge/config.json /var/homebridge/
11. $ sudo cp -r ~/.homebridge/persist /var/homebridge
12. $ sudo chmod -R 0777 /var/homebridge
13. $ sudo systemctl daemon-reload
14. $ sudo systemctl enable homebridge
15. $ sudo systemctl start homebridge
16. $ sudo reboot
17. $ systemctl status homebridge

     [test that homebridge is running you might have to CTRL-C to move on]

 

Part 3: Setup Homebridge Config [Optional but HIGHLY RECOMMEND]

1. $ sudo npm install -g --unsafe-perm homebridge-config-ui-x
2. $ sudo visudo
3. Add to the bottom of this file (this allows homebridge to use the magic sudo thing that makes things work):

homebridge ALL=(ALL) NOPASSWD: ALL

4. $ cd .homebridge/
5. $ nano config.json [creates config.json if it doesn't already exists and opens edtor]
6. Delete current settings, then command+c and command+v to paste a simple configuration

  1. REMEMBER to put any JSON stuff into a validator first, then copy/paste that to your Pi (otherwise, sometimes your'e copying/pasting buggy "non-plain-text" stuff for lack of a better explanation"
    1. https://jsonlint.com
{
	"bridge": {
		"name": "Homebridge",
		"username": "CC:22:3D:E3:CE:30",
		"port": 51826,
		"pin": "123-45-678"
	},

	"description": "My Homebridge JSON file for use with ISY",

	"platforms": [{
		"platform": "config",
		"name": "Config",
		"port": 8080,
		"sudo": true,
		"restart": "sudo -n systemctl restart homebridge",
		"log": "systemd"
	}]
}

7. $ sudo reboot

8. Open a web browser to XXX.XXX.XXX.XXX:8080 (where XXX.XXX.XXX.XXX is the IP address of your Raspberry Pi -- NOT your ISY)

9. Default username: admin

10. Default password: admin

 

FROM NOW ON YOU SHOULD BE ABLE TO EDIT config.json FROM WITHIN Homebridge UI which is A LOT easier

 

Part 4: Install homebridge-isy-js

Resource: https://github.com/rodtoll/homebridge-isy-js

  1. 1. $ sudo npm install -g homebridge-isy-js
  2. 2. $ cd .homebridge/
  3. 3. $ ls [just to make sure you see a config.json file listed]
  4. 4. $ nano config.json [creates config.json if not done already and opens edtor]
    1. or use the ConfigUI web GUI to enter config.json
  5. 5. Delete current settings, then command+c and command+v to paste a simple configuration

NOTE:

  • Enter your appropriate IP address for: "host": "XXX.XXX.XXX.XXX",
  • Enter your appropriate ISY username for: "username": "USERNAME",
  • Enter your appropriate ISY password for: "password": "PASSWORD",
  1. REMEMBER to put any JSON stuff into a validator first, then copy/paste that to your Pi (otherwise, sometimes your'e copying/pasting buggy "non-plain-text" stuff for lack of a better explanation"
    1. https://jsonlint.com
{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:22:3D:E3:CE:30",
        "port": 51826,
        "pin": "123-45-678"
    },

    "description": "My Homebridge JSON file for use with ISY",

    "platforms": [{
            "platform": "isy-js",
            "name": "isy-js",
          "host": "XXX.XXX.XXX.XXX",
          "username": "USERNAME",
          "password": "PASSWORD",
            "elkEnabled": false,
            "useHttps": true,
            "debugLoggingEnabled": false,
            "includeAllScenes": true
        },
        {
            "platform": "config",
            "name": "Config",
            "port": 8080,
            "sudo": true,
            "theme": "red",
            "temp": "/sys/class/thermal/thermal_zone0/temp",
            "restart": "sudo -n systemctl restart homebridge",
            "log": "systemd"
        }
    ]
}

6. $ homebridge [to test]
7. CTRL+C to exit


 

ALL FOLLOWING STEPS ARE OPTIONAL

Part 5: Setup Homebridge Maker

1. $ sudo npm install -g homebridge-isy-maker
2. Update config.json

{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:22:3D:E3:CE:30",
        "port": 51826,
        "pin": "123-45-678"
    },
    "description": "My Homebridge JSON file for use with ISY",
    "platforms": [
        {
            "platform": "isy-js",
            "name": "isy-js",
          "host": "XXX.XXX.XXX.XXX",
          "username": "USERNAME",
          "password": "PASSWORD",
            "elkEnabled": false,
            "useHttps": true,
            "debugLoggingEnabled": false,
            "includeAllScenes": true
        },
        {
            "platform": "config",
            "name": "Config",
            "port": 8080,
            "sudo": true,
            "theme": "red",
            "temp": "/sys/class/thermal/thermal_zone0/temp",
            "restart": "sudo -n systemctl restart homebridge",
            "log": "systemd"
        },
        {
            "platform": "isy-maker",
            "name": "ISYMaker",
          "host": "XXX.XXX.XXX.XXX",
          "username": "USERNAME",
          "password": "PASSWORD",
            "prefix": "hb"
        }
    ],
    "accessories": []
}

 

Part 6: Now the Real Fun. Customizing

If you've made it this far, then you'll figure out the rest. But just as another example, this is my current config.json so that you can see a few of the optional lines in action.

{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:22:3D:E3:CE:30",
        "port": 51826,
        "pin": "123-45-678"
    },
    "description": "Kevin's Homebridge JSON file for use with ISY",
    "platforms": [
        {
            "platform": "isy-js",
            "name": "isy-js",
            "host": "xxx.xxx.xxx.xxx",
            "username": "username",
            "password": "password",
            "elkEnabled": false,
            "useHttps": true,
            "debugLoggingEnabled": false,
            "includeAllScenes": false,
            "includedScenes": [
                "46323",
                "53376",
                "53789",
                "55365",
                "58030",
                "61718",
                "62250",
                "62883",
                "64358"
            ],
            "garageDoors": [
                {
                    "address": "3D 50 A7 1",
                    "name": "Car Garage Door",
                    "timeToOpen": 12000,
                    "alternate": true
                },
                {
                    "address": "3D 51 DB 1",
                    "name": "Bike Garage Door",
                    "timeToOpen": 12000,
                    "alternate": true
                }
            ],
            "ignoreDevices": [
                {
                    "nameContains": "X ",
                    "lastAddressDigit": "",
                    "address": ""
                },
                {
                    "description": "Insteon Front Hall Lights",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "42 C6 8E 1"
                },
                {
                    "description": "Insteon Garage Hall Lights",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "42 B0 26 1"
                },
                {
                    "description": "Insteon Main Stair Lights",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "42 AF C0 1"
                },
                {
                    "description": "Insteon Lamplinc Lily's Bedroom Lamp",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "3E B4 DC 1"
                },
                {
                    "description": "Insteon Lily's Bedroom Switch",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "41 D9 09 1"
                },
                {
                    "description": "Insteon Upstairs Landing Lights main",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "42 C5 E6 1"
                },
                {
                    "description": "Insteon Theater Room Lights",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "46 A8 86 1"
                },
                {
                    "description": "Insteon Front Porch Lights",
                    "nameContains": "",
                    "lastAddressDigit": "",
                    "address": "42 37 F1 1"
                }
            ]
        },
        {
            "platform": "config",
            "name": "Config",
            "port": 8080,
            "sudo": true,
            "theme": "red",
            "temp": "/sys/class/thermal/thermal_zone0/temp",
            "restart": "sudo -n systemctl restart homebridge",
            "log": "systemd"
        },
        {
            "platform": "isy-maker",
            "name": "ISYMaker",
            "host": "xxx.xxx.xxx.xxx",
            "username": "username",
            "password": "password",
            "prefix": "hb"
        }
    ],
    "accessories": []
}

 

TROUBLESHOOTING

If you SSH on a Mac to the Raspberry Pi and get this message:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
Please contact your system administrator.
Add correct host key in /Users/XXXXX/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /Users/XXXXX/.ssh/known_hosts:1
ECDSA host key for XXX.XXX.XXX.XXX has changed and you have requested strict checking.

Host key verification failed.

This is because you've tried to SSH to this Pi before, and something has changed (such as re-formatting it). Do this:

  1. Go into your user folder and hit CMD + Shift + G and type ".ssh"
  2. Delete (move to trash) the file named "known_hosts"
  3. Try to SSH again
  4. Choose "yes" when asked "are you sure you want to continue with connecting"

 

If you try to SSH to the Pi and "Connection Refused"

1. You forgot to put a blank file named "ssh" (without the quotes) on the SD card

2. Or you're trying to SSH to the wrong device... yes this happened

Edited by TheSwartz
Updates to the process
  • Like 2
  • Thanks 2
Posted (edited)

I debated nuking the original post vs just posting a follow up... but I'd be depressed that all that time entirely went to waste...

Updated Instructions: This entire process is now INCREDIBLY EASY.

Step 1. Follow the instructions for creating a Homebridge Raspbian Image https://github.com/homebridge/homebridge-raspbian-image/wiki/Getting-Started

Step 2. From within the Homebridge UI (see above instructions) search for "ISY" and install the plugin named "Homebridge ISY" (https://github.com/pradeepmouli/homebridge-isy-js)

Step 3. Use the above links for info on how to set everything up.

You're done..

Edited by TheSwartz
  • 5 months later...
Posted

@TheSwartz Thank you for posting this awesome and complete how to guide. I am using a QNAP NAS with a Debian VM (CLI only) and by following your directions (with some modifications for Debain) was able to get Homebridge installed. For some reason QNAP VM won't let me copy and paste which is a major pain. I need play with SSH and see if that works. I can now control my lights while I am home via Siri, which is so nice since I have an Apple Watch and wear it a majority of the time.

If anyone else is using Debian the commands I used were:

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs

sudo apt-get update
sudo apt-get install libavahi-compat-libdnssd-dev

sudo nom install -g --unsafe-perm homebridge

then go to the step above to create the config.json file and then follow from there on.

  • Like 2
  • 3 months later...
Posted

This is outstanding work. I’m in the same boat with about 50 Insteon devices, an ISY994i and just started adopting HomeKit due to the wife adoption vote. : ) 

Is this build still working for you? Curious to hear what’s changed and working well for you since the original post. 

  • 4 weeks later...
Posted

Got through most of this, thanks for the good step-by-step.  

I am still having problems getting into the HB web server though - after installing the- (Part 5: Setup Homebridge Maker) it shows the logon screen, i use the defaults admin/admin, and it just spins.

I went through the system-d setup as well, but it didnt work before i did that either.  Any ideas?  Logs dont seem to show anything except ADMIN successfully logged on.

Running from Chrome on a Mac, or the browser on the Rasb. pI.

Thanks!

Posted
Got through most of this, thanks for the good step-by-step.  
I am still having problems getting into the HB web server though - after installing the- (Part 5: Setup Homebridge Maker) it shows the logon screen, i use the defaults admin/admin, and it just spins.
I went through the system-d setup as well, but it didnt work before i did that either.  Any ideas?  Logs dont seem to show anything except ADMIN successfully logged on.
Running from Chrome on a Mac, or the browser on the Rasb. pI.
Thanks!


There has been a few updates on the GIT so maybe that could be the problem? Take a look here at this thread. I have yet to update and try it myself.

https://forum.universal-devices.com/topic/17112-nodejs-library-for-isy-including-websocket-updates/
  • Thanks 1
Posted

Thank you @Scottmichaelj, still no dice on the HB website at :8080.  Seems to load ok, and recognizes - "Administrator successfully logged in", but site doesn't get off the logon page.

I updated with new pradeepmouli/homebridge-isy-js  as indicated in the link above

And also updated using the new isy-maker referenced in that post.. homebridge-isy-maker@0.2.0.

Are there logs I can look at?  Searching myself as a next step too..  thanks

Posted
Thank you [mention=166]Scottmichaelj[/mention], still no dice on the HB website at :8080.  Seems to load ok, and recognizes - "Administrator successfully logged in", but site doesn't get off the logon page. I updated with new pradeepmouli/homebridge-isy-js  as indicated in the link above

And also updated using the new isy-maker referenced in that post.. homebridge-isy-maker@0.2.0.

Are there logs I can look at?  Searching myself as a next step too..  thanks

 

 

I am pretty much in the dark myself as I struggle with debain/linux. I may revisit again soon since I want to get this working myself but gave up as I got frustrated. I went to GIT and the “issues” postings are locked and the OP hasn’t been back here. So...

 

Posted

Same here - lots of googling!!

I was eventually able to get this up and running, but had to start from scratch (new Rasbian OS).  The original documentation is kind of dated, and there have been revisions to ISY-JS, ISY-Maker, etc.  I still have a mess, but was able to logon to the site.  Truthfully, its not really that helpful, but i didnt know what functionality it had.  You can get the same information by just running homebridge from a terminal prompt (with regard to the homekit paring code).

I think the only thing that has not changed is Homebridge!! :)

  • 3 weeks later...
Posted

OK, so I took a stab at this today. Works great!

Only thing I changed was leveraging https://www.npmjs.com/package/homebridge-config-ui-x instead of config-ui. Seemed to load for me in a seamless fashion. This is fun stuff!!!

  • Like 1
  • 5 months later...
Posted

Installed today on a macmini. I am able to turn on the devices, but not off. I can then go to dashboard or mobilinc and toggle off.Then i am able to tuen back on from homekit. So only on works for me. 

Any ideas?

v5.0.15A

Anyone else having this issue?

Posted

I am pretty impressed with the HomeBridge addition to my setup. Having Siri control everything is much faster than having Alexa controlling via voice commands. I take the responsiveness is due to HomeBridge being on the local network compare to Alexa having to go out to servers then back in for control. A plus is having voice control if the internet goes out. 

I have added all of the devices and over a dozen cameras with the ffmpeg plugin as well. 

One device that did not recognize was my 2gig CT100 Thermostat. Anyone have any ideas? 

  • Like 1
Posted
I am pretty impressed with the HomeBridge addition to my setup. Having Siri control everything is much faster than having Alexa controlling via voice commands. I take the responsiveness is due to HomeBridge being on the local network compare to Alexa having to go out to servers then back in for control. A plus is having voice control if the internet goes out. 
I have added all of the devices and over a dozen cameras with the ffmpeg plugin as well. 
One device that did not recognize was my 2gig CT100 Thermostat. Anyone have any ideas? 


Good to hear you got it working. I could never get all the scenes properly shown. I have yet to go back and try the newest version though. Could be my config settings.
Posted
10 hours ago, Scottmichaelj said:

 


Good to hear you got it working. I could never get all the scenes properly shown. I have yet to go back and try the newest version though. Could be my config settings.

 

Thanks. I could not get the latest version to work, which is now 0.2.5, it gives me nothing but errors and will not start homebridge. For. now I am running 0.1.9 which may be why I can not see my thermostat. 

  • 9 months later...
  • 4 weeks later...
Posted

Any documentation on the config.json?  

I'm a little new to all of this altogether, but have enough programming background to understand the pieces at a high level.

I'd like to understand a little more about the mechanics of how the config.json controls behavior to start playing around.

When I run my Homebridge, all of my Insteon devices and scenes light up in Homekit quite well.  What I don't see are the additional nodes I've configured through Polyglot.  I'd like to control them through Homekit as well and think you can with the proper config.json.  But I need a little better understand of how to work with configuration.

Great stuff.  My first foray into it was easy and quite successful.  I am now ready to make the next leap in my journey. 

Thanks in advance!!!

 

  • 1 month later...
Posted

I installed Homebridge as described in the second post (though it seems HomeBridge ISY is the latest branch by pmouli from a month or so ago, replacing the version referenced in your 2018 post - https://github.com/pradeepmouli/homebridge-isy-js

I configured Homebridge ISY with the credentials to my ISY 9941, and I see a long log list on the main page of Honebridge with my devices, referencing activity ready from the ISY. I dont have device list filtering in the settings...

I updated the Config UI X as prompted as well. I can log into the Raspberry Pi no issues, and I added the Homebridge as an accessory to Home (iOS notes it as an unsupported bridge)

But in the Home app or Homebridge,, I dont see any devices at all - not sure how to add/see the Insteon devices I have running (about 60 in all)

I'm sure I'm an idiot here - any ideas? Thanks

Posted

I also tried installing on Mac OS X instead of the Raspberry PI - same thing.., all is set up but no accessories for the ISY devices.

I added a Ring Plug in, and that works - I see the Ring video in the Home app

This is my config:

bridge": {
        "name": "Homebridge AEF5",
        "username": "xxxxxxxxx",
        "port": 51756,
        "pin": "xxxxxxxx"
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "name": "ISY",
            "host": "192.168.0.130",
            "useHttps": false,
            "username": "xxxxxx",
            "password": "xxxxxx",
            "deviceNaming": {
                "format": "${location ?? folder} ${spokenName ?? name}"
            },
            "deviceDefaults": {
                "exclude": false
            },
            "devices": [
                {
                    "exclude": false
                }
            ],
            "platform": "ISY"
        },
        {
            "refreshToken": "xxxxxx",
            "platform": "Ring"
        }
    ]
}

 

Posted

After more trial and error, I got the device issue figured out - for whatever reasons, keeping all devices not hidden showed nothing. I had set HIDDEN as a Device Availability as a default, then expressly INCLUDE filtered items (so far, I've chosen three names Kitchen, Dining Room, Exterior, which are in the names of several devices), and then they appeared. I assume there's something in there that was causing it to chose and prevent all from showing, and perhaps I'll stumble across it as I add more devices.

Would be nice if there was a way to load the manifest of all devices, and then you could check off what you wanted to include from a single interface. Still great job on this and thank you

For the Ring plug in, I can't seem to get the Doorbell itself to activate a Home notification. That's something else to work on for me...

  • 2 weeks later...
Posted

Installed on my Pi2 and everything went ok, but I'm struggling to get my 2 Insteon Dual On/Off Outlet (2663-222), its a dual outlet but homebridge only show the first outlet (of each of them) in the assessories and they do not show up in HomeKit neither.  In the home bridge log it seems to be ok for both of them. (Software versions are bellow)

homebridge.log shows 

 

  1. [7/24/2020, 6:12:48 PM] [isy-nodejs] Porta Retrato (34 68 99 1): RelayLampSwitch_ADV
  2. [7/24/2020, 6:12:48 PM] [isy-nodejs] Porta Retrato (34 68 99 1): Property Status (ST) initialized to: 100 (On)
  3. [7/24/2020, 6:12:48 PM] [isy-nodejs] Sending request: http://ISY-IP/rest/nodes/34 68 99 1/notes/     Calling: http://ISY-IP/rest/nodes/34 68 99 1/notes/
  4. [7/24/2020, 6:12:48 PM] [isy-nodejs] Porta Retrato (34 68 99 1): The friendly name updated to: Porta Retrato
  5.  
  6. [7/24/2020, 6:12:48 PM] [isy-nodejs] Tv Sala (34 68 99 2): RelayLampSwitch_ADV
  7. [7/24/2020, 6:12:48 PM] [isy-nodejs] Tv Sala (34 68 99 2): Property Status (ST) initialized to: 100 (On)
  8. [7/24/2020, 6:12:48 PM] [isy-nodejs] Sending request: http://ISY-IP/rest/nodes/34 68 99 2/notes/     Calling: http://ISY-IP/rest/nodes/34 68 99 2/notes/
  9. [7/24/2020, 6:12:48 PM] [isy-nodejs] Tv Sala (34 68 99 2): The friendly name updated to: Tv Sala
  10.  
  11. [7/24/2020, 6:12:54 PM] [isy-nodejs] Porta Retrato (34 68 99 1): Update event triggered, property Status (ST) is unchanged.
  12. [7/24/2020, 6:12:54 PM] [isy-nodejs] Tv Sala (34 68 99 2): Update event triggered, property Status (ST) is unchanged.
  13.  
  14. [7/24/2020, 6:12:47 PM] [isy-nodejs] Tv Rodrigo (34 6A 15 1): RelayLampSwitch_ADV
  15. [7/24/2020, 6:12:47 PM] [isy-nodejs] Tv Rodrigo (34 6A 15 1): Property Status (ST) initialized to: 0 (Off)
  16. [7/24/2020, 6:12:47 PM] [isy-nodejs] Sending request: http://ISY-IP/rest/nodes/34 6A 15 1/notes/       Calling: http://ISY-IP/rest/nodes/34 6A 15 1/notes/
  17. [7/24/2020, 6:12:47 PM] [isy-nodejs] Tv Rodrigo (34 6A 15 1): The friendly name updated to: Tv Rodrigo
  18.  
  19. [7/24/2020, 6:12:47 PM] [isy-nodejs] Camera_Rodrigo (34 6A 15 2): RelayLampSwitch_ADV
  20. [7/24/2020, 6:12:47 PM] [isy-nodejs] Camera_Rodrigo (34 6A 15 2): Property Status (ST) initialized to: 100 (On)
  21. [7/24/2020, 6:12:47 PM] [isy-nodejs] Sending request: http://ISY-IP/rest/nodes/34 6A 15 2/notes/       Calling: http://ISY-IP/rest/nodes/34 6A 15 2/notes/
  22. [7/24/2020, 6:12:48 PM] [isy-nodejs] Camera_Rodrigo (34 6A 15 2): The friendly name updated to: Camera_ Rodrigo
  23.  
  24. [7/24/2020, 6:12:54 PM] [isy-nodejs] Tv Rodrigo (34 6A 15 1): Update event triggered, property Status (ST) is unchanged.
  25. [7/24/2020, 6:12:54 PM] [isy-nodejs] Camera_Rodrigo (34 6A 15 2): Update event triggered, property Status (ST) is unchanged.

 

Thanks if the experts here have already dealt with this issue in the past and can share the learnings...

 

MF

homebridge-config-ui-x v4.24.0 / homebridge-isy v0.5.0-rc22 / Raspbian GNU/Linux Buster (10) / node.js  v10.21.0

  • 1 month later...
Posted

hi,

is there any more documentation on this process?  I did the super easy install, which was super easy, and it connected to my ISY and the terminal window shows it finding all my items but noting shows in Home app on my iphone.  Do I need to add each item to the config that I want to show?  I'm just not sure where I need to go next.

 

Thanks,

Jason

Posted

They key is to make sure they show up as "Accessories" in HomeBridge before trying to pull them into the phone.

It make take trial and error to get this to work, as if there is certain unsupported devices on your ISY it may crash the Homebridge interface, and no Accessories show up.

Start with one device at a time (i.e start with default being exclude all devices, and then bring in individual devices).  

Posted

@CompKing thanks!  you hit the nail on the head.  It doesn't like my Motion Sensor II, Insteon thermostats, or door sensors.  when I removed all those the rest showed up.  I'm not sure exactly what is the problem, I don't really care,  that did it.  I know the MSIIs are a big PITA in everything ISY but for the rest it's working!!

Thanks 

Jason

  • Like 1
Posted
On 9/17/2020 at 5:54 PM, Big Tall JV said:

@CompKing thanks!  you hit the nail on the head.  It doesn't like my Motion Sensor II, Insteon thermostats, or door sensors.  when I removed all those the rest showed up.  I'm not sure exactly what is the problem, I don't really care,  that did it.  I know the MSIIs are a big PITA in everything ISY but for the rest it's working!!

Thanks 

Jason

Glad I could help!  I'm just learning too, and ran into some of the same frustrations.  Glad I could get you on the right course.

Guest
This topic is now closed to further replies.

  • Recently Browsing

    • No registered users viewing this page.
  • Forum Statistics

    • Total Topics
      37k
    • Total Posts
      371.4k
×
×
  • Create New...