Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alisdairjsmyth/homebridge-ambiclimate
Ambi Climate accessory plugin for Homebridge
https://github.com/alisdairjsmyth/homebridge-ambiclimate
ambi-climate-device homebridge switch
Last synced: 4 months ago
JSON representation
Ambi Climate accessory plugin for Homebridge
- Host: GitHub
- URL: https://github.com/alisdairjsmyth/homebridge-ambiclimate
- Owner: alisdairjsmyth
- License: mit
- Created: 2017-01-09T00:13:33.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2017-12-12T06:19:41.000Z (about 7 years ago)
- Last Synced: 2024-10-09T15:08:08.361Z (4 months ago)
- Topics: ambi-climate-device, homebridge, switch
- Language: JavaScript
- Size: 35.2 KB
- Stars: 7
- Watchers: 5
- Forks: 3
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# homebridge-ambiclimate
[![NPM Version](https://img.shields.io/npm/v/homebridge-ambiclimate.svg)](https://www.npmjs.com/package/homebridge-ambiclimate)
[![Dependency Status](https://img.shields.io/versioneye/d/nodejs/homebridge-ambiclimate.svg)](https://www.versioneye.com/nodejs/homebridge-ambiclimate/)[Ambi Climate](https://www.ambiclimate.com/) plugin for [homebridge](https://www.npmjs.com/package/homebridge). This plugin presently supports:
* Current Temperature (implementation of Temperature Sensor Service)
* Current Relative Humidity (Implementation of Humidity Sensor Service)
* Current Fan state (Implementation of Fan Service)
* Turn On/Off (Implementation of Switch) - where "off" and "on" modes are configurableas such each physical device appears within HomeKit Apps as four logical devices with the same name.
A separate plugin for Ambi Climate is available - [homebridge-ambiclimate-thermostat](https://www.npmjs.com/package/homebridge-ambiclimate-thermostat) exposes Ambi Climate devices as a Thermostat services within Homekit.
## Installation
npm install -g homebridge-ambiclimate
This plugin augments a pre-existing implementation of [homebridge](https://www.npmjs.com/package/homebridge). Refer to [nfarina/homebridge](https://www.npmjs.com/package/homebridge) for installation instructions.
Register a OAuth Client in the Ambi Dev Portal for each Ambi Climate device by following the steps on the Quick Start page. You require the Client Id and Client Secret of that client in order to use this wrapper.
Update your homebridge configuration file (as below).
## Configuration
"accessories" : [
{
"accessory": "AmbiClimate",
"name": "",
"roomName": "",
"locationName": "",
"clientId": "",
"clientSecret": "",
"username": "",
"password": "",
"onMode": "Comfort",
"offMode": "Away_Temperature_Upper",
"offValue": 25
}
]Separate homebridge accessories can be defined for each Ambi Climate device to be controlled.
* `accessory`: Must be "AmbiClimate"
* `name`: Can be anything, this will be the name of the Accessory within HomeKit Apps
* `room_name`: Must match the value within the Ambi Climate App
* `location_name`: Must match the value within the Ambi Climate App
* `clientId`: The Client Id value for the OAUTH Client obtained from Ambi Dev Portal
* `clientSecret`: The Client Secret value for the OAUTH Client obtained from Ambi Dev Portal
* `username`: Your Ambi Climate username
* `password`: Your Ambi Climate password
* `onMode`: (Optional) The mode to put Ambi Climate into when turning it on - defaults to Comfort
* `onValue`: (Optional) Value associated with the on mode
* `offMode`: (Optional) The mode to put Ambi Climate into when turning it offMode - defaults to Off
* `offValue`: (Optional) Value associated with the off modeThe following values are supported for `onMode` and `offMode`:
* `Comfort`
* `Off`
* `Away_Temperature_Upper`
* `Away_Temperature_Lower`
* `Away_Humidity_Upper`
* `Temperature`## To Do
* Refactor to a Platform plugin. This is predicated on Ambi Labs exposing a capability in their public API to retrieve all devices installed in a given location.
* Implement Fan Service set capabilities. This is predicated on Ambi Labs exposing a capability in their public API to set fan state.