zwave 0.8.0

  • README.md
  • CHANGELOG.md
  • Installing
  • Versions
  • 0

zwave.dart

zwave is a Dart package for interacting with Z-Wave devices.

Overview

This Dart package uses the Open Z-Wave library to communicate with a compatible Z-Wave Controller and interact with Z-Wave devices.

Usage

This package provides

See the zwave library for more about how to interact with Z-Wave devices.

Requirements

Setup

Pair your Z-Wave controller with your Z-Wave devices, then install the Open Z-Wave library. Use the MinOZW example that is included in the Open Z-Wave library to ensure that the Open Z-Wave library is installed correctly and can communicate with your devices using your Z-Wave Controller.

Activate this zwave package using the pub global command.

    pub global activate zwave

From your application directory (the application that references the zwave package) run the following command to build the native library

    pub global run zwave:build_lib

pub global activate makes the Dart scripts in the zwave/bin directory runnable from the command line. pub global run zwave:build_lib runs the zwave/bin/build_lib.dart program which in turn calls the build_lib script to compile the native libozw_ext.so library for the zwave package.

Finally, run the included command line application to ensure that this package is installed correctly and can communicate with your devices using your Z-Wave Controller.

Changelog

0.8.0

  • add node group/association accessor, add node, remove node
  • add Device.requestAllConfigParams, Device.get/setConfigParam
  • use Device.setConfigParam instead of the ZWave.device "configuration" parameter
  • track last time that each value changes
  • add orElse named argument to Device.valueByIndex
  • add zwave command line application for querying and updating the ZWave devices

0.7.0

  • implement addDevice and removeDevice methods
  • implement RawValue
  • partially implement ScheduleValue
  • add ZWave.heal to update node routing tables
  • add Device.neighborIds indicating which other devices a device can directly communicate with

0.6.0

  • enhance ZWave.device to optionally set device name and configuration
  • add ZWave.pollInterval and Value.pollIntensity accessors
  • add Value help text and Device.valueByIndex accessors
  • new NodeEvent and SceneEvent subclasses of Notification

0.5.0

  • add Value.index to differentiate between values with the same label
  • update Device.value(...) to search userValues first then all values
  • enhance toString to include device name and value label
  • fix Value.min and max
  • add support for setting short and byte values

0.3.0

  • update generate to include comments in src/zwave_g.dart
  • new ZWave deviceSummary convenience method for listing device info
  • add device and value lookup convenience methods
  • add Device update method for updating all a device's information
  • add Device onNotification event stream
  • add support for setting int value
  • rename ZWave.deviceSummary() --> summary() and add Device.summary()
  • add Node.name and Device.label getters and setters

0.2.0

  • add writeConfig to save network configuration
  • add setters to bool and list values
  • add onChange notification stream
  • add value readOnly and writeOnly accessors
  • parameterize the Value class and its methods
  • add userPath for specifying user data directory
  • add support for DoubleValue

0.1.4

  • add value label accessor
  • add value genre and device userValues accessors
  • improve docs

0.1.3

  • add device accessors for product and manufacturer information
  • write network config to file on shutdown
  • cleanup generated code and usages

0.1.2

  • build device value list from notifications

0.1.1

  • initialize Open Z-Wave library
  • connect to Z-Wave controller
  • build device list from notifications

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  zwave: ^0.8.0

2. Install it

You can install packages from the command line:

with pub:


$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:zwave/zwave.dart';
  
Version Uploaded Documentation Archive
0.8.0 Jul 5, 2017 Go to the documentation of zwave 0.8.0 Download zwave 0.8.0 archive
0.7.0 Dec 27, 2016 Go to the documentation of zwave 0.7.0 Download zwave 0.7.0 archive
0.6.0 Aug 8, 2016 Go to the documentation of zwave 0.6.0 Download zwave 0.6.0 archive
0.5.0 Jul 29, 2016 Go to the documentation of zwave 0.5.0 Download zwave 0.5.0 archive
0.3.0 Jul 23, 2016 Go to the documentation of zwave 0.3.0 Download zwave 0.3.0 archive
0.2.0 Jul 16, 2016 Go to the documentation of zwave 0.2.0 Download zwave 0.2.0 archive
0.1.3 Jul 2, 2016 Go to the documentation of zwave 0.1.3 Download zwave 0.1.3 archive
0.1.2 Jun 19, 2016 Go to the documentation of zwave 0.1.2 Download zwave 0.1.2 archive
0.1.1 May 31, 2016 Go to the documentation of zwave 0.1.1 Download zwave 0.1.1 archive
0.1.0 May 31, 2016 Go to the documentation of zwave 0.1.0 Download zwave 0.1.0 archive
Popularity:
Describes how popular the package is relative to other packages. [more]
0
Health:
Code health derived from static analysis. [more]
0
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
0
Overall:
Weighted score of the above. [more]
0
Learn more about scoring.

The package version is not analyzed, because it does not support Dart 2. Until this is resolved, the package will receive a health and maintenance score of 0.

Issues and suggestions

Support Dart 2 in pubspec.yaml.

The SDK constraint in pubspec.yaml doesn't allow the Dart 2.0.0 release. For information about upgrading it to be Dart 2 compatible, please see https://www.dartlang.org/dart-2#migration.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.15.0 <2.0.0