From ffa49cf462aeba899a9bd6c54218cb17b6599fda Mon Sep 17 00:00:00 2001 From: Jon Maddox Date: Tue, 19 May 2015 15:04:32 -0400 Subject: [PATCH] update README to reference platforms --- README.md | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index b48fc08..e972e3e 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # HomeBridge -HomeBridge is a lightweight NodeJS server you can run on your home network that emulates the iOS HomeKit API. It includes a set of "shims" (found in the [accessories](accessories/) folder) that provide a basic bridge from HomeKit to various 3rd-party APIs provided by manufacturers of "smart home" devices. +HomeBridge is a lightweight NodeJS server you can run on your home network that emulates the iOS HomeKit API. It includes a set of "shims" (found in the [accessories](accessories/) and [platforms](platforms/) folders) that provide a basic bridge from HomeKit to various 3rd-party APIs provided by manufacturers of "smart home" devices. Since Siri supports devices added through HomeKit, this means that with HomeBridge you can ask Siri to control devices that don't have any support for HomeKit at all. For instance, using the included shims, you can say things like: @@ -15,6 +15,24 @@ Since Siri supports devices added through HomeKit, this means that with HomeBrid If you would like to support any other devices, please write a shim and create a pull request and I'd be happy to add it to this official list. +# Shim types +There are 2 types of shims supported in HomeBridge. + +* Accessory - Individual device +* Platform - A full bridge to another system + +## Accessories + +Accessories are individual devices you would like to bridge to HomeKit. You set them up by declaring them individually in your `config.json` file. Generally, you specify them by `name` or `id` and which system they use. + +## Platforms + +Platforms bridge entire systems to HomeKit. Platforms can be things like Wink or SmartThings or Vera. By adding a platform to your `config.json`, HomeBridge will automatically detect all of your devices for you. + + Wink is currently the only supported platform at the moment. + +All you have to do is add the right config options so HomeBridge can authenticate and communicate with your other system, and voila, your devices will be available to HomeKit via HomeBridge. + # Why? Technically, the device manufacturers should be the ones implementing the HomeKit API. And I'm sure they will - eventually. When they do, these shims will be obsolete, and I hope that happens soon. In the meantime, this server is a fun way to get a taste of the future, for those who just can't bear to wait until "real" HomeKit devices are on the market. @@ -58,15 +76,20 @@ Now you should be able to run the homebridge server: Starting HomeBridge server... Couldn't find a config.json file [snip] -The server won't do anything until you've created a `config.json` file containing your home devices (or _accessories_ in HomeKit parlance) you wish to make available to iOS. +The server won't do anything until you've created a `config.json` file containing your home devices (or _accessories_ in HomeKit parlance) or platforms you wish to make available to iOS. -One you've added your devices, you should be able to run the server again and see them initialize: +Once you've added your devices or platforms, you should be able to run the server again and see them initialize: $ npm run start Starting HomeBridge server... Loading 6 accessories... [Speakers] Initializing 'Sonos' accessory... [Coffee Maker] Initializing 'WeMo' accessory... + [Speakers] Initializing 'Sonos' accessory... + [Coffee Maker] Initializing 'WeMo' accessory... + [Wink] Initializing Wink platform... + [Wink] Fetching Wink devices. + [Wink] Initializing device with name Living Room Lamp... Your server is now ready to receive commands from iOS.