jperkin / node-openzwave

node.js interface to libopenzwave
Other
110 stars 54 forks source link

feature request: support for binary and multi-level sensors #6

Closed mrose17 closed 10 years ago

mrose17 commented 10 years ago

at present, openwave.cc supports

COMMAND_CLASS_SWITCH_{BINARY,MULTILEVEL}

i would like to add

GENERIC_TYPE_SENSOR_BINARY / SPECIFIC_TYPE_ROUTING_SENSOR_BINARY

for

COMMAND_CLASS_BATTERY COMAND_CLASS_SENSOR_BINARY COMMAND_CLASS_SENSORMULTILEVEL

this will allow support for a range of sensors, viz. the aeotec multisensor, door and window sensors, and water detectors. i suspect that the battery level is important.

do you want me to try my hand at this? here are the devices i have that fit this profile:

Aeotec Multisensor http://products.z-wavealliance.org/products/710 http://aeotec.com/z-wave-sensor/47-multisensor-manual.html

Aeon Labs Z-Wave Door and Window Sensor http://aeotec.com/z-wave-door-window-sensor/644-door-window-sensor-instructions.html http://products.z-wavealliance.org/products/701

Everspring Flood Sensor / UtiliTech Wireless Water Leak Detector http://products.z-wavealliance.org/products/585 fortrezhttp://www.everspring.com/ST812.aspx

FortrezZ Wireless Water & Freeze Alarm http://www.fortrezz.com/index.php/products/water-sensors/itemlist/category/16-water-freeze-sensor-led http://products.z-wavealliance.org/products/317

thanks!

jperkin commented 10 years ago

Could you run a scan with saveconfig: true in the options, then send me a copy of the zwcfg*xml file that gets generated?

mrose17 commented 10 years ago

attached.

/mtr

On Oct 18, 2013, at 09:32 , Jonathan Perkin notifications@github.com wrote:

Could you run a scan with saveconfig: true in the options, then send me a copy of the zwcfg*xml file that gets generated?

— Reply to this email directly or view it on GitHub.

mrose17 commented 10 years ago

hmmm… no attachments, i guess. ok, appended…

<?xml version="1.0" encoding="utf-8" ?>

Defines the contents of Multilevel Sensor Report after Multilevel Sensor Get received. This is actually a double byte value. The LSB defines the total time the device needs to blink in seconds. The MSB defines the on/off interval of the blink in tenths of seconds. Enables automatic notifications to associated devices whenever there is a state change. Enable/disable Wattage threshold and percent. The minimum change in wattage for a report to be sent. Minimum change in percent of wattage to send a report. Set report types for groups 1, 2 and 3 to default. Reverts to 0 after set. Defines the type of report sent for reporting group 1. 2 is multisensor report. 4 is meter report for watts. 8 is meter report for kilowatts. Value 1 (msb) Reserved Value 2 Reserved Value 3 Reserved Value 4 (lsb) bits 7-4 reserved bit 3 MRC(KWH) bit 2 MRC(watt) bit 1 MSRC bit 0 reserved The MRC(KWH) flag signals that Report Group 1 send(1) or don't send(0) Meter Report Command(KWh) automatically. The MRC(Watt) flag signals that Report Group 1 send(1) or don't send(0) Meter Report Command(wattage) automatically. The MSRC flag signals that Report Group 1 send(1) or don't send(0) Multilevel Sensor Report Command(wattage) automatically. Defines the type of report sent for reporting group 2. 2 is multisensor report. 4 is meter report for watts. 8 is meter report for kilowatts. Value 1 (msb) Reserved Value 2 Reserved Value 3 Reserved Value 4 (lsb) bits 7-4 reserved bit 3 MRC(KWH) bit 2 MRC(watt) bit 1 MSRC bit 0 reserved The MRC(KWH) flag signals that Report Group 1 send(1) or don't send(0) Meter Report Command(KWh) automatically. The MRC(Watt) flag signals that Report Group 1 send(1) or don't send(0) Meter Report Command(wattage) automatically. The MSRC flag signals that Report Group 1 send(1) or don't send(0) Multilevel Sensor Report Command(wattage) automatically. Defines the type of report sent for reporting group 3. 2 is multisensor report. 4 is meter report for watts. 8 is meter report for kilowatts. Value 1 (msb) Reserved Value 2 Reserved Value 3 Reserved Value 4 (lsb) bits 7-4 reserved bit 3 MRC(KWH) bit 2 MRC(watt) bit 1 MSRC bit 0 reserved The MRC(KWH) flag signals that Report Group 1 send(1) or don't send(0) Meter Report Command(KWh) automatically. The MRC(Watt) flag signals that Report Group 1 send(1) or don't send(0) Meter Report Command(wattage) automatically. The MSRC flag signals that Report Group 1 send(1) or don't send(0) Multilevel Sensor Report Command(wattage) automatically. Set time interval for sending reports for groups 1, 2 and 3 to default. Defines the time interval when the defined report for group 1 is sent. Defines the time interval when the defined report for group 2 is sent. Defines the time interval when the defined report for group 3 is sent. Device tag. Reset to the default configuration. This dimmer will start dimming from its current level. Indicates how many levels the dimmer will change for each dimming step. This value indicates in 10 millisecond resolution, how often the dim level will change. For example, if you set this parameter to 1, then every 10ms the dim level will change. If you set it to 255, then every 2.55 seconds the dim level will change. Indicates how many levels the dimmer will change for each dimming step. This value indicates in 10 millisecond resolution, how often the dim level will change. For example, if you set this parameter to 1, then every 10ms the dim level will change. If you set it to 255, then every 2.55 seconds the dim level will change. Indicates how many levels the dimmer will change for each dimming step. This value indicates in 10 millisecond resolution, how often the dim level will change. For example, if you set this parameter to 1, then every 10ms the dim level will change. If you set it to 255, then every 2.55 seconds the dim level will change. Turn on the module when the attached load is connected Voltage to calculate wattage from amperage. US=120. EU,ANZ=240. Automatic report only when power is changed. Threshold change in wattage to induce a automatic report (whole HEM). Threshold change in wattage to induce a automatic report (Clamp 1). Threshold change in wattage to induce a automatic report (Clamp 2). Threshold change in wattage to induce a automatic report (Clamp 3). Percentage change in wattage to induce a automatic report (whole HEM). Percentage change in wattage to induce a automatic report (Clamp 1). Percentage change in wattage to induce a automatic report (Clamp 2). Percentage change in wattage to induce a automatic report (Clamp 3). Accumulate energy when Battery Powered. This byte denotes whether the product is using batteries (value = 0) or using USB power (value = 1). Reset to default parameters number 101-103. Any value other then 0 will initiate this reset. Which reports need to send in group1. Format is as follows: Byte 1 (msb): Reserved Byte 2: Reserved Byte 3: Bit 7: reserved Bit 6: reserved Bit 5: Auto Send Meter Report (for kWh) at the group time interval (Clamp 3) Bit 4: Auto Send Meter Report (for kWh) at the group time interval (Clamp 2) Bit 3: Auto Send Meter Report (for kWh) at the group time interval (Clamp 1) Bit 2: Auto Send Meter Report (for watts) at the group time interval (Clamp 3) Bit 1: Auto Send Meter Report (for watts) at the group time interval (Clamp 2) Bit 0: Auto Send Meter Report (for watts) at the group time interval (Clamp 1) Byte 4 (lsb): Bit 7: reserved Bit 6: reserved Bit 5: reserved Bit 4: reserved Bit 3: Auto Send Meter Report (for kWh) at the group time interval (whole HEM) Bit 2: Auto Send Meter Report (for watts) at the group time interval (whole HEM) Bit 1: Auto Send Multilevel Sensor Report (for watts) at the group time interval (whole HEM) Bit 0: Auto Send Battery Report at the group time interval (whole HEM) Which reports need to send in group2. Format is as follows: Byte 1 (msb): Reserved Byte 2: Reserved Byte 3: Bit 7: reserved Bit 6: reserved Bit 5: Auto Send Meter Report (for kWh) at the group time interval (Clamp 3) Bit 4: Auto Send Meter Report (for kWh) at the group time interval (Clamp 2) Bit 3: Auto Send Meter Report (for kWh) at the group time interval (Clamp 1) Bit 2: Auto Send Meter Report (for watts) at the group time interval (Clamp 3) Bit 1: Auto Send Meter Report (for watts) at the group time interval (Clamp 2) Bit 0: Auto Send Meter Report (for watts) at the group time interval (Clamp 1) Byte 4 (lsb): Bit 7: reserved Bit 6: reserved Bit 5: reserved Bit 4: reserved Bit 3: Auto Send Meter Report (for kWh) at the group time interval (whole HEM) Bit 2: Auto Send Meter Report (for watts) at the group time interval (whole HEM) Bit 1: Auto Send Multilevel Sensor Report (for watts) at the group time interval (whole HEM) Bit 0: Auto Send Battery Report at the group time interval (whole HEM) Which reports need to send in group3. Format is as follows: Byte 1 (msb): Reserved Byte 2: Reserved Byte 3: Bit 7: reserved Bit 6: reserved Bit 5: Auto Send Meter Report (for kWh) at the group time interval (Clamp 3) Bit 4: Auto Send Meter Report (for kWh) at the group time interval (Clamp 2) Bit 3: Auto Send Meter Report (for kWh) at the group time interval (Clamp 1) Bit 2: Auto Send Meter Report (for watts) at the group time interval (Clamp 3) Bit 1: Auto Send Meter Report (for watts) at the group time interval (Clamp 2) Bit 0: Auto Send Meter Report (for watts) at the group time interval (Clamp 1) Byte 4 (lsb): Bit 7: reserved Bit 6: reserved Bit 5: reserved Bit 4: reserved Bit 3: Auto Send Meter Report (for kWh) at the group time interval (whole HEM) Bit 2: Auto Send Meter Report (for watts) at the group time interval (whole HEM) Bit 1: Auto Send Multilevel Sensor Report (for watts) at the group time interval (whole HEM) Bit 0: Auto Send Battery Report at the group time interval (whole HEM) Reset to default parameters number 111-113. Any value other then 0 will initiate this reset. The interval of sending report group 1. The interval of sending report group 2. The interval of sending report group 3. Re-c
jperkin commented 10 years ago

Looks like it was truncated, feel free to mail it to me instead (my github username at joyent dot com). Thanks!

jperkin commented 10 years ago

Version 0.0.19 I just pushed should at least report on all command classes now, though I'm yet to add list support so there may be some values not shown. Let me know how it goes..

mrose17 commented 10 years ago

will do. i'm running the new code now.

/mtr

mrose17 commented 10 years ago

regrettably, i'm opening up a new issue (new set of symptoms... sorry!