The homebridge-homeseer-plugin-2018 is an open-source plugin for the homebridge environment. This plugin, when used with homebridge, acts as a bridge between Apple's HomeKit platform and HomeSeer home automation software. The homebridge-homeseer-plugin-2018 supports common Z-Wave device including lights, switches, sensors, locks, and garage door openers.
Please see the Wiki pages for instructions on Installing HomeBridge on Windows 10 and Linux and for enabling the Instant Status feature.
If you have problems getting this to work, I will try to help, but please reveiw this entire ReadMe page and reveiw the Wiki pages concerning installation on Windows and Linux before asking for assistance and, if you get specific error messages, try a few google searches for the error messages to see if there are known solutionss. Also, problems may relate to HomeBridge itself, rather than this plugin, so you should also review information posted on the HomeBridge site at: https://github.com/nfarina/homebridge in its "issues" tab and its wiki. All assistance request should be raise in the "Issues" tab.
The Thermostat type has been updates to support separate heating and cooling setpoints. You should no longer use a setPointRef, but instead, should set coolingSetpointRef to the HomeSeer device that controls temperature in cooling mode, and heatingSetpointRef to the HomeSeer device that controls the temperature in heating mode.
Support for simple water valves has been added. To add a valve, put an entry of the following form in your config.json
{"type":"Valve", "ref":123, "openValve":255, "closeValve":0}
where "ref" specifies the HomeSeer reference controlling the valve. The "openValve" and "closeValve" parameters are optional and do not need to be specified if your device uses the 'typical' values of 255 for open, 0 for closed.
I have not yet implemented valve timers. That may come in the future.
Additional config.json error checking has been added to catch some more common errors like incorrectly specified parameters and incorrectly identified HomeSeer references.
Security System support has been added. See sample configuration files in 'config' directory, and wiki pages for configuraiton parameter setings.
Window Coverings can now accept an "openValue" and "closedValue" as well as a "binarySwitch" configuration parameter.See WindowCovering section, below.
Support has been added for Z-Wave Thermostats. This is still somewhat "untested" so post an issue if have any problems. See Section G of the Wiki page "Seting Up Your Config.json file" for more information on configuring thermostats. https://github.com/jvmahon/homebridge-homeseer/wiki/Setting-Up-Your-Config.json-file.
{"type":"Thermostat", "name":"Living Room", "ref":29, "setPointRef":28, "controlRef":27, "stateRef":26, "humidityRef":32, "humidityTargetRef":33, "temperatureUnit":"F"}
where "ref" is the current temperature device; "setPointRef" is the target temperature device, "controlRef" is the device to select the heating mode (Off, Heat, Cool, Auto), and "stateRef" is the device that reports the working state of the system ("Off", "Heating", "Cooling"). The "temperatureUnit" setting is the unit used by your HomeSeer configuration. Your iPhone's temperature unit is determined by the iPhone's system settings. You may also specify an optional humidity sensor via "humidityRef" and optional device to control relative humidity using "humidityTargetRef".
This update also supports specification of an "onValue" parameter for lightbulb, outlet, fan, and switch accessories. This has been added to allow support of accessories which do not use the "default" Z-Wave value of 255 to turn on the accessory. For example, the Lutron plugin uses values 1-100 to turn on a Lutron bulb. May be also be used for Z-Wave dimmers to always turn the dimmer on to a set value when the accessory icon is tapped (e.g., "onValue":75 will always turn dimmer on to 75%). For Z-Wave, it is generally preferable to leave the onValue undefined which defaults to 255 (on-last-level). If specified for Z-Wave, onValue should be in the range 1-99 or 255.
Control for simple window coverings has returned. To add a Window Covering, put a WindowCovering entry in the accessories section of your config.json file along the lines of:
{"type":"WindowCovering", "ref" 715, "binarySwitch":true, "openValue":255, "closedValue: 0, "obstructionRef":716 }
The "binarySwitch" parameter is optional and used only if your widow covering is controlled by a binary switch and is limited to fully open / fully closed operation. This "should" be detected automatically, but add the parameter if it doesn't seem to detect correctly. The "openValue" and "closedValue" parameters can be used in conjunction with "binarySwitch" to specify the opening / closing values to be sent to / received from HomeSeer. The "obstructinRef" parameter is optional.
See additional information in "Window Coverings" section of the Wiki entry Setting Up Your Config.json file.
Automatically detects if a Z-Wave device has an associated battery and detects/corrects when a wrong battery reference is specified for a device in config.json.
Also bug fixes for Garage Door Opener.
Since lightbulbs are one of the most common accessories, the plugin has been updated to make it easier to specify Z-Wave lightbulb accessories. You no longer need to individually specify each as an accessory. Instead, you can specify the HomeSeer references for lightbulbs (both dimmable and binary-switched) as a group using the lightbulb group entry identifyer "lightbulbs" in your config.json file like so:
"lightbulbs": [308, 311, 314, 317, 400, 415],
NOTE: This only works for Lightbulbs that use the value "255" as the turn-on value ("Last" brihtness setting). If your lights are Z-Wave, then you should be O.K. as "255" is the standard "Last" brightness value for Z-Wave.
See additional informatinon in "Lightbulbs Group" section of the Wiki entry Setting Up Your Config.json file.
Support for Garage Door Openers has returned. To add a garage door opener, put a GarageDoorOpener entry in the accessories section of your config.json file along the lines of:
{"type":"GarageDoorOpener", "name":"myGarageDoor", "ref":648, "obstructionRef":649 },
See additional information in "Garage Door Openers" section of the Wiki entry Setting Up Your Config.json file.
Version 2.1 introduced an "Instant" status feature which provides near-instantaneous status updates from HomeSeer. To enable this feature, you must enable HomeSeer's "Enable Control using ASCII commands" feature. See Wiki entry: https://github.com/jvmahon/homebridge-homeseer/wiki/Enable-Instant-Status-(HomeSeer-ASCII-Port)
For further infomration on setting up the config.json file, see Wiki page entry at: https://github.com/jvmahon/homebridge-homeseer/wiki/Setting-Up-Your-Config.json-file.
-
For some types of devices, the device type is now determined from information retrieved from HomeSeer if it hasn't been specified in the config.json file. Specifically, this plugin now looks at the "Device Type (String)" field obtained from HomeSeer to determine a mapping to a HomeKit device. The mappings are fairly simple and not all HomeKit devices are supported. Supported Mappings are:
- "Z-Wave Switch Binary" -> "Switch"
- "Z-Wave Switch Multilevel" -> "Lightbulb"
- "Z-Wave Door Lock" -> "Lock"
- "Z-Wave Temperature" -> "TemperatureSensor"
- "Z-Wave Water Leak Alarm" -> "LeakSensor"
** If you know of other mappings that can be included such as for the Fan, Outlet, MotionSensor, CarbonMonoxideSensor, CarbonDioxideSensor, ContactSensore, OccupancySensor, SmokeSensor, LightSensor, HumiditySensor types, please let me know and I'll include them
Note that a user can manually alter their HomeSeer Device type (String) so this mapping mechanism only works if the user hasn't touched it!
If you used a prior HomeSeer plugin, you must remove it before installing this plugin using, e.g.,:
npm -g uninstall homebridge-homeseer
npm -g uninstall homebridge-homeseer-plugin
For Windows installation, see: https://github.com/jvmahon/homebridge-homeseer/wiki/Windows-10-Installation.
For Linux installation, see: https://github.com/jvmahon/homebridge-homeseer/wiki/Linux-Installation.
Extreme caution should be used when using this plugin with sensors and, in particular, any safety oriented sensors. This plugin may not provide real-time update to the sensor status and updates can be delayed due to polling delays or update failurs. Sensor status should not be relied on for critical safety or security applications. This software is implimented for educational and experimental purposes, is not of commercial quality, and has not undergone significant user testing. All use is at your own risk.
This plugin is for use with homebridge Apple iOS Homekit support application to support integration with the Homeseer V3 software
Based on and includes code from hap-nodejs and homebridge-legacy-plugins and homebridge-homeseer-plugin and others cited therein.