Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

openzwave-shared

OpenZWave214ISC1.7.2TypeScript support: included

Node.JS bindings for OpenZWave including management and security functions

zwave, z-wave, home automation, openzwave, open-zwave

readme

node-openzwave-shared

LinuxLinux Build Status WindowsWindows Build status

Linux Build status

Windows Build status

Join the chat at https://gitter.im/OpenZWave/node-openzwave-shared Google group

This is the homepage for node-openzwave-shared, the official binary add-on for Node.js, which wraps Open ZWave, a high quality C++ library for controlling Z-Wave networks.

You can now easily control and manage your ZWave devices (lights, dimmers, blinds, you name it) from within Node.js applications. This library also supports secure devices (eg door locks) that require encryption.

All widely used Node.js versions are supported with the help of NaN. This add-on is currently tested against 0.12.x on ARM and 4.2.x on x86_64, but it should also work on all supported Node.js versions (as early as 0.11.12) and architectures.

Check out the Node-Red integration project for an interesting use case, in which I've wired up ZWave and KNX devices working together as one big happy automated home.

This addon is currently able to:

  • scan a Z-Wave network and report on connected devices,
  • write values to zwave nodes
  • monitor the network for changes,
  • heal nodes and/or the network
  • perform management tasks (add/remove nodes, replace failed nodes, manage their group associations etc)

API change notice (v1.4.0) enablePoll() and disablePoll() used to affect only the first ValueID of any given command class. This is wrong, as for multi-instance devices you probably need to poll multiple ValueID's. These calls now accept a valueId, in very much the same way as setValue() does. This means that you now have to pass a valueID object (or its 4 constituents) for each value you want to enable/disable polling for.

Important notice

This library differs from its ancestor library in that it links dynamically to an OpenZWave shared library by means of your system dynamic linker. This is in contrast to statically linking OpenZWave as part of the node.js addon.

Thus you need to have OpenZWave fully installed on your system (both the compiled library AND the development headers) before trying to install this little baby. I know this diverges from the dominant npm paradigm, but with the shared lib approach:

  • compilation / installation is a lot faster and
  • OZW minor upgrades / bugfixes are way lot easier.

This also means that you need to be careful if you upgrade your OZW library: you might need to rebuild this addon, otherwise you'd might get api mismatch exceptions.

Prerequisites

Linux

You will need to ensure the OpenZWave library and headers are installed first. You can do this one of two ways.

MacOS/X

The only dependency that you need before compiling is pkg-config. Then, you could either pull down the OZW repo from Github and do a make && sudo make install , or you could try installing OpenZWave using brew install open-zwave.

Windows

Since there is no standard installation location for Open Z-Wave on Windows, it will be automatically downloaded, compiled, and installed when you install this module.

Installation and test script

Whenever you have OpenZWave installed in your machine, then all you need to do is:

$ npm install openzwave-shared

To try it out, boot up NodeJS, and use the .load shell helper function to boot up a basic OpenZWave CLI. This will initialise and expose 1) a zwave object that you can use to send commands and 2) the nodes object to get a list of all nodes:

$ node
> .load test2.js
...
...

// the 1st node is the USB controller stick
> console.log(nodes[1])
{ manufacturer: 'Aeotec',
  manufacturerid: '0x0086',
  product: 'Z-Stick S2',
  producttype: '0x0002',
  productid: '0x0001',
  type: 'Static PC Controller',
  name: '',
  loc: '',
  classes: { '32': { '0': [Object] } },
  ready: true }

// set dimmer (node 5) to 50%
> zwave.setValue(5,38,1,0,50);
undefined
> node5: changed: 38:Level:54->54

Notice 1: If you receive the error cannot find -lopenzwave on a 64-bit Linux system, libopenzwave.so was likely compiled into /usr/local/lib64. Run the terminal command ld -lopenzwave --verbose for a list of search locations used. You can workaround this by providing a symlink to one of the listed locations such as /usr/local/lib. Run sudo ln -s /usr/local/lib64/libopenzwave.so /usr/local/lib/libopenzwave.so creates symlink so that the file appears to be in the location that ld looks in. Now npm install should work.

Notice 2: nodejs Debian/Raspbian package (v0.10.29) causes an issue REPLACE_INVALID_UTF8 (cf. https://github.com/nodejs/nan/issues/414). You can use node from herokuapp or upgrade some node packages: sudo npm -g install npm node-gyp.

In case you want to develop your application in TypeScript, there is also a TypeScript declaration file available. Besides adding typechecking to your codebase this will also help you to navigate the API and see the type of parameters available for each function. You can download the latest version of the declaration file from GitHub.

Development documentation

Environment-specific documentation

License

The Open Z-Wave library that this module heavily relies upon is licensed under the Lesser GPLv3.

Everything else (all the bits that I and Jonathan have written) is under the vastly more sensible ISC license.

changelog

Changelog

All notable changes to this project will be documented in this file. Dates are displayed in UTC.

Generated by auto-changelog.

v1.7.2

3 November 2020

  • fix: typo in utils.cc ManuacturerSpecificDBReady #391
  • fix: typescript types #384
  • docs: typo in url #382
  • feat: github actions for ci #381

v1.7.1

9 June 2020

  • fix: compile errors b3c4ea9
  • fix: use OZWManagerAssign to handle exceptions 89b9872
  • Release 1.7.1 d87b204

v1.7.0

15 May 2020

  • fix: update typescript annotations #376
  • fix: linting of types declaration file #367
  • fix: misspelling in OpenZWave options #369
  • feat: expose GetNodeClassInformation #374
  • Add support for building on Android #372
  • pull from node-openzwave-shared master #1
  • test appveyor CI with Node 10 #373
  • Release 1.7.0 3e0ce8a
  • fix: test3.js 66c461b

v1.6.2

3 March 2020

  • fix: Empty config and user path when calling updateOptions d867ec6
  • Revert "BREAKING CHANGE: List valueId values array becomes an Object value: valueString" e9c9ab4
  • BREAKING CHANGE: List valueId values array becomes an Object value: valueString 60272ab
  • Release 1.6.2 1161317
  • Add ozwcache to ignored files f44e2e4

v1.6.1

12 February 2020

  • Add support for building on FreeBSD #366
  • Release 1.6.1 db3e197

v1.6.0

11 February 2020

  • Changes to make the windows build compatible with Node 12. #364
  • Release 1.6.0 460f0a8
  • docs: Updated events 58c4d9b
  • Change because node 0.12 doesn't support string interpolation. 1df30cf
  • Fix to be compatible with old old node. c4885f7

v1.5.12

16 January 2020

  • fix: Fixed 'connected' callback with ozw version fae401c
  • feat: Added getOzwVersion method 80f9dbf
  • Release 1.5.12 1e4a78a

v1.5.11

16 January 2020

  • Fix build issue #356 #359
  • Bugfix/issue#183 disconnect deadlock #329
  • Adding missing typing for removeFailedNode #357
  • Release 1.5.11 4a09346
  • Adding missing typeing for removeFailedNode 9635576
  • fix build 52f7792

v1.5.10

5 November 2019

  • Issue:291 add device metadata #336
  • Update openzwave-shared.d.ts #354
  • Release 1.5.10 a5fe49f

v1.5.9

29 October 2019

  • [fix] Openzwave 16 deprecated errors #355 de923b5
  • Release 1.5.9 a009e63
  • [fix] Enable writeConfig function for openzwave version < 16 5686303
  • Update openzwave-shared.d.ts a4aecf0
  • [fix] getValueIdDescriptor OZWValueIdIndex type 7eaa12a

v1.5.8

12 October 2019

  • Updated typings: added new options in IConstructorParameters #335
  • GetAssociationsInstances #349
  • Release 1.5.8 09a1d05

v1.5.7

2 October 2019

  • BitSet support and fix scene event for ozw <1.6 #345
  • Updated typings #334
  • Use OZWManagerAssign to obtain ValueLabel and ValueHelp #333
  • Added the updateOptions method to the typings #330
  • [feat] Bitset fetch value id labels 4fc4664
  • Release 1.5.7 84b6385
  • enabled getMetaData/getChangeLog 69966ea
  • Updated to typingfile, added missing methods (added in version 1.6) e18c19f
  • getAssociationsInstances 8a7ac32
  • Added new options in IConstructorParameters 7d36b08
  • [chore] Release/changelog script 7468e06
  • [fix] Make scene management back working for ozw < 1.6 86c61e0
  • [fix] Compilation errors 0183340
  • [fix] Position index f25d453
  • [fix] Bitset values parsing b767231
  • [fix] Declaration error 92fdf36
  • added missing nodeId to getNumGroups , added instance to value removed 736f636
  • Added new command param 75fcc17
  • [fix] Replaced ifdef with if for preprocessor c46722f
  • Bump version cc626a8
  • Merge with master 066a25c
  • GetMetaData in correct compiler directive 59e7695
  • [fix] Typo 5a31f31

1.5.6

14 July 2019

  • [fix] Broken build from version 1.5.3 to 1.5.5 #327
  • release 1.5.6 7558a30

1.5.5

7 July 2019

  • align naming of isMultiInstance #326
  • version 1.5.5 a6d1090

1.5.4

7 July 2019

  • add missing path delimiter #323
  • align naming of isMultiInstance 59a1589

1.5.3

30 June 2019

  • Revert breaking change value type list, #316 #317
  • Small fixes so we can build again on SmartOS #314
  • release 1.5.3 21e53d1
  • Merge pull request #318 from OpenZWave/bugfix/fix-fragile-build 9b7ce34
  • use plain grep to look for symbols, add std=c++11 flag to the compiler 46739fb
  • Fix binding.gyp for SmartOS b7e0c6b
  • Fix SmartOS compilation f431b9b

1.5.2

27 June 2019

  • use xcode flag for c++ exceptions on MacOS #312
  • fix build issue on Mac #310
  • [1.6 Update - Associations] ozw.isGroupMultiInstance(nodeid, groupid) #307
  • Feature/294 send raw data #306
  • implement SendRawData 21a377b
  • update travis to use clang 46352d2
  • update travis to use clang f6307d9
  • release 1.5.2 27d6406

1.5.1

16 June 2019

  • Vibr77 master #304
  • Feature/295 new notification types #305
  • fix all deprecated v8 calls for node12 compatibility #302
  • fix merge conflict 30185be
  • implement new notification types; change ValueID index type 9016928
  • release 1.5.1 0644c73
  • fix merge conflict 4a93bd5
  • fix value type and genre mapping to string b0dada4
  • use snprintf to guard against overflows in exception messages 88c1e28
  • exclude vscode files from npm packaging a99d9b9

1.5.0

3 June 2019

  • add preprocessor wrappers for OZW exceptions #300
  • check for existence of an options object #256
  • Added UpdateOptions api to update OpenZWave options #277
  • Better typescript integration #263
  • Updated Raspbian Readme to fix bug when installing on Raspbian stretch #271
  • fix conflicts 11ac39b
  • fix conflicts 7f61ef6
  • Replaced std::string with ::std::string and fixed indentation 20f0997
  • prepare for release ee80492
  • add winsock lib 819753e
  • remove action block breaking windows build a1b511d
  • Strange indentation goes wrong when commit 4456667
  • add win dns lib 469c38e
  • add winsock lib 5695b68
  • extend Travis for Node 11 and 12 dfd5d51
  • Added comment to trigger new test 555983b
  • Changed interval in test 58eb37e
  • Fixed var ::std::ostringstream 7987eeb

1.4.8

10 March 2019

  • Make node-openzwave-shared build on SmartOS #272
  • Fix namespace errors of missing string, list, ... in OZW::std ffe5e45
  • Update gyp binding to build on SmartOS d7e38e5
  • better typing for setChangeVerified() by @lukescott 408650e
  • version 1.4.8 076e324
  • Updated Readme to fix bug when installing on Raspbian stretch ceecf2c
  • fixed type 3545372
  • Fixed typo 2697ebd

1.4.7

26 January 2019

  • Fix scene values type 'list' (Partially fix #266) #267
  • added instanceids to add and remove association #262
  • Fix scene APIs #264
  • Merge pull request #267 from robertsLando/master #266
  • Fix scene values type 'list' (Partially fix #266) #266
  • added enums compiled from ts f1171d6
  • added types to package.json 44de998
  • Added object.assign polyfill for node v0.12 55a9b9f
  • release 1.4.7 9b249a4
  • removed noinspection comments from author 8f5d830
  • amend docs on node name/location, #255 01f49f4

1.4.6

11 August 2018

  • Bugfix/issue#233 fix various deprecated API calls #234
  • Update all emitted callbacks to use AsyncResource 3b4dbae
  • check for existence of an options object 41ebb0d
  • release 1.46 0611f79

1.4.5

25 June 2018

  • remove deprecated ToNumber() in favor of Uint32Value d6de32e
  • remove deprecated Utf8Value() in favor of Nan::Utf8String 5be72ae
  • version 1.4.5 41ac266

1.4.4

10 June 2018

1.4.3

1 May 2018

  • Bugfix/issue#222 inclusion paths #230
  • add appveyor ci 9e5dcfb
  • remove openzwave path prefix from include stanzas 9cd52b8
  • version 1.4.3 23f4d7b

1.4.2

1 May 2018

  • Bugfix/issue#227 node v10 build fix #229
  • version 1.4.2 d8f2374
  • Bump nan version to 2.10.0 which is v10 compatible 832f798
  • Fix no matching function call compile error for node v10 9080a1b

1.4.1

27 February 2018

  • issue#193: press/release button based on boolean value passed in as arg #206
  • Fixing a common coexistence issue. Look for the newest node referece first. #189
  • Feature/types #201
  • Fix in EnablePoll method, it instead of getting a value from index 1,… #202
  • Allow ConfigPath to be configured like UserPath #185
  • Fix path detection for partial failures #184
  • Make sure only one instance is started #178
  • Inherit all EventEmitter's functions #180
  • Fix deprecations to remove the compile warnings #181
  • Feature/refactor polling #174
  • Added type definitions, so that IDEs like WebStorm would provide code completion features on "openzwave-shared" module. c705ba3
  • Remove depreciation warnings 1ba37b1
  • use swap() with a temporary queue to avoid deadlocks with the main notifications queue 1a1c033
  • consume notifications queue in one go, then unlock to let handlers invoke more notifications d3c8451
  • issue #209: add setValueLabel dc423dd
  • amend docs f325835
  • Remove warnings about spelling of header filename eea3c26
  • issue #205: clarify on eventIds bd39193
  • amend README b27f5f0
  • Fix in EnablePoll method, it instead of getting a value from index 1, used "1" as an actual value of intensity. cdeaf5d
  • Removed mentinoning of non-existant openzwave-controller.cc ae2d235
  • Removed mentioning of openzwave-controller.cc in comments in openzwave.hpp, it looks like all the methods are in openzwave-driver.cc now. f49ae5b
  • add Matt to contributors 0df5ef6
  • publish version 1.4.1 c3c4a89
  • fix typo b38e270
  • Update README-api.md 1f2ccdc
  • fix for #196 146b205
  • Fixing a common coexistence issue. Look for the newest referece first. 10111c6

1.4.0

31 May 2017

  • make populateValueId raise meaningful errors #173
  • Enable chaining on proxy EventEmitter method calls #169
  • Pass on OZW return values #168
  • refactor Enable/DisablePoll() functions to accept valueIDs 5f38c0b
  • prepare for 1.4.0 fbab11b
  • return this from EventEmitter methods a279c97
  • Update openzwave-polling.cc 22eee5a
  • ignore .idea db2fbbf
  • add nodeJS 7.x target for Travis CI 0c07f3a

1.3.4

14 April 2017

  • added releaseButton method #159
  • Fix deprecatione error that caused 'node-gyp rebuild' to fail on Windows #149
  • fix for #151, fall back to find if pkg-config returns nothing 59dee5b
  • fix annoying nodejs vs node issue which still persists in Ubuntu 35f7b25
  • Update openzwave-nodes.cc 6501844
  • version 1.3.4 d89c82b
  • Update openzwave-nodes.cc 4b6d961
  • fix for #152 2fc0fe0
  • Update openzwave.hpp 104975a
  • Update openzwave.cc 56f353c

1.3.2

3 March 2017

1.3.1

30 January 2017

1.3.0

22 January 2017

  • avoid crash when deleting uninitialised array if node has no association groups aa1df57
  • version 1.3.0 151d33f
  • supress stderr for find as its confusing gyp eebadde

1.2.9

18 January 2017

1.2.8

17 January 2017

  • add rudimentary arity check 8efd212
  • use simpler find for resource constrain Linuxes ee97b45
  • version 1.2.8 de754ac

1.2.7

5 January 2017

1.2.6

5 January 2017

  • Fix linux build when libopenzwave is in /usr/local/lib #135
  • version 1.2.5 #134
  • version 1.2.6 b59da6c

1.2.5

19 December 2016

1.2.4

10 December 2016

  • GetNodeStatistics object return call #132
  • update raspbian docs 4560112
  • Return the stats object in GetNodeStatistics the same way as GetDriverStatistics 89aca46

1.2.3

8 December 2016

  • Fixed undefined symbol when writing values #131
  • version 1.2.3 31178b6

v1.2.2

5 December 2016

  • Fixed object keys getting double quotes #129
  • version 1.2.2 81bf664

1.2.1

4 December 2016

  • Feature/remove duplicate code #128
  • Add support function WriteConfig (sava settings) #119
  • Update README.md #99
  • updated readme to reflect that cancelControllerCommand is not depricated #94
  • fix indentation cd20793
  • use macros to trim code duplication 31938f7
  • added getDriverStatistics and getNodeStatistics 3b6df3e
  • update copyright header 25a0a3e
  • potential fix for #120 e3bf533
  • add node removed doc de3b237
  • version 1.2.1 f357c94
  • add getNodeNeighbors basic test df3dc3a
  • Update openzwave.hpp f2964fb
  • Delete .DS_Store 53a2789

v1.2.0

24 April 2016

  • ignore winRT sources when building open zwave #92
  • Add a Gitter chat badge to README.md #91
  • Updated README.md #89
  • Fix incidental global declarations #85
  • reinclude CancelControllerCommand for recent OZW builds, fix whitespace 81122b9
  • update readme for raspbian b69ff24
  • update readme for raspbian a3294bd
  • updated README a015839
  • bump up version, add contribitors to package.json 84338b8
  • fix for #87: capture OpenZWave UserPath override 7a66a28
  • Add Gitter badge fff6522
  • fix typo ee5b64a

1.1.9

10 March 2016

  • fix for #83: use Nan::EscapableHandleScope to fix Node 0.10 compatibility issue ed0c937
  • bump up version c9095e5
  • bump up version 351abab

1.1.8

8 March 2016

  • Moved options into class for persistence of connection and disconnect. #80
  • FIX: nodeid should be node_id #74
  • Make testNetwork call TestNetwork #73
  • Add SetChangeVerified API #69
  • Add API to refresh value from network #66
  • update documentation 480cf70
  • fix whitespace 16c88b8
  • move ancillary method to utils.cc, use proper handlescope escaping for v8 objects returned by util methods 69765bb
  • update documentation 8db9a47
  • only valueId-related callbacks carry an actual OZW ValueID d5e3b39
  • updated docs e75d6a3
  • Moved options into class for persistance of connection and disconnection.Moved option creation logic into connect because otherwize options are destroyed on disconnect and never reconnected. b91f201
  • update documentation a6bf893
  • bump up version 5f9fcbf
  • remove strict type checking, its confusing users 95dc3a8
  • remove valueId from Type_NodeEvent callback as its currently peeking at random data 9369f68
  • update test 71c57f9
  • fix whitespace 29f09e4
  • Add troubleshooting note 1ed7d4f
  • Update README-api.md cc9fa34

v1.1.7

7 February 2016

  • Bugfix/issue 63 get zwave value id typo #64
  • Add support for raw value types #58
  • Add "scene event" and "node event" documentation. #54
  • glaring typo, hopefully fix #61 and #63 #61
  • added 4 missing button notifications, reordered switch cases as per OZW enum order 1dffedc
  • implement NodeRemoved notification, change znodes to std::map f3f5964
  • Rework to use buffers 9a555cf
  • Add support for Get/Set of ValueType_Raw 016059c
  • bump up version number a02310f

v1.1.6

4 December 2015

  • added type checks, added thermostat schedule calls 43e801d

v1.1.5

25 November 2015

  • refactor headers 42760a6
  • initial support for buttons 140906c
  • manual merge of renz45 PR for MacOS support 5e4e0a3
  • backport Notification::GetAsString() to get meaningful notification messages 0975c68
  • remove code duplication b1f5cec
  • fix OpenZWave version and controller status string message generation a2daa0d
  • update documentation d7d846e
  • notification string helpers now come from c++ 271a888
  • add helpful messages in ControllerCommand and generic Notification calls 3429ce0
  • fix for tr1::unordered_map 1ebe3a5
  • preparing for merge a592974
  • fix OpenZWave version and controller status string message generation 11cf151
  • fix legacy mode helpstring f5ac324
  • use mangled symbol for scanning existence of the new security API instead of existence of ZWSecurity.h 7203527
  • implement PressButton f22b842
  • add missing requirement e40798c
  • fix typo f9349e6
  • update docs 1a1d742
  • add missing binding for pressButton e938f75

1.1.4

24 October 2015

  • fixed OZW link (OZW website is http not https) #38
  • Patch 5 #37
  • fixed properCase for zwave functions #36
  • specified Windows COM port notation #35
  • [windows] Install Open Z-wave dependency #34
  • Adding windows build support #30
  • Move windows ozw install script to npm scripts, update readme 370a1d2
  • Make ozw gyp bindings dynamic 0432db5
  • Fix issue where env variable isn't updated for parent environment a1de8e5
  • update docs 18b8c85
  • Move to node_gyp for compiling ozw on windows ff8d399
  • bump up version for npm publish 448db22
  • adaptation for node x86 (?) 28c0bd7
  • replace \ by / when calling with --get-ozw-home bc13be6
  • Reverted code to something simpler 460571f
  • fixed stupid copy/paste mistake ... duh ... d0292ef
  • Define etc, security for windows ac4c885
  • fix for process.env 4600c0c
  • fix f5bbfdf
  • Point to public gist 18d1dc2

1.1.3

12 October 2015

  • fix broken build with old openzwave a6d227f

v1.1.2

12 October 2015

  • Added support for the new Secure devices API #28
  • update version c1cea3a
  • initial support for OZW Security d5423ed
  • updated documentation 83608db

1.1.1

6 October 2015

  • implement setNodeLevel, rename set[Name/Location] to setNode[Name/Location] 665fefa
  • expose the full EventEmitter API (to fix node-red-contrib-openzwave#10) b099131
  • update licence typo (LGPL3, not GPL3) for OpenZWave b1643fa

1.0.9

29 September 2015

1.0.8

26 September 2015

  • fix for Node.JS 4 nan scope issue (nan#440), completely refactor OZW options mechanism, add default config XML 2aa453a
  • updated docs and example code c6e51c9

1.0.6

23 September 2015

  • fix invocation issue with Node.js 0.12.x and above 5632557
  • fix erroneous duplication 3f7fe2d
  • initial commit for NaN 2.0.9 (NodeJS 4.0) 249e9ad

1.0.5

16 September 2015

  • Few fixes and added more node-related methods #16
  • initial commit for NaN 2.0 (nodeJS 4.0) 8cab773
  • Added several node-related methods e242ec5
  • Fixed DisablePoll method prototype reference and intervalMillisecs type b862019

1.0.4

31 August 2015

1.0.2

31 August 2015

  • added setNodeOn,Off which were mysteriously forgotten 1e6c8de

1.0.1

31 August 2015

  • Copy options.xml to project directory #8
  • Step by step installation on raspbian #7
  • Step by step installation on ubuntu server 15.04 #6
  • Nan #3
  • added setNodeOn,Off which were mysteriously forgotten ebe643e
  • updated README 87cb988
  • started reorganising callback code a85de3c
  • add missing namespace 5f7804f
  • first working implementation with NaN e7883e6
  • compiling against nodejs 0.12.4 - WARNING: not necessarily WORKING! 0c5fa05
  • updated installation section a849b89
  • updated docs and example for BeginControllerCommand 8957674
  • fix polling status notification, return new sceneID from addScene 205cda1
  • map ozw decimals to strings 2b34787
  • remove dup emit_cb->Call(), redundant colons a8c05a1
  • updated readme 76f3cac
  • fix for the compatibility layer breaking ... compatibility due to aesthetic reasons 0515d07

1.0.0

7 June 2015

  • Initial commit for NaN-ized build targeting both 0.10 and 0.12 82366ab
  • no floats in javascript: what a shame 15bcfef
  • Nan-ized strings (String::New => NanNew<String>) and symbols 171b199
  • removed remaining traces of String::NewSymbol 8680474
  • updated README 4869970

0.1.1

5 June 2015

  • updated documentation af6a49e
  • Completed: groups. Merged driver to controller. More polling commands. 0486019
  • Added group association commands (openzwave-groups.cc) c1127ed
  • updated documentation add029e
  • updated README 8ae9ebc
  • updated documentation bd25424
  • updated documentation 7a6eaf8

0.1.0

24 May 2015

  • version 0.1.0 2573b7f
  • updated README, remove redundant setNodeOn/Off e0008cb

0.0.2

22 May 2015

0.0.1

19 May 2015