GithubHelp home page GithubHelp logo

homebridge-hubitat-tonesto7's Introduction

homebridge-hubitat-tonesto7

This is based off of @pdlove homebridge-smartthings

npm version

Current App version: 1.5.2


Change Log:

Hubitat App:

v1.0.0 - Ported app over from my SmartThings version.

v1.0.1 - Hubitat Safety Monitor Support is set to Off by Default.

v1.1.3 - App Cleanups. Added Windows Shades support for Native HomeKit control.

v1.1.5 - Code Cleanups

v1.1.5 - Shade Fixes

v1.3.0 - The SmartThings and Hubitat Apps now share 99.9% of the same code. With the exception being the hubaction declarations and a static variable defining the platform type

v1.4.0 - Add support for multiple HSM locations, and other Bugfixes mainly related to Hubitat Side

v1.4.1 - SHM/HSM fixes and added support for triggering intrusion alerts under HomeKit

v1.5.0 - Added support for the service to send commands directly to the hub locally (SmartThings ONLY) v1.5.0 - Added toggle to control whether local commands are allowed (SmartThings ONLY) v1.5.0 - Added ability to trigger service restart when you exit the app (Will only restart on it's own if using process/service manager like PM2/systemd)

v1.5.1 - Bug fixes

v1.5.2 - Bug fixes

Homebridge Plugin:

v1.0.0 - Reworked alot of the code to allow for better direct communication with Hubitat

v1.1.2 - Added Native support for Window Shades

v1.1.3 - Readme Update test

v1.1.7 - Fixed Shades Support

v1.1.8 - Shade Fixes

v1.1.9 - Added in capability exclusion feature to match @pdlove plugin

v1.2.0 - Modes fixes and Minor Cleanups

v1.2.1 - Fixed Readme Typo

v1.3.0 - The SmartThings and Hubitat NPM package now share 99.9% the same code. All except 2 static variables defining the platform type

v1.3.1 - Bug fixes from code merge

v1.3.2 - More Bug fixes from code merge

v1.3.3 - Fixed Detection Issues in plugin

v1.4.0 - Fixed Hubitat support, working windows shades, allow multiple location SHM/HSM instances, lot's of cleanups and restructures. v1.4.0 - Warning: This will recreate a new Alarm device under Homekit. There is a possiblity it might also reset all of your Homekit Devices, rooms and options

v1.4.0 - Warning: This will recreate a new Alarm device under Homekit. There is a possiblity it might also reset all of your Homekit Devices, rooms and options

v1.4.1 - SHM/HSM fixes and added support for triggering intrusion alerts under HomeKit

v1.5.0 - Added support for the service to send commands directly to the hub locally (SmartThings ONLY) v1.5.0 - Added toggle to control whether local commands are allowed (SmartThings ONLY) v1.5.0 - Added ability to trigger service restart when you exit the app (Will only restart on it's own if using process/service manager like PM2/systemd)

v1.5.1 - Bug fixes

v1.5.2 - Bug fixes

v1.5.3 - Fixes for Open/Close | Lock/Unlock on iOS 12.1.2

v1.5.5 - Fix for broken lock command

v1.5.6 - Fixes for HSM night mode

Explanation:

Direct Updates

This method is nearly instant. This option allows the hub to send updates directly to your homebridge-hubitat-tonesto7 installation. The hub must be able to send an http packet to your device so make sure to allow incoming traffic on the applicable port. The port used for this can be configured by the "direct_port" setting and defaults to 8005. The program will attempt to determine your IP address automatically, but that can be overridden by "direct_ip" which is useful if you have multiple addresses.

When properly setup, you should see something like this in your Homebridge startup immediately after the PIN:

[1/29/2017, 8:28:45 AM] Homebridge is running on port 51826.
[1/29/2017, 8:28:45 AM] [Hubitat] Direct Connect Is Listening On 10.0.0.70:8005
[1/29/2017, 8:28:45 AM] [Hubitat] Hubitat Hub Communication Established

Installation:

Installation comes in two parts:

1. Hubitat App Installation

  • Open your Hubitat web interface
  • Goto Apps Code
  • Copy/Paste the code from Hubitat App Code
  • Press Save
  • Press Oauth and press Enable
  • Press Save
  • Your Done with the Hubitat code install.

2. Hubitat App Configuration

  • Under the Hubitat Web Interface, Click on Apps in the left side menu.

  • Click on the button +Load New App

  • Select Homebridge (Hubitat) from the list of User Apps

  • There are 4 inputs at the top that can be used to force a device to be discovered as a specific type in HomeKit.

  • For any devices not added by type Tap on the input next to an appropriate device group and then select each device you would like to use (The same devices can be in any of the Sensor, Switch, Other inputs)

    • There are several categories because of the way Hubitat assigns capabilities. So you might not see your device in one, but might in another.
    • Almost all devices contain the Refresh capability and are under the "Other Devices" group
    • Some sensors don't have a refresh and are under the "Sensor Devices" group.
    • Some devices, mainly Virtual Switches, only have the Switch Capability and are in the "Switch Devices".
  • If you select the same device in multiple categories it will only be shown once in HomeKit, so you can safely check them all in all groups.

  • If a device isn't listed, let me know by submitting an issue on GitHub.

  • Tap Done and you are finished with the App configuration.

3. Homebridge Plugin Installation:

  1. Install homebridge using: npm i -g homebridge (For Homebridge Install: Homebridge Instructions)
  2. Install Hubitat plugin using: npm i -g homebridge-hubitat-tonesto7
  3. Update your configuration file. See sample config.json snippet below.

Config.json Settings Example

Example of all settings. Not all settings are required. Read the breakdown below

{
   "platform": "Hubitat",
   "name": "Hubitat",
   "app_url": "10.0.0.40/api/app/YOUR_APPS_ID/",
   "access_token": "THIS-SHOULD-BE-YOUR-TOKEN",
   "direct_ip": "10.0.0.70",
   "direct_port": 8005,
   "excluded_capabilities": {
       "HUBITAT-DEVICE-ID-1": [
          "Switch",
          "TemperatureMeasurement"
       ]
   }
}
  • platform & name Required
    This information is used by homebridge to identify the plugin and should be the settings above.

  • app_url & access_token Required
    To get this information, open Hubitat web interface in your browser, goto "Apps" "Homebridge (Hubitat)" and tap on "View Configuration Data for Homebridge"
    Notice: The app_url in the example above may be different for you.

  • direct_ip Optional
    Defaults to first available IP on your computer
    Most installations won't need this, but if for any reason it can't identify your ip address correctly, use this setting to force the IP presented to Hubitat for the hub to send to.

  • direct_port Optional
    Defaults to 8005
    This is the port that homebridge-hubitat plugin will listen on for traffic from your hub. Make sure your firewall allows incoming traffic on this port from your hub's IP address.

  • excluded_capabilities Optional
    Defaults to None
    Specify the Hubitat device by ID and the associated capabilities you want homebridge-hubitat-tonesto7 to ignore
    This prevents a Hubitat device from creating unwanted or redundant HomeKit accessories

homebridge-hubitat-tonesto7's People

Contributors

tonesto7 avatar biocomp avatar spectre3ooo avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.