Merge Master

This commit is contained in:
Justin Hammond 2018-10-23 12:54:37 +08:00
commit 1e92a74c07
107 changed files with 2089 additions and 497 deletions

View file

@ -235,6 +235,13 @@ Version 1.5
- Add Zipato PAN04 Micro Module Switch Double (Nechry)
- Add Aeotec ZW141 Nano Shutter (Nechry)
- Add Popp 700045 Universal Keypad (Nechry)
- Add Fibaro FGWPG111 Wall Plug (Nechry)
- Add Everspring SP815 Pet Immune Pir Motion Detector (Nechry)
- Add philio/Zipato pad02 Smart Dimmer E27 (Nechry)
- Add Remotec ZXT-600IN AC MASTER (Nechry)
- Add TKB TZ57 Two channel switch (Nechry)
- Add Qubino ZMNHYD1 Smart Plug 16A (Nechry)
- Clear Buffer when reading a new packet - Issue #1596 (Justin)
Dev Branch:
- Rename zwcfg_*.xml to zwcache_*.xml to reflect its not a config file, but a cache. (Justin)

View file

@ -7,18 +7,18 @@ https://products.z-wavealliance.org/products/2535/configs
<!-- Configuration -->
<CommandClass id="112">
<Value type="list" size="1" genre="config" instance="1" index="1" label="Volume" value="3">
<Help>Volume of the tones</Help>
<Help>Volume of the keypad tones and any voice prompts (default = 3, high)</Help>
<Item label="Silent" value="1" />
<Item label="Low" value="2" />
<Item label="High" value="3" />
</Value>
<Value type="list" size="1" genre="config" instance="1" index="2" label="Auto Relock" value="0">
<Help></Help>
<Help>Enable or disable the Auto relock feature (default = 255, enable)</Help>
<Item label="On" value="255" />
<Item label="Off" value="0" />
</Value>
<Value type="byte" genre="config" instance="1" index="3" label="Auto-re-lock Time" size="1" min="7" max="60" units="seconds" value="30">
<Help>seconds; after successful code entry and unit unlocks, it will automatically re-lock after specified time (30 = default value)</Help>
<Help>After successful local unlock, automatically relock after the specified time (default = 7 seconds)</Help>
</Value>
<Value type="list" size="1" genre="config" instance="1" index="4" label="Wrong Tag Limit" min="1" max="20" value="5">
<Help>
@ -47,7 +47,7 @@ https://products.z-wavealliance.org/products/2535/configs
<Item label="20" value="20" />
</Value>
<Value type="byte" genre="config" instance="1" index="7" label="Wrong tag timeout" size="1" min="1" max="250" units="seconds" value="30">
<Help>number of seconds unit will be inoperable after number of Wrong tag attempts is exceeded (30 = default)</Help>
<Help>Number of seconds unit will be inoperable after number of Wrong tag attempts is exceeded (30 = default)</Help>
</Value>
</CommandClass>
<CommandClass id="113">

View file

@ -3,25 +3,28 @@
<!-- Yale Keyfree Connected (YKFCON)
http://ozw.my-ho.st/Yale/Yale%20ZWave%20Developer%20Guide.pdf
https://products.z-wavealliance.org/products/2743/configs
-->
<!-- Yale Keyless Connected (YD-01-CON)
https://products.z-wavealliance.org/products/2576/configs
-->
<!-- Configuration -->
<CommandClass id="112">
<Value type="list" size="1" genre="config" instance="1" index="1" label="Volume" value="3">
<Help>Volume of the keypad tones and voice prompts</Help>
<Value type="list" size="1" genre="config" instance="1" index="1" label="Volume Level" value="3">
<Help>Volume of the keypad tones and any voice prompts (default = 3, high)</Help>
<Item label="Silent" value="1" />
<Item label="Low" value="2" />
<Item label="High" value="3" />
</Value>
<Value type="list" size="1" genre="config" instance="1" index="2" label="Auto Relock" value="0">
<Help></Help>
<Item label="On" value="255" />
<Item label="Off" value="0" />
<Help>Enable or disable the Auto relock feature (default = 255, enable)</Help>
<Item label="Enable" value="255" />
<Item label="Disable" value="0" />
</Value>
<Value type="byte" genre="config" instance="1" index="3" label="Auto-re-lock Time" size="1" min="7" max="60" units="seconds" value="30">
<Help>seconds; after successful code entry and unit unlocks, it will automatically re-lock after specified time (30 = default value)</Help>
<Value type="byte" genre="config" instance="1" index="3" label="Relock Time" size="1" min="7" max="60" units="seconds" value="7">
<Help>After successful local unlock, automatically relock after the specified time (default = 7 seconds)</Help>
</Value>
<Value type="byte" genre="config" instance="1" index="3" label="Auto-re-lock Time" size="1" min="10" max="90" units="seconds" value="10">
<Help>seconds; after successful remote unlock, it will automatically re-lock after specified time (10 = default value)</Help>
<Value type="byte" genre="config" instance="1" index="6" label="Remote Relock Time" size="1" min="10" max="90" units="seconds" value="10">
<Help>After successful remote unlock, automatically relock after the specified time (default = 10 seconds)</Help>
</Value>
</CommandClass>
<CommandClass id="113">
@ -36,7 +39,7 @@ https://products.z-wavealliance.org/products/2743/configs
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" max_associations="5" label="Lifeline"/>
<Group index="1" max_associations="5" label="Lifeline"/>
</Associations>
</CommandClass>
</Product>

View file

@ -219,13 +219,13 @@
<DeviceType key="0x0d1a" label="Seismic Magnitude Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d1b" label="Ultraviolet Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d1c" label="Electrical Resistivity Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0b1d" label="Electrical Conductivity Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0b1e" label="Loudness Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0b1f" label="Moisture Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0b20" label="Frequency Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0b21" label="Time Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0b22" label="Target Temperature Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0bff" label="MultiDevice Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d1d" label="Electrical Conductivity Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d1e" label="Loudness Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d1f" label="Moisture Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d20" label="Frequency Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d21" label="Time Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0d22" label="Target Temperature Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0dff" label="MultiDevice Sensor" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x30,0x31"/>
<DeviceType key="0x0e00" label="Set Top Box" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x56,0x60,0x8e,0x84,0x22"/>
<DeviceType key="0x0f00" label="Siren" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86"/>
<DeviceType key="0x1000" label="Sub Energy Meter" command_classes="0x5a,0x5e,0x59,0x72,0x73,0x85,0x86,0x56,0x32"/>

0
config/domux/DX1CA-Z.xml Executable file → Normal file
View file

0
config/domux/DX1CG-Z.xml Executable file → Normal file
View file

0
config/domux/DX1DS-Z.xml Executable file → Normal file
View file

0
config/domux/DX1HT-Z.xml Executable file → Normal file
View file

0
config/domux/DX1MS-Z.xml Executable file → Normal file
View file

0
config/domux/DX1SA-Z.xml Executable file → Normal file
View file

0
config/domux/DX1WL-Z.xml Executable file → Normal file
View file

0
config/domux/DX2SK-Z.xml Executable file → Normal file
View file

View file

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value type="short" index="1" genre="config" label="Temperature and Humidity Auto Report period setting" units="Minutes" min="0" max="1440" value="30">
<Help>
</Help>
</Value>
<Value type="short" index="2" genre="config" label="Re-trigger Interval Setting" units="Seconds" min="10" max="3600" value="180">
<Help>
The parameter adjusts the sleep period after the detector has been triggered.
No response will be made during this interval if a movement is presented.
Longer re-trigger interval will result in longer battery life.
</Help>
</Value>
<Value type="short" index="3" genre="config" label="Trigger Off Interval Setting" units="Seconds" min="10" max="3600" value="15">
<Help>
This controls how long the connected lighting will stay on after the motion is detected.
This is useful for Group 2 associations where the detector is connected directly to another device such as smartplugs.
</Help>
</Value>
</CommandClass>
<!-- Basic set as report -->
<CommandClass id="32" setasreport="true"/>
<!-- COMMAND_CLASS_ASSOCIATION. Groups -->
<CommandClass id="133">
<Associations num_groups="2">
<Group index="1" max_associations="1" label="Lifeline" />
<Group index="2" max_associations="4" label="Pir Control" />
</Associations>
</CommandClass>
</Product>

216
config/fibaro/fgwpg111.xml Normal file
View file

@ -0,0 +1,216 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!--
Fibaro FGWPG111 Wall Plug
https://products.z-wavealliance.org/products/2899
https://products.z-wavealliance.org/products/2854
-->
<!-- COMMAND_CLASS_BASIC supported -->
<CommandClass id="32" action="add" request_flags="5"/>
<!-- Configuration -->
<CommandClass id="112">
<Value type="list" genre="config" instance="1" index="2" label="Remember device status after a power failure" value="1" size="1">
<Help>This parameter determines how the Wall Plug will react in the event of power supply failure (e.g. taking out from the electrical outlet).
After the power supply is back on, the Wall Plug can be restored to previous state or remain switched off.
This parameter is ignored in Always On mode - the device automatically turns ON after plugging it into the socket.
Default setting: 1
</Help>
<Item label="Device remains switched off" value="0"/>
<Item label="Device restores the state from before the power failure" value="1"/>
</Value>
<Value type="short" genre="config" instance="1" index="3" label="Overload safety switch" value="0" min="0" max="30000" size="2">
<Help>This function allows to turning off the controlled device in case of exceeding the defined power.
Controlled device can be turned back on via button or sending a control frame.
Available settings: 10 - 30000 (1,0W - 3000,0W step 0,1W).
Default setting: 0 (function inactive)
</Help>
</Value>
<Value type="byte" genre="config" instance="1" index="11" label="Power reporting" value="15" min="0" max="100" size="1">
<Help>This parameter determines the minimum percentage change inactive power consumption (in relation to the previously reported) that will result in sending new power report.
Available settings: 1-100. 0 - power reports inactive.
Default Setting: 15 (%)
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="12" label="Energy reporting threshold" value="10" min="0" max="500" size="2">
<Help>This parameter determines the minimum change in energy consumption (in relation to the previously reported), that will result in sending a new report.
Available settings: 1-500 (0,01kWh - 5kWh). 0 - energy reports inactive.
Default Setting: 10 (0,1 kWh)
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="13" label="Periodic power reporting" min="0" max="32400" value="3600" size="2">
<Help>This parameter defines time period between reports sent when changes in power load have not been record if changes are smaller than defined in parameter 11.
By default reports are sent every hour.
Available settings: 0 - 32400 (s). 0 - periodic reports inactive.
Default setting: 3600
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="14" label="Periodic energy reporting" min="0" max="32400" value="3600" size="2">
<Help>This parameter defines time period between reports sent when changes in power load have not been recorded or if changes are smaller than in paramater 11.
By default reports are sent every hour.
Available settings: 0 - 32400 (s). 0 - periodic reports inactive.
Default setting: 3600
</Help>
</Value>
<Value type="list" genre="config" instance="1" index="15" label="Measuring energy consumed by the Wall Plug itself" value="0" size="1">
<Help>This parameter determines whether power metering should include the amount of power consumed by the Wall Plug itself.
Results are being added to the value of power consumed by controlled device.
Default setting: 0 Inactive
</Help>
<Item label="Inactive" value="0"/>
<Item label="Active" value="1"/>
</Value>
<Value type="short" genre="config" instance="1" index="21" label="UP value association group 3" value="500" min="100" max="30000" size="2">
<Help>Upper power threshold, used in parameter 23. Up value cannot be lower than a value specified in parameter 22.
Available settings: 100 - 30000 (10,0W - 30000,0W).
Default setting: 500 (50W)
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="22" label="DOWN value association group 3" value="300" min="0" max="29900" size="2">
<Help>Lower power threshold, used in parameter 23.
DOWN value cannot be higher than a value specified in parameter 21.
Available settings: 0 - 29900 (0,0W - 2990,0W step 0,1W).
Default setting: 300 (30W)
</Help>
</Value>
<Value type="list" genre="config" instance="1" index="23" label="Controlling association group 3" value="3" size="1">
<Help>This parameter defines the way that 3rd association group devices are controlled.
Depends on the actual measured power(according to parameters 21 and 22 settings).
Default setting: 3
</Help>
<Item label="Send frame (with value set in parameter 26) only if power exceeded value of parameter 21 turn the associated devices ON, once the power drops below DOWN value (parameter 21)"
value="1"/>
<Item label="Send frame (with value set in parameter 27) only if power dropped below value of paramater 22"
value="2"/>
<Item label="Send frame in both cases" value="3"/>
</Value>
<Value type="short" genre="config" instance="1" index="24" label="Switch ON value - association group 2" value="255" min="0" max="255" size="2">
<Help>The value of BASIC SET command frame sent to the devices associated in 2nd group On/Off (Button) when turning the device ON using the button.
Available settings: 0-99 or 255.
Default setting: 255
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="25" label="Switch OFF value - association group 2" value="255" min="0" max="255" size="2">
<Help>The value of BASIC SET command frame sent to the devices associated in 2nd group On/Off (Button) when turning the device OFF using the button.
Available settings: 0-99 or 255.
Default setting: 0
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="26" label="THRESHOLD UP value - association group 3" value="255" min="0" max="255" size="2">
<Help>The value of BASIC SET command frame sent to the devices associated in 3rd group On/Off (Power) if power exceeded value of parameter 21.
Available settings: 0-99 or 255.
Default setting: 255
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="27" label="THRESHOLD DOWN value - association group 3" value="255" min="0" max="255" size="2">
<Help>The value of BASIC SET command frame sent to the devices associated in 3rd group On/Off (Power) if power dropped below value of parameter 22.
Available settings: 0-99 or 255.
Default setting: 0
</Help>
</Value>
<Value type="list" genre="config" instance="1" index="30" label="Active Alarms" value="63" min="1" max="63" size="1">
<Help>Define Z-Wave network alarms to which the Wall Plug will respond.</Help>
<Item label="General alarm" value="1"/>
<Item label="Smoke alarm" value="2"/>
<Item label="CO alarm" value="4"/>
<Item label="CO2 alarm" value="8"/>
<Item label="High temperature alarm" value="16"/>
<Item label="Flood alarm" value="32"/>
<Item label="All alarms" value="63"/>
</Value>
<Value type="byte" genre="config" instance="1" index="31" label="Response to alarm frames" value="0" min="0" max="50" size="1">
<Help>This parameter defines how the Wall Plug will respond to alarms (device's status change).
In case of values 1 or 2 the Wall Plug is operating normally and LED frame signals an alarm through time defined in parameter 32 or until the alarm is cancelled.
In case of values 5 to 50 the Wall Plug does not report status change, power changes, ignores BASIC SET command frames.
After time defined in parameter 32 or after the alarm cancellation, connected device is set to the previous state.
0 - no reaction 1-turn connected device on 2-turn connected device off 5-50(0,5-50,0s step 0,1s)-cyclically change device state with set period.
Default setting:0-no reaction
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="32" label="Alarm state duration" value="600" min="1" max="32400" size="2">
<Help>This parameter specifies the duration of alarm state.
If a device sending an alarm frame through the Z-Wave network sets alarm duration as well, this settings are ignored.
Available settings 1-32400(s)
Default setting: 600
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="40" label="Power load for violet colour" value="30000" min="1000" max="30000" size="2">
<Help>This parameter determines maximum active power value, which when exceeded, causes the LED frame to flash violet. Function is active only when parameter 41 is set to 1 or 2.
Available settings: 1000 - 30000 (100,0W - 3000,0W, step 0,1W).
Default setting: 30000 (3000W)
</Help>
</Value>
<Value type="list" genre="config" instance="1" index="41" label="LED frame colour when controlled device is on" value="1" size="1">
<Help>When set to 1 or 2, LED frame colour will change depending on active power and parameter 40.
Other colours are set permanently and do not depend on power consumption
</Help>
<Item label="Illumination turned off completely" value="0"/>
<Item label="Colour changes smoothly depending on active power" value="1"/>
<Item label="Colour changes in steps depending on active power" value="2"/>
<Item label="White illumination" value="3"/>
<Item label="Red illumination" value="4"/>
<Item label="Green illumination" value="5"/>
<Item label="Blue illumination" value="6"/>
<Item label="Yellow illumination" value="7"/>
<Item label="Cyan illumination" value="8"/>
<Item label="Magenta illumination" value="9"/>
</Value>
<Value type="list" genre="config" instance="1" index="42" label="LED frame colour when controlled device is off" value="0" size="1">
<Help>This parameter defines the illumination colour after turning off.</Help>
<Item label="illumination turned off completely" value="0"/>
<Item label="LED frame is illuminated with a colour corresponding to the last measured power, before the controlled device was turned off" value="1"/>
<Item label="White illumination" value="3"/>
<Item label="Red illumination" value="4"/>
<Item label="Green illumination" value="5"/>
<Item label="Blue illumination" value="6"/>
<Item label="Yellow illumination" value="7"/>
<Item label="Cyan illumination" value="8"/>
<Item label="Magenta illumination" value="9"/>
</Value>
<Value type="list" genre="config" instance="1" index="43" label="LED frame colour at the Z-Wave network alarm detection" value="2" size="1">
<Help>This parameter defines the illumination colour in case of Z-Wave alarm.</Help>
<Item label="Illumination turned off completely" value="0"/>
<Item label="No change in colour. LED frame colour is determined by settings of parameters 41 or 42" value="1"/>
<Item label="LED frame flashes red / blue / white" value="2"/>
<Item label="White illumination" value="3"/>
<Item label="Red illumination" value="4"/>
<Item label="Green illumination" value="5"/>
<Item label="Blue illumination" value="6"/>
<Item label="Yellow illumination" value="7"/>
<Item label="Cyan illumination" value="8"/>
<Item label="Magenta illumination" value="9"/>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="3">
<Group index="1" max_associations="1" label="Lifeline"/>
<Group index="2" max_associations="5" label="BasicSet forward relay status on local Button event"/>
<Group index="3" max_associations="5" label="BasicSet base on Plug power"/>
</Associations>
</CommandClass>
</Product>

View file

@ -0,0 +1,62 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!--
There are multiple sources of information for this product:
[ZWave Alliance]: https://products.z-wavealliance.org/products/1433
[EzZWave]: https://www.ezzwave.com/sites/jasco/uploads/documents/PDFs/part2/28167_Product_Page.pdf
The sources above contradict each other on multiple points.
-->
<CommandClass id="112">
<Value type="list" index="3" genre="config" label="LED Light" min="0" max="2" value="1" size="1">
<Help>Sets when the LED on the switch is lit.</Help>
<Item label="LED on when light off" value="0" />
<Item label="LED on when light on" value="1" />
<Item label="LED always off" value="2" />
</Value>
<!--
In [EzZWave], the configuration parameters from index 7 to 12 have a size of 1
for the odd parameters and 2 for the even ones. (This translates to `byte` and
`short` types.)
[ZWave Alliance] shows a size of 1 for these parameters (i.e. all `byte`).
[EzZWave] is correct. When I (@lddubeau) tested changing parameters with all
types set to `byte`, I could not set the even-numbered parameters. After
changing the even-numbered parameters to type `short`, I could set them.
Neither source of documentation does a good job at describing the role of the
dim step/rate parameters. I (@lddubeau) took a look at the other GE devices
defined in this database and adopted the descriptions and explanations that fit
best with the observed behavior.
-->
<Value type="byte" index="7" genre="config" label="Z-Wave Command Dim Step" units="" min="1" max="99" value="1">
<Help>Indicates how many levels the dimmer will change for each dimming step.</Help>
</Value>
<Value type="short" index="8" genre="config" label="Z-Wave Command Dim Rate" units="x 10 milliseconds" min="1" max="255" value="3">
<Help>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.</Help>
</Value>
<Value type="byte" index="9" genre="config" label="Local Control Dim Step" units="" min="1" max="99" value="1">
<Help>Indicates how many levels the dimmer will change for each dimming step.</Help>
</Value>
<Value type="short" index="10" genre="config" label="Local Control Dim Rate" units="x 10 milliseconds" min="1" max="255" value="3">
<Help>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.</Help>
</Value>
<Value type="byte" index="11" genre="config" label="ALL ON/ALL OFF Dim Step" units="" min="1" max="99" value="1">
<Help>Indicates how many levels the dimmer will change for each dimming step.</Help>
</Value>
<Value type="short" index="12" genre="config" label="ALL ON/ALL OFF Dim Rate" units="x 10 milliseconds" min="1" max="255" value="3">
<Help>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.</Help>
</Value>
</CommandClass>
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" max_associations="1" label="Lifeline" />
</Associations>
</CommandClass>
</Product>

0
config/heiman/HS1CA-Z.xml Executable file → Normal file
View file

0
config/heiman/HS1CG-Z.xml Executable file → Normal file
View file

0
config/heiman/HS1DS-Z.xml Executable file → Normal file
View file

0
config/heiman/HS1HT-Z.xml Executable file → Normal file
View file

0
config/heiman/HS1MS-Z.xml Executable file → Normal file
View file

0
config/heiman/HS1SA-Z.xml Executable file → Normal file
View file

0
config/heiman/HS1WL-Z.xml Executable file → Normal file
View file

0
config/heiman/HS2SK-Z.xml Executable file → Normal file
View file

View file

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" type="short" instance="1" index="1" value="15" label="PIR Trigger Off Period" units="seconds" size="2" min="8" max="720">
<Help>Period to send Trigger Off command after PIR is triggered.</Help>
</Value>
<Value genre="config" type="short" instance="1" index="2" value="50" label="Lux sensor threshold" units="" size="2" min="0" max="255">
<Help>
When the lux level falls below this threshold and the PIR gets triggered, the unit emits a Basic Set Command (Value=0xFF) and turns on its floodlight. This overwrites the Lux level set by the Lux knob.
Setting = 0: Never turn ON light when PIR triggered
Setting = 30~200: Turn ON light when lux is below configured threshold.
Setting = 255: Always turn ON light when PIR triggered
If the level is set to 0, the unit will not turn on its floodlight. The sensor will only send a notification report to the controller.
</Help>
</Value>
<Value genre="config" type="short" instance="1" index="3" value="10" label="Auto Report luminance interval" units="minutes" size="2" min="0" max="1440">
<Help>sets the interval of periodic lux level report to the controller</Help>
</Value>
<Value genre="config" type="list" instance="1" index="4" value="1" label="Basic Report" units="" size="1" min="0" max="1">
<Help></Help>
<Item value="0" label="Disable Basic Report"/>
<Item value="1" label="Enable Basic Report"/>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="2">
<Group index="1" label="Lifeline" max_associations="1" />
<Group index="2" label="PIR Control" max_associations="4"/>
</Associations>
</CommandClass>
</Product>

View file

@ -0,0 +1,77 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!--
HomeSeer HS-LS100+ Leak Sensor
https://products.z-wavealliance.org/products/2735
Manual: https://products.z-wavealliance.org/ProductManual/File?folder=&filename=Manuals/2735/User%20Manual%20revised%201211.pdf
Config capabilities: https://products.z-wavealliance.org/products/2735/configs
-->
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value type="list" index="14" genre="config" label="Basic set command" min="0" max="1" size="1" value="0">
<Help>Enable / disable the basic set command send to group 2</Help>
<Item label="Disable" value="0"/>
<Item label="Enable" value="1"/>
</Value>
<Value type="list" index="15" genre="config" label="Value for basic set command" min="0" max="1" size="1" value="0">
<Help>
Define BASIC SET VALUE to nodes associated with group 2 when flooding alarm is triggered and is canceled.
</Help>
<Item label="255 alarm is triggered, 0 alarm is canceled" value="0"/>
<Item label="0 alarm is triggered, 255 alarm is canceled" value="1"/>
</Value>
<Value type="byte" index="17" genre="config" label="Leak report interval" units="minutes" min="0" max="255" size="1" value="5">
<Help>Leak report interval, minutes. O to disable.</Help>
</Value>
<Value type="list" index="18" genre="config" label="Shock sensor" min="0" max="1" size="1" value="0">
<Help>
When the value is Disable, the product will not sends a vibration alarm after moving or shaking.
When the value is Enable, the product will sends a vibration alarm after moving or shaking.
</Help>
<Item label="Disable" value="0"/>
<Item label="Enable" value="1"/>
</Value>
<Value type="byte" index="19" genre="config" label="Temperature report interval" units="minutes" min="0" max="255" size="1" value="0">
<Help>Temperature report interval, minutes. O to disable.</Help>
</Value>
<Value type="short" index="20" genre="config" label="High temperature trigger value" units="" min="-670" max="2570" size="2" value="1040">
<Help>
Set the high temperature alarm trigger value.
Available: -670 to 2570 (-67.0 to 257.0 F)
Default: 1040 (104.0 F)
</Help>
</Value>
<Value type="short" index="22" genre="config" label="Low temperature trigger value" units="" min="-670" max="2570" size="2" value="320">
<Help>
Set the low temperature alarm trigger value.
Available: -670 to 2570 (-67.0 to 257.0 F)
Default: 320 (32.0 F)
</Help>
</Value>
<Value type="list" index="24" genre="config" label="Blinking LED when alarm triggers" min="0" max="1" size="1" value="1">
<Help>
When the value is Disable, the product will not alarm when being triggered.
When the value is Enable, the product will alarm when being triggered.
</Help>
<Item label="Disable" value="0"/>
<Item label="Enable" value="1"/>
</Value>
<Value type="list" index="32" genre="config" label="Low battery threshold" units="%" min="10" max="50" size="1" value="20">
<Help>Low battery reporting threshold, %.</Help>
<Item label="10" value="10"/>
<Item label="20" value="20"/>
<Item label="30" value="30"/>
<Item label="40" value="40"/>
<Item label="50" value="50"/>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="2">
<Group index="1" max_associations="5" label="Lifeline"/>
<Group index="2" max_associations="5" label="Basic Set"/>
</Associations>
</CommandClass>
</Product>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Horstmann SSR303 thermostat receiver -->
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!-- Associate V2:
Product supports one group (Lifeline) and have a maximum of 4 node. No current active group.
-->
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" max_associations="4" label="Lifeline"/>
</Associations>
</CommandClass>
<!-- Thermostat mode (v1):
Only 'Idle Mode' and 'Heat Mode' are supported within this command class, which can either set or read.
The SSR 303 has a failsafe mode where by the relay is turned off if another Thermostat Mode SET command has not been received within 60 minutes.
-->
<CommandClass id="64">
<SupportedModes>
<Mode index="0" label="Idle Mode"/>
<Mode index="1" label="Heat Mode"/>
</SupportedModes>
</CommandClass>
<!-- Switch Binary (v1):
Supports SET and GET to control the relay.
Opposed to the Thermostat command class there is no failsafe mode. If Binary Switch SET command is received than previously active failsafe mode closed.
-->
<!-- Basic (V1):
The Basic command class has been mapped to Switch Binary command class as follows:
Basic Set : Mapped to Switch Binary Set.
Basic Get : Mapped to Switch Binary Get.
Basic Report : Mapped to Switch Binary Report
Same as Switch Binary command class there is no failsafe mode. If Basic SET command is received than previously active failsafe mode closed.
-->
<!--
Power Level (V1):
Power Level Command Class defines RF transmit power controlling commands useful when installing or testing a network.
-->
<CommandClass id="96" version="4" mapping="endpoints" />
</Product>

View file

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!-- Configuration Parameters -->
<CommandClass id="112">
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="2">
<Group index="1" label="Lifeline" max_associations="5" />
<Group index="2" label="Basic_Set" max_associations="5" />
</Associations>
</CommandClass>
</Product>

10
config/inovelli/nzw30.xml Executable file → Normal file
View file

@ -20,9 +20,17 @@
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Associations num_groups="2">
<Group index="1" label="Lifeline" max_associations="5" />
<Group index="2" label="Basic_Set" max_associations="5" />
</Associations>
</CommandClass>
<!-- Central Scene Reports -->
<CommandClass id="91" name="COMMAND_CLASS_CENTRAL_SCENE" version="1" request_flags="4" scenecount="0">
<Instance index="1" />
<Value type="int" genre="system" instance="1" index="0" label="Scene Count" units="" read_only="true" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="2" />
<Value type="int" genre="user" instance="1" index="1" label="Top Button Scene" units="" read_only="false" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="0" />
<Value type="int" genre="user" instance="1" index="2" label="Bottom Button Scene" units="" read_only="false" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="0" />
</CommandClass>
</Product>

View file

@ -1,19 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Inovelli Dimmer NZW31 -->
<Product xmlns='https://github.com/OpenZWave/open-zwave' Revision="1">
<Product xmlns='https://github.com/OpenZWave/open-zwave' Revision="2">
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" index="1" label="Dimming/Brightening Step Level" min="1" max="99" units="%" value="1" size="1" type="byte">
<Help>Each step of the dimming process will increase or decrease the brightness by this percentage. Increasing this will make the transition time quicker. Range 1-99%</Help>
<Value genre="config" index="1" label="Dimming/Brightening Step Level" min="0" max="99" units="%" value="3" size="1" type="byte">
<Help>Each step of the dimming process will increase or decrease the brightness by this percentage. Increasing this will make the transition time slower. 0 is instant.</Help>
</Value>
<Value genre="config" index="2" label="Minimum Dimming Level" min="1" max="99" units="%" value="1" size="1" type="byte">
<Help>This is the minimum value to which the switch will dim. Useful for CFL or LED lights that otherwise won't come on or come on but flicker/buzz. Range 1-99%</Help>
<Help>This is the minimum value to which the switch will dim. Useful for CFL or LED lights that otherwise won't come on or come on but flicker/buzz.</Help>
</Value>
<Value genre="config" index="3" value="0" label="LED Indicator Control" units="" size="1" min="0" max="255" type="list">
<Help>Choose if you want the LED indicator to turn on when switch is on or off or disable completely.</Help>
<Item value="0" label="LED on when switch is off"/>
<Item value="1" label="LED on when switch is on"/>
<Item value="2" label="LED is disabled"/>
<Item value="3" label="LED is always on"/>
</Value>
<Value genre="config" index="4" value="0" label="Orientation" units="" size="1" min="0" max="255" type="list">
<Help>Controls the on/off orientation of the rocker switch</Help>
@ -22,6 +23,30 @@
</Value>
<Value genre="config" index="5" value="0" label="Automatically turn switch off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn the switch off after this many seconds. 0 is disabled, or up to 32767 seconds</Help>
</Value>
<Value genre="config" index="6" value="0" label="Association Group 3 Behavior" units="" size="1" min="0" max="255" type="list">
<Help>Change how devices respond when associated in group 3</Help>
<Item value="0" label="Dim up/down"/>
<Item value="1" label="Keep in sync"/>
</Value>
<Value genre="config" index="7" value="1" label="Association Group 3 Configuration" units="" size="1" min="0" max="255" type="list">
<Help>Send association group 3 commands on these types of actions</Help>
<Item value="0" label="none"/>
<Item value="1" label="local"/>
<Item value="2" label="3way"/>
<Item value="3" label="3way &amp; local"/>
<Item value="4" label="z-wave hub"/>
<Item value="5" label="z-wave hub &amp; local"/>
<Item value="6" label="z-wave hub &amp; 3-way"/>
<Item value="7" label="z-wave hub &amp; local &amp; 3way"/>
<Item value="8" label="timer"/>
<Item value="9" label="timer &amp; local"/>
<Item value="10" label="timer &amp; 3-way"/>
<Item value="11" label="timer &amp; 3-way &amp; local"/>
<Item value="12" label="timer &amp; z-wave hub"/>
<Item value="13" label="timer &amp; z-wave hub &amp; local"/>
<Item value="14" label="timer &amp; z-wave hub &amp; 3-way"/>
<Item value="15" label="all"/>
</Value>
<Value genre="config" index="8" value="0" label="Default value when turned on at switch" min="0" max="99" size="1" type="byte">
<Help>Default brightness when switch is turned on locally. 0 is previous. Firmware 1.02+"</Help>
@ -33,14 +58,18 @@
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Associations num_groups="3">
<Group index="1" label="Lifeline" max_associations="5" />
<Group index="2" label="Basic_Set" max_associations="5" />
<Group index="3" label="Switch_Multilevel_Set" max_associations="5" />
</Associations>
</CommandClass>
<!-- Central Scene Reports -->
<CommandClass id="91" name="COMMAND_CLASS_CENTRAL_SCENE" version="1" request_flags="4" scenecount="0">
<Instance index="1" />
<Value type="int" genre="system" instance="1" index="0" label="Scene Count" units="" read_only="true" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="2" />
<Value type="int" genre="user" instance="1" index="1" label="Bottom Button Scene" units="" read_only="false" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="1" />
<Value type="int" genre="user" instance="1" index="2" label="Top Button Scene" units="" read_only="false" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="1" />
<Instance index="1" />
<Value type="int" genre="system" instance="1" index="0" label="Scene Count" units="" read_only="true" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="2" />
<Value type="int" genre="user" instance="1" index="1" label="Top Button Scene" units="" read_only="false" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="0" />
<Value type="int" genre="user" instance="1" index="2" label="Bottom Button Scene" units="" read_only="false" write_only="false" verify_changes="false" min="-2147483648" max="2147483647" value="0" />
</CommandClass>
</Product>

23
config/inovelli/nzw36.xml Normal file
View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" index="1" value="0" label="LED Indicator Control" units="" size="1" min="0" max="255" type="list">
<Help>Choose if you want the LED indicator to turn on when switch is on or off or disable completely.</Help>
<Item value="0" label="LED on when switch is off"/>
<Item value="1" label="LED on when switch is on"/>
<Item value="2" label="LED is disabled"/>
</Value>
<Value genre="config" index="2" value="0" label="Automatically turn switch off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn the switch off after this many seconds. 0 is disabled</Help>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" label="Lifeline" max_associations="5" />
</Associations>
</CommandClass>
</Product>

26
config/inovelli/nzw37.xml Normal file
View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" index="1" value="0" label="LED Indicator Control" units="" size="1" min="0" max="255" type="list">
<Help>Choose if you want the LED indicator to turn on when switch is on or off or disable completely.</Help>
<Item value="0" label="LED on when switch is off"/>
<Item value="1" label="LED on when switch is on"/>
<Item value="2" label="LED is disabled"/>
</Value>
<Value genre="config" index="2" value="0" label="Automatically turn channel 1 off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn channel 1 off after this many seconds. 0 is disabled</Help>
</Value>
<Value genre="config" index="3" value="0" label="Automatically turn channel 2 off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn channel 2 off after this many seconds. 0 is disabled</Help>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" label="Lifeline" max_associations="5" />
</Associations>
</CommandClass>
</Product>

23
config/inovelli/nzw39.xml Normal file
View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" index="1" value="0" label="LED Indicator Control" units="" size="1" min="0" max="255" type="list">
<Help>Choose if you want the LED indicator to turn on when switch is on or off or disable completely.</Help>
<Item value="0" label="LED on when switch is off"/>
<Item value="1" label="LED on when switch is on"/>
<Item value="2" label="LED is disabled"/>
</Value>
<Value genre="config" index="2" value="0" label="Automatically turn switch off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn the switch off after this many seconds. 0 is disabled</Help>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" label="Lifeline" max_associations="5" />
</Associations>
</CommandClass>
</Product>

24
config/inovelli/nzw96.xml Normal file
View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" index="1" value="0" label="LED Indicator Control" units="" size="1" min="0" max="255" type="list">
<Help>Choose if you want the LED indicator to turn on when switch is on or off or disable completely.</Help>
<Item value="0" label="LED on when switch is off"/>
<Item value="1" label="LED on when switch is on"/>
<Item value="2" label="LED is disabled"/>
</Value>
<Value genre="config" index="2" value="0" label="Automatically turn switch off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn the switch off after this many seconds. 0 is disabled</Help>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="2">
<Group index="1" label="Lifeline" max_associations="5" />
<Group index="2" label="Basic_Set" max_associations="5" />
</Associations>
</CommandClass>
</Product>

11
config/inovelli/nzw97.xml Executable file → Normal file
View file

@ -2,18 +2,25 @@
<Product xmlns='https://github.com/OpenZWave/open-zwave' Revision="1">
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" index="3" value="0" label="LED Indicator Control" units="" size="1" min="0" max="255" type="list">
<Value genre="config" index="1" value="0" label="LED Indicator Control" units="" size="1" min="0" max="255" type="list">
<Help>Choose if you want the LED indicator to turn on when switch is on or off or disable completely.</Help>
<Item value="0" label="LED on when switch is off"/>
<Item value="1" label="LED on when switch is on"/>
<Item value="2" label="LED is disabled"/>
</Value>
<Value genre="config" index="2" value="0" label="Automatically turn channel 1 off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn channel 1 off after this many seconds. 0 is disabled</Help>
</Value>
<Value genre="config" index="3" value="0" label="Automatically turn channel 2 off after interval" units="seconds" size="2" min="0" max="32767" type="short">
<Help>Automatically turn channel 2 off after this many seconds. 0 is disabled</Help>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Associations num_groups="2">
<Group index="1" label="Lifeline" max_associations="5" />
<Group index="2" label="Basic_Set" max_associations="5" />
</Associations>
</CommandClass>

5
config/leviton/vre06.xml Normal file
View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!-- COMMAND_CLASS_VERSION CommandClassGet not supported -->
<CommandClass id="134" classgetsupported="false" />
</Product>

0
config/linear/WA105DBZ-1.xml Executable file → Normal file
View file

View file

@ -75,6 +75,7 @@
<!-- AU-market products start with type prefix "02" -->
<!-- JP-market products start with type prefix "0A" -->
<!-- CN-market products start with type prefix "1D" -->
<!-- RU-market products start with type prefix "1A" -->
<Product type="0004" id="0038" name="ZW056 Doorbell Gen5" config="aeotec/zw056.xml" />
<Product type="0104" id="0038" name="ZW056 Doorbell Gen5" config="aeotec/zw056.xml" />
<Product type="0204" id="0038" name="ZW056 Doorbell Gen5" config="aeotec/zw056.xml" />
@ -129,6 +130,7 @@
<Product type="0002" id="0064" name="ZW100 MultiSensor 6" config="aeotec/zw100.xml" />
<Product type="0102" id="0064" name="ZW100 MultiSensor 6" config="aeotec/zw100.xml" />
<Product type="0202" id="0064" name="ZW100 MultiSensor 6" config="aeotec/zw100.xml" />
<Product type="1A02" id="0064" name="ZW100 MultiSensor 6" config="aeotec/zw100.xml" />
<Product type="0003" id="006f" name="ZW111 Nano Dimmer" config="aeotec/zw111.xml"/>
<Product type="0103" id="006f" name="ZW111 Nano Dimmer" config="aeotec/zw111.xml"/>
<Product type="0203" id="006f" name="ZW111 Nano Dimmer" config="aeotec/zw111.xml"/>
@ -215,7 +217,9 @@
<Product type="0007" id="0000" name="Yale Keyless Connected Smart Lock (YSL)" config="assa_abloy/KeyfreeConnected.xml"/>
<Product type="1bef" id="9230" name="Yale Keyless Connected Smart Lock (YSL)" config="assa_abloy/KeyfreeConnected.xml"/>
<Product type="6600" id="0002" name="Yale Conexis L1 (SD-L1000-CH)" config="assa_abloy/ConexisL1.xml"/>
<Product type="0007" id="0001" name="Keyless Connected (YD-01-CON)" config="assa_abloy/KeyfreeConnected-plus.xml"/>
<Product type="0006" id="0001" name="Yale Keyfree Connected Smart Lock (YKFCON)" config="assa_abloy/KeyfreeConnected-plus.xml"/>
<Product type="0600" id="0000" name="Yale Keyfree Connected Smart Lock (YKFCON)" config="assa_abloy/KeyfreeConnected-plus.xml"/>
<Product type="8001" id="0b00" name="Yale nexTouch Wireless Push Button (NTB610)" config="assa_abloy/nexTouch.xml"/>
<Product type="8003" id="0b00" name="Yale nexTouch Wireless Push Button (NTB620)" config="assa_abloy/nexTouch.xml"/>
</Manufacturer>
@ -416,6 +420,7 @@
<Manufacturer id="0060" name="Everspring">
<Product type="0001" id="0001" name="HSP02 Motion Detector" config="everspring/hsp02.xml"/>
<Product type="0001" id="0002" name="SP814 Motion Detector" config="everspring/sp814.xml"/>
<Product type="0001" id="0004" name="SP815 Pet Immune Pir Motion Detector" config="everspring/sp815.xml"/>
<Product type="0001" id="0005" name="SP816 Outdoor Motion Detector" config="everspring/sp816.xml"/>
<Product type="0002" id="0001" name="SM103 Door/Window Sensor" config="everspring/sm103.xml"/>
<Product type="0003" id="0001" name="AD142 Plug-in Dimmer Module"/>
@ -554,6 +559,8 @@
<Product type="1001" id="2000" name="FGKF601 Keyfob" config="fibaro/fgkf601.xml" />
<Product type="1201" id="1000" name="FGSD001 CO Sensor" config="fibaro/fgcd001.xml" />
<Product type="1301" id="1000" name="FGT001 Heat Controller" config="fibaro/fgt001.xml"/>
<Product type="1701" id="2000" name="FGWPG111 US Wall Plug" config="fibaro/fgwpg111.xml"/>
<Product type="1801" id="1000" name="FGWPG111 UK Wall Plug" config="fibaro/fgwpg111.xml"/>
</Manufacturer>
<Manufacturer id="0138" name="First Alert">
<Product type="0001" id="0002" name="ZCombo Smoke and Carbon Monoxide Detector" config="firstalert/zcombo.xml"/>
@ -597,6 +604,7 @@
<Product type="0202" id="0511" name="GR105 Auto Valve" config="gr/gr105.xml"/>
<Product type="0003" id="0512" name="GR105n Auto Valve" config="gr/gr105n.xml"/>
<Product type="0500" id="0005" name="GRB3 Multichannel Switch" config="gr/grb3.xml"/>
<Product type="0500" id="0003" name="ZSE02 Motion Sensor"/>
</Manufacturer>
<Manufacturer id="0020" name="General Electric">
<Product type="8007" id="1390" name="Wireless Lighting Control"/>
@ -620,7 +628,9 @@
<Product type="5250" id="3030" name="45603 Plugin Appliance Module"/>
<Product type="5250" id="3130" name="45604 Outdoor Module"/>
<Product type="4f50" id="3031" name="12720 Outdoor Smart Switch"/>
<Product type="4f50" id="3032" name="14284 Outdoor Smart Switch"/>
<Product type="5252" id="3530" name="45605 Duplex Receptacle" config="ge/receptacle.xml"/>
<Product type="5044" id="3038" name="28167/ZW3104 Plug-In Smart Dimmer (Single Plug)" config="ge/28167-plugin-dimmer.xml"/>
<Product type="4952" id="3133" name="14288 Duplex Receptacle" config="ge/receptacle.xml"/>
<Product type="5257" id="3533" name="45609 On/Off Relay Switch" config="ge/relay.xml"/>
<Product type="4457" id="3033" name="45613 3-Way Dimmer Switch" config="ge/dimmer.xml"/>
@ -658,6 +668,7 @@
<Product type="0201" id="0008" name="HKZW-DWS01 Door/Window Sensor" config="hank/hkzw-dws01.xml"/>
<Product type="0200" id="0009" name="HKZW-SCN01 Scene Controller" config="hank/scenecontroller1.xml"/>
<Product type="0200" id="000b" name="HKZW-SCN04 Scene Controller" config="hank/scenecontroller4.xml"/>
<Product type="0201" id="000b" name="HKZW-SCN04 Scene Controller" config="hank/scenecontroller4.xml"/>
<Product type="0100" id="0004" name="HKZW-RGB01 RGB bulb" config="hank/hkzw-rgb01.xml"/>
<Product type="0101" id="0004" name="HKZW-RGB01 RGB bulb" config="hank/hkzw-rgb01.xml"/>
<Product type="0101" id="000a" name="HKZW-SO03 Smart Plug" config="hank/hkzw-so03.xml"/>
@ -700,6 +711,8 @@
<Product type="4447" id="3035" name="HS-WS200+ Wall Switch" config="homeseer/hs-ws200plus.xml"/>
<Product type="4447" id="3036" name="HS-WD200+ Wall Dimmer" config="homeseer/hs-wd200plus.xml"/>
<Product type="201" id="9" name="HS-MS100+ Motion Sensor" config="homeseer/hs-ms100plus.xml"/>
<Product type="201" id="a" name="HS-LS100+ Leak Sensor" config="homeseer/hs-ls100plus.xml"/>
<Product type="0201" id="000b" name="HS-FLS100+ Floodlight Sensor" config="homeseer/hs-fls100plus.xml"/>
</Manufacturer>
<Manufacturer id="0030" name="HomeSeer Tech">
</Manufacturer>
@ -715,6 +728,7 @@
<Product type="0001" id="0005" name="SRT-321 Thermostat-HVAC" config="horstmann/srt321.xml"/>
<Product type="0003" id="0001" name="ASR-ZW Thermostat Receiver" config="horstmann/asrzw.xml"/>
<Product type="0003" id="0002" name="SSR 302 2-zone Thermostat Receiver" config="horstmann/ssr302.xml"/>
<Product type="0003" id="0005" name="SSR 303 Thermostat Receiver" config="horstmann/ssr303.xml"/>
<Product type="0004" id="0001" name="SCSC17 Thermostat" config="horstmann/scsc17.xml"/>
<Product type="000d" id="0001" name="SES 301 Temperature Sensor"/>
<Product type="000d" id="0002" name="SES 302 Temperature Sensor" config="horstmann/ses302.xml"/>
@ -742,15 +756,20 @@
<Product type="0001" id="0001" name="RAone SmartDimmer Wall Dimmer Module"/>
</Manufacturer>
<Manufacturer id="0312" name="Inovelli">
<Product type="1e00" id="1e00" name="NZW30S On/Off Switch(scene)" config="inovelli/nzw30.xml"/>
<Product type="1e01" id="1e01" name="NZW30 On/Off Switch" config="inovelli/nzw30.xml"/>
<Product type="1e02" id="1e02" name="NZW30T On/Off Toggle(scene)" config="inovelli/nzw30.xml"/>
<Product type="1f00" id="1f00" name="NZW31S Dimmer(scene)" config="inovelli/nzw31.xml"/>
<Product type="1f01" id="1f01" name="NZW31 Dimmer" config="inovelli/nzw31.xml"/>
<Product type="1f02" id="1f02" name="NZW31T Dimmer(scene)" config="inovelli/nzw31.xml"/>
<Product type="b211" id="241c" name="NZW36 Smart Plug-In Module (1 Channel)" config="inovelli/simple_module.xml"/>
<Product type="b221" id="251c" name="NZW37 Smart Plug-In Module (2 Channel)" config="inovelli/simple_module.xml"/>
<Product type="b212" id="271c" name="NZW39 Smart Plug (Dimmer)" config="inovelli/simple_module.xml"/>
<Product type="1e01" id="1e01" name="NZW30 Smart Switch" config="inovelli/nzw30.xml"/>
<Product type="1e00" id="1e00" name="NZW30 Smart Switch (w/Scene)" config="inovelli/nzw30.xml"/>
<Product type="1e02" id="1e02" name="NZW30 Smart Toggle Switch (w/Scene)" config="inovelli/nzw30.xml"/>
<Product type="1f01" id="1f01" name="NZW31 Smart Dimmer" config="inovelli/nzw31.xml"/>
<Product type="1f00" id="1f00" name="NZW31 Smart Dimmer (w/Scene)" config="inovelli/nzw31.xml"/>
<Product type="1f02" id="1f02" name="NZW31 Smart Toggle Dimmer (w/Scene)" config="inovelli/nzw31.xml"/>
<Product type="b211" id="241c" name="NZW36 1-Channel Smart Plug-In Module" config="inovelli/simple_module.xml"/>
<Product type="2400" id="2400" name="NZW36 1-Channel Smart Plug (w/Scene)" config="inovelli/nzw36.xml"/>
<Product type="b221" id="251c" name="NZW37 2-Channel Smart Plug" config="inovelli/simple_module.xml"/>
<Product type="2500" id="2500" name="NZW37 2-Channel Smart Plug (w/Scene)" config="inovelli/nzw37.xml"/>
<Product type="b212" id="271c" name="NZW39 Smart Plug Dimmer" config="inovelli/simple_module.xml"/>
<Product type="2700" id="2700" name="NZW39 Smart Plug Dimmer (w/Scene)" config="inovelli/nzw39.xml"/>
<Product type="6000" id="6000" name="NZW96 1-Channel Outdoor Smart Plug" config="inovelli/nzw96.xml"/>
<Product type="6100" id="6100" name="NZW97 2-Channel Outdoor Smart Plug" config="inovelli/nzw97.xml"/>
</Manufacturer>
<Manufacturer id="0006" name="Intel">
</Manufacturer>
@ -806,6 +825,7 @@
<Product type="0702" id="0261" name="VRCZ4-M0Z 4-Button Zone Controller"/>
<Product type="0b02" id="030b" name="VRC0P-1LW Plug-in Serial Interface Module"/>
<Product type="0c01" id="0206" name="VRCPG-SG RF Handheld Remote Controller" config="leviton/vrcpg.xml"/>
<Product type="0e01" id="0334" name="VRE06-1LZ Multilevel Scene Switch" config="leviton/vre06.xml"/>
<Product type="1001" id="0209" name="VRF01-1LZ Quiet Fan Speed Control" config="leviton/vrf01.xml"/>
<Product type="1001" id="0334" name="VRF01-1LZ Quiet Fan Speed Control" config="leviton/vrf01.xml"/>
<Product type="1102" id="0243" name="VRCS2-MRZ 2-Button Scene Controller with Switches"/>
@ -843,6 +863,7 @@
<Product type="5457" id="3033" name="WT00Z-1 3-Way Wall Accessory Switch" config="linear/WT00Z-1.xml"/>
<Product type="5442" id="5431" name="GC-TBZ48 Battery Powered Z-Wave Thermostat" config="linear/GC-TBZ48.xml" />
<Product type="5442" id="5436" name="GC-TBZ48 Battery Powered Z-Wave Thermostat" config="linear/GC-TBZ48.xml" />
<Product type="5442" id="5437" name="GC-TBZ48 Battery Powered Z-Wave Thermostat" config="linear/GC-TBZ48.xml" />
<Product type="5744" id="3530" name="WD500Z5-1 Wall Mounted Dimmer" config="linear/WD500Z5-1.xml" />
</Manufacturer>
<Manufacturer id="015e" name="Locstar">
@ -873,6 +894,7 @@
<Product type="3102" id="0201" name="MH-S311 One-load" config="mcohome/mhs311.xml"/>
<Product type="3102" id="0202" name="MH-S312 Two-load" config="mcohome/mhs312.xml"/>
<Product type="3102" id="0204" name="MH-S314 Four-load" config="mcohome/mhs314.xml"/>
<Product type="5102" id="3141" name="MH-S314 Four-load" config="mcohome/mhs314.xml"/>
<Product type="4102" id="0201" name="MH-S411 One-load" config="mcohome/mhs411.xml"/>
<Product type="4102" id="0202" name="MH-S412 Two-load" config="mcohome/mhs412.xml"/>
<Product type="4121" id="1302" name="MH-S412 Two-load" config="mcohome/mhs412.xml"/>
@ -880,6 +902,7 @@
<Product type="0801" id="3102" name="MH8-FC-EU Thermostat" config="mcohome/mh8fceu.xml"/>
<Product type="0802" id="3102" name="MH8-FC4-EU Thermostat" config="mcohome/mh8fceu.xml"/>
<Product type="0905" id="0201" name="MH9-CO2-WD CO2 Monitor" config="mcohome/mh9co2.xml"/>
<Product type="a800" id="1352" name="A8-9 Multi-sensor" config="mcohome/a8-9.xml"/>
<!--US-->
<Product type="5102" id="0103" name="Touch Panel Switch MH-S513" config="mcohome/mhs513.xml"/>
</Manufacturer>
@ -983,6 +1006,7 @@
<Product type="0002" id="001f" name="PH-PAT02.eu Flood Multisensor 3in1" config="philio/phpat02.xml"/>
<Product type="0002" id="0020" name="PH-PAT02-B.eu Multisensor 2in1" config="philio/phpat02.xml"/>
<Product type="0004" id="000a" name="PH-PSE02.eu Zipato Indoor Siren" config="philio/pse02.xml"/>
<Product type="0005" id="0031" name="PH-PAD02.eu Smart Dimmer Socket E27" config="philio/pad02.xml"/>
<Product type="0006" id="001a" name="PH-PAB01.eu Micromodule Energy Meter" config="philio/phpab01.xml"/>
<Product type="0009" id="0022" name="PSR04 Smart Color Button" config="philio/psr04.xml"/>
<Product type="0001" id="0029" name="PAN16 Smart energy plug in switch" config="philio/pan16.xml"/>
@ -1048,6 +1072,7 @@
<Product type="0002" id="0002" name="ZMNHAA2 Flush 1 Relay" config="qubino/ZMNHAA2.xml"/>
<Product type="0002" id="0052" name="ZMNHADx Flush 1 Relay" config="qubino/ZMNHADx.xml"/>
<Product type="0002" id="0053" name="ZMNHND1 Flush 1D relay" config="qubino/ZMNHNDx.xml"/>
<Product type="0002" id="0054" name="ZMNHYD1 Smart Plug 16A" config="qubino/ZMNHYDx.xml"/>
<Product type="0003" id="0002" name="ZMNHCA2 Flush Shutter" config="qubino/ZMNHCA2.xml"/>
<Product type="0003" id="0052" name="ZMNHCDx Flush Shutter" config="qubino/ZMNHCDx.xml"/>
<Product type="0003" id="0053" name="ZMNHOD1 Flush Shutter DC" config="qubino/ZMNHODx.xml"/>
@ -1081,6 +1106,10 @@
<Product type="0106" id="8377" name="ZXT-120RU" config="remotec/zxt-120.xml"/>
<Product type="0107" id="8377" name="ZXT-120IL" config="remotec/zxt-120.xml"/>
<Product type="0108" id="8377" name="ZXT-120BR" config="remotec/zxt-120.xml"/>
<Product type="0100" id="8490" name="ZXT-600US AC MASTER" config="remotec/zxt-600.xml"/>
<Product type="0101" id="8490" name="ZXT-600EU AC MASTER" config="remotec/zxt-600.xml"/>
<Product type="0102" id="8490" name="ZXT-600AU AC MASTER" config="remotec/zxt-600.xml"/>
<Product type="0103" id="8490" name="ZXT-600IN AC MASTER" config="remotec/zxt-600.xml"/>
<Product type="0001" id="8510" name="ZRC-90" config="remotec/zrc-90.xml"/>
<Product type="0002" id="8510" name="ZRC-90" config="remotec/zrc-90.xml"/>
<Product type="8201" id="8120" name="ZFM-X10EU Dual Mode Insert Module "/>
@ -1148,6 +1177,7 @@
<Product type="0002" id="1a72" name="IS140-2" config="steinel/is140-2.xml"/>
<Product type="0001" id="1a74" name="RS LED D2" config="steinel/rs-led-d2.xml"/>
<Product type="0001" id="1a73" name="XLED HOME 2" config="steinel/xled-home-2.xml"/>
<Product type="0001" id="1a75" name="L810 LED iHF" config="steinel/l810-led-ihf.xml"/>
</Manufacturer>
<Manufacturer id="0166" name="Swiid">
<Product type="0100" id="0100" name="SwiidInter" config="swiid/swiidinter.xml"/>
@ -1194,8 +1224,11 @@
<Manufacturer id="010a" name="Vitrum">
<Product type="1100" id="4900" name="Vitrum I EU Wireless Dimmer" config="vitrum/vitrumBS.xml"/>
<Product type="1100" id="4a00" name="Vitrum II EU Wireless Dimmer" config="vitrum/vitrumBS.xml"/>
<Product type="1100" id="4b00" name="Vitrum III EU Wireless Dimmer" config="vitrum/vitrumBS.xml"/>
<Product type="1200" id="5100" name="Vitrum I EU Wireless On-off" config="vitrum/vitrumBS.xml"/>
<Product type="1200" id="5200" name="Vitrum II EU Wireless On-off" config="vitrum/vitrumBS.xml"/>
<Product type="1200" id="5300" name="Vitrum III EU Wireless On-off" config="vitrum/vitrumBS.xml"/>
<Product type="1200" id="5400" name="Vitrum IV EU Wireless On-off" config="vitrum/vitrumBS.xml"/>
<Product type="1300" id="5A00" name="Vitrum II EU Roller Blind Control" config="vitrum/vitrumBS.xml"/>
<Product type="2100" id="8a00" name="Vitrum II BS Wireless Dimmer" config="vitrum/vitrumBS.xml"/>
<Product type="2200" id="9100" name="Vitrum I BS Wireless On-off" config="vitrum/vitrumBS.xml"/>
@ -1269,13 +1302,14 @@
<Product type="0003" id="0003" name="TZ56 Wall Switch On/Off" config="wenzhou/tz56.xml"/>
<Product type="0003" id="0004" name="TZ55 Wall Switch Dimmer" config="wenzhou/tz55.xml"/>
<Product type="0004" id="0002" name="TZ69 Smart energy plug in switch" config="wenzhou/tz69.xml"/>
<Product type="0311" id="0103" name="TZ69E Smart energy plug in switch" config="wenzhou/tz69.xml"/>
<Product type="0116" id="3119" name="TZ69F Smart energy plug in switch" config="wenzhou/tz69.xml"/>
<Product type="000b" id="0001" name="ST812 Flood Detector" config="everspring/st812.xml"/>
<Product type="0808" id="0808" name="TZ65 Dual Wall Dimmer" config="wenzhou/tz65d.xml"/>
<Product type="0101" id="0103" name="TZ68 On/Off Switch Socket" config="wenzhou/tz68.xml"/>
<Product type="0102" id="1020" name="TZ66D Dual Wall Switch" config="wenzhou/tz66d.xml"/>
<Product type="0202" id="0611" name="TZ67 Wall Plug Dimmer" config="wenzhou/tz67.xml"/>
<Product type="0311" id="0103" name="TZ69E Smart energy plug in switch" config="wenzhou/tz69.xml"/>
<Product type="0311" id="0203" name="TZ57 Two channel switch" config="wenzhou/tz57.xml"/>
<Product type="0311" id="0305" name="TZ79 Power meter Relay Switch" config="wenzhou/tz79.xml"/>
<Product type="0311" id="0304" name="TZ74 Dual Switch" config="wenzhou/tz74.xml"/>
</Manufacturer>
@ -1333,6 +1367,7 @@
<Product type="0002" id="0003" name="Bulb 2" config="zipato/RGBBulb2.xml"/>
<Product type="0002" id="000c" name="PST02-A 4 in 1 Multi-Sensor" config="philio/pst02.xml"/>
<Product type="0004" id="000a" name="Indoor Siren" config="philio/pse02.xml"/>
<Product type="0005" id="0031" name="PH-PAD02.eu Smart Dimmer Socket E27" config="philio/pad02.xml"/>
<Product type="0006" id="001a" name="PH-PAB01.eu Micromodule Energy Meter" config="philio/phpab01.xml"/>
<Product type="6131" id="4501" name="Zipato Mini Keypad" config="zipato/MiniKeypad.xml" />
<Product type="2001" id="0106" name="VS-ZD2102 Door/Window Sensor" config="zipato/vszd2102.xml" />
@ -1354,6 +1389,8 @@
<Product type="0101" id="000a" name="ZEN06" config="zooz/zen06.xml"/>
<Product type="b111" id="251c" name="ZEN23 Toggle Switch V2" config="zooz/zen23.xml" />
<Product type="0101" id="000D" name="ZEN15 Power Switch" config="zooz/zen15.xml" />
<Product type="0301" id="0012" name="ZSE18 Motion Sensor" config="zooz/zse18.xml" />
<Product type="0401" id="0002" name="ZST10 S2 Z-Wave Plus USB Stick" />
</Manufacturer>
<Manufacturer id="015d" name="Zooz">
<Product type="0651" id="f51c" name="ZEN20 Power Strip" config="zooz/zen20.xml" />
@ -1362,6 +1399,7 @@
<Product type="1111" id="1e1c" name="ZEN23 Toggle Switch" config="zooz/zen23.xml" />
<Product type="0111" id="1f1c" name="ZEN24 Dimmer Switch" config="zooz/zen24.xml" />
<Product type="6100" id="6100" name="NZW97 Inovelli Dual Outdoor Z-Wave Plug" config="inovelli/nzw97.xml"/>
<Product type="b111" id="1e1c" name="ZEN21 Switch V2.0" config="zooz/zen21.xml" />
</Manufacturer>
<Manufacturer id="0315" name="Z Wave Products Inc.">
<Product type="4447" id="3034" name="WD-100" config="zwp/WD-100.xml"/>

171
config/mcohome/a8-9.xml Normal file
View file

@ -0,0 +1,171 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!-- MCOHome 9 in 1 Multi-sensor A8-9 -->
<!-- Configuration -->
<CommandClass id="112">
<Value type="byte" genre="config" index="1" label="PM 2.5 Delta Level" size="1" value="0">
<Help>
=0 Turn off report
>=2 Report when change >
n * 1ug/m3
</Help>
</Value>
<Value type="byte" genre="config" index="2" label="CO2 Delta Level" size="1" value="0">
<Help>
=0 Turn off report
>=2 Report when change >
n * 5ppm
</Help>
</Value>
<Value type="byte" genre="config" index="3" label="Temperature Delta Level" size="1" value="0">
<Help>
=0 Turn off report
>=1 Report when change >
n * 0.5 C
</Help>
</Value>
<Value type="byte" genre="config" index="4" label="Humidity Delta Level" size="1" value="0">
<Help>
=0 Turn off report
>=3 Report when change > n%
</Help>
</Value>
<Value type="list" genre="config" index="5" label="VOC Delta Level" size="1" value="1">
<Item label="Turn off report" value="0" />
<Item label="Report level change" value="1" />
</Value>
<Value type="short" genre="config" index="6" label="Lux Delta Level" size="2" value="0">
<Help>
=0 Turn off report
>=20 Report when change >
n * 1 lux
</Help>
</Value>
<Value type="byte" genre="config" index="7" label="dB Delta Level" size="1" value="0">
<Help>
=0 Turn off report
>=5 Report when change >
n * 1dB
</Help>
</Value>
<Value type="list" genre="config" index="8" label="PIR Delta Level" size="1" value="1">
<Item label="Turn off report" value="0" />
<Item label="Report change" value="1" />
</Value>
<Value type="byte" genre="config" index="9" label="Smoke Delta Level" size="1" value="1">
<Item label="Turn off report" value="0" />
<Item label="Report change" value="1" />
</Value>
<Value type="short" genre="config" index="10" label="Smoke Timer" size="2" value="0">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="11" label="PIR Timer" size="2" value="0">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="12" label="PM 2.5 Timer" size="2" value="60">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="13" label="CO2 Timer" size="2" value="60">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="14" label="Temperature Timer" size="2" value="60">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="15" label="Humidity Timer" size="2" value="60">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="16" label="VOC Timer" size="2" value="60">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="17" label="Lux Timer" size="2" value="60">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="short" genre="config" index="18" label="dB Timer" size="2" value="60">
<Help>
=0 Turn off report
>10 Report every n * 1s interval
</Help>
</Value>
<Value type="list" genre="config" index="19" label="Temperature Unit" size="1" value="0">
<Item label="C" value="0" />
<Item label="F" value="1" />
</Value>
<Value type="byte" genre="config" index="20" label="Temperature Offset" size="1" value="100">
<Help>
0 ~ 200
-10.0 ~ 10.0C
</Help>
</Value>
<Value type="byte" genre="config" index="21" label="Humidity Offset" size="1" value="20">
<Help>
0 ~ 40
-20.0 ~ 20.0%
</Help>
</Value>
<Value type="short" genre="config" index="22" label="CO2 Offset" size="2" value="500">
<Help>
0 ~ 1000
-500 ~ 500ppm
</Help>
</Value>
<Value type="byte" genre="config" index="23" label="PM 2.5 Offset" size="1" value="100">
<Help>
0 ~ 200
-100 ~ 100ug/m3
</Help>
</Value>
<Value type="short" genre="config" index="24" label="Lux Offset" size="2" value="5000">
<Help>
0 ~ 10000
-5000 ~ 5000lux
</Help>
</Value>
<Value type="byte" genre="config" index="25" label="VOC Correct" size="1" value="5">
<Help>
0 ~ 10
-5 ~ 5
</Help>
</Value>
<Value type="byte" genre="config" index="26" label="dB Correct" size="1" value="50">
<Help>
0 ~ 100
-50 ~ 50
</Help>
</Value>
<Value type="list" genre="config" index="27" label="Write Only" size="1" value="0xFF">
<Item label="Restore factory settin" value="0x55" />
<Item label="Restore default parameters" value="0xAA" />
<Item label="Reset" value="0xFF" />
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" max_associations="1" label="Lifeline"/>
</Associations>
</CommandClass>
</Product>

46
config/philio/pad02.xml Normal file
View file

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!--
philio / Zipato Smart Dimmer Socket E27
https://products.z-wavealliance.org/products/2355
-->
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value type="list" index="1" genre="config" label="Dimmer Level Report mode" size="1" min="0" max="1" value="1">
<Help>
Whenever dimmer on/off state changes, it will send MULTILEVEL_SWITCH_ REPORT to the nodes of group1.
The default setting is Enable the function.
</Help>
<Item label="Disable" value="0"/>
<Item label="Enable" value="1"/>
</Value>
<Value type="list" index="2" genre="config" label="LED indication mode" size="1" min="1" max="3" value="1">
<Help>
Show dimmer State: When dimmer is on, LED is on. When dimmer is off, LED is off.
Show Night mode: When dimmer is on, LED is off. When dimmer is off, LED is on.
One flash mode: When dimmer on/off state changes, LED will light on one second and then off.
</Help>
<Item label="Show dimmer state" value="1"/>
<Item label="Show night mode" value="2"/>
<Item label="One flash mode" value="3"/>
</Value>
<Value type="list" index="3" genre="config" label="Restore dimmer state" size="1" min="0" max="2" value="1">
<Help>
Whenever the AC power return from lost, PAD02 will restore the switch state which could be Dimmer off, Last dimmer state, Dimmer on.
The default setting is Last dimmer state.
</Help>
<Item label="Dimmer off" value="0"/>
<Item label="Last dimmer state" value="1"/>
<Item label="Dimmer on" value="2"/>
</Value>
</CommandClass>
<!-- COMMAND_CLASS_ASSOCIATION. Groups -->
<CommandClass id="133">
<Associations num_groups="2">
<Group index="1" max_associations="5" label="Lifeline" />
<Group index="2" max_associations="5" label="Retransmit local Control" />
</Associations>
</CommandClass>
</Product>

129
config/qubino/ZMNHYDx.xml Normal file
View file

@ -0,0 +1,129 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!--
Qubino ZMNHYDx Smart Plug
ZMNHYD1 868,4 MHz
ZMNHYD2 921,4 MHz
ZMNHYD3 908,4 MHz
ZMNHYD4 869,0 MHz
ZMNHYD5 916,0 MHz
-->
<!-- Configuration -->
<CommandClass id="112">
<Value type="list" genre="config" instance="1" index="10" label="Functions ALL ON/ALL OFF" size="2" min="0" max="255" value="255">
<Help>Smart Meter module responds to commands ALL ON / ALL OFF that may be sent by the main controller or by other controller belonging to the system</Help>
<Item label="ALL ON is not active ALL OFF is not active" value="0" />
<Item label="ALL ON is not active ALL OFF active" value="1" />
<Item label="ALL ON active ALL OFF is not active" value="2" />
<Item label="ALL ON active, ALL OFF active" value="255" />
</Value>
<Value type="short" genre="config" instance="1" index="11" label="Automatic turning off relay after set time" size="2" min="0" max="32535" value="0">
<Help>
If Smart plug 16A is ON, you can schedule it to turn OFF automatically after a period of time defined in this parameter.
The timer is reset to zero each time the device receives an ON command, either remotely (from the gateway (hub) or associated device) or locally from the switch.
0 => Auto OFF disabled.
1 - 32535 => 1 second (0,01s) - 32535 seconds (325,35s).
Auto OFF enabled with define time, step is 1s or 10ms according to parameter 15. Default value 0
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="12" label="Automatic turning on relay after set time" size="2" min="0" max="32535" value="0">
<Help>
If Smart plug 16A is OFF, you can schedule it to turn ON automatically after a period of time defined in this parameter.
The timer is reset to zero each time the device receives an OFF command, either remotely (from the gateway (hub) or associated device) or locally from the switch.
0 - Auto OFF disabled.
1 - 32535 => 1 second (0,01s) - 32535 seconds (325,35s).
Auto ON enabled with define time, step is 1s or 10ms according to parameter 15. Default value 0
</Help>
</Value>
<Value type="list" genre="config" instance="1" index="15" label="Set Timer Units" size="1" min="0" max="1" value="0">
<Help>
Choose if you want to set the timer in seconds or milliseconds in parameters 11 and 12.
</Help>
<Item label="Timer set in seconds" value="0" />
<Item label="Timer set in milliseconds" value="1" />
</Value>
<Value type="list" genre="config" instance="1" index="30" label="Restore on/off status after power failure" size="1" min="0" max="1" value="0">
<Help>
This parameter determines if on/off status is saved and restored for the Smart plug 16A after power failure.
</Help>
<Item label="Restores it after a power failure" value="0" />
<Item label="Remains off position" value="1" />
</Value>
<Value type="byte" genre="config" instance="1" index="40" label="Power reporting in Watts on power change" size="1" min="0" max="100" units="%" value="20">
<Help>
Choose by how much power consumption needs to increase or decrease to be reported. Values correspond to percentages so if 20 is set (by default), the device will report any power consumption changes of 20% or more compared to the last reading.
Set value from 0 - 100 (0% - 100%).
0 - Reporting Disabled.
1 - 100 = 1% - 100% Reporting enabled.
Power report is send (push) only when actual power in Watts in real time change for more than set percentage comparing to previous actual power in Watts, step is 1%.
Default value 20.</Help>
</Value>
<Value type="short" genre="config" instance="1" index="42" label="Power reporting in Watts by time interval" min="0" max="32767" units="seconds" value="300">
<Help>
Set value refers to the time interval with which power consumption in Watts is reported (0 - 32535 seconds).
If 300 is entered (by default), energy consumption reports will be sent to the gateway (hub) every 300 seconds (or 5 minutes).
Set value means time interval (0 - 32767) in seconds, when power report is send.
0 - Reporting Disabled.
1 second to 32767 seconds reporting enabled.
Power report is send with time interval set by entered value.
Default value 300 (power report in Watts is send each 300s).
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="50" label="Down value" size="2" min="0" max="4000" units="Watts" value="30">
<Help>
Lower power threshold used in param 52.
Can not be higher than param 51
0-4000 (0.0 to 4000.0W, 0 disables)
</Help>
</Value>
<Value type="short" genre="config" instance="1" index="51" label="Up value" size="2" min="0" max="4000" units="Watts" value="50">
<Help>
Upper power threshold used in param 52.
Can not be higher than param 50
0-4000 (0.0 to 4000.0W, 0 disables)
</Help>
</Value>
<Value type="list" genre="config" instance="1" index="52" label="Action in case of exceeding power values (param 51/52)" size="1" min="0" max="6" value="6">
<Help>
Parameter defines the way 3rd association group devices are controlled, depending on the current power load.
</Help>
<Item label="Disbale" value="0" />
<Item label="1 - Turn on once the power drop below param 50" value="1" />
<Item label="2 - Turn off once the power drop below param 50" value="2" />
<Item label="3 - Turn on once the power rises above param 51" value="3" />
<Item label="4 - Turn off once the power rises above param 51" value="4" />
<Item label="1 and 4 combined" value="5" />
<Item label="2 and 6 combined" value="6" />
</Value>
<Value type="short" genre="config" instance="1" index="70" label="Overload safety switch" size="2" min="0" max="4000" units="Watts" value="0">
<Help>
The function allows for turning off the controlled device in case of exceeding the defined power for more than 3.1s.
Controlled device can be turned back on by S-button or sending a control frame. By default this function is inactive.
1-4000 (1-4000W) 0 disables
</Help>
</Value>
<Value type="list" genre="config" instance="1" index="249" label="Reporting on set command" size="1" min="0" max="1" value="1">
<Help>
Using this parameter it is possible to enable/disable reporting after the set command (i.e. Basic set).
</Help>
<Item label="Disbale" value="0" />
<Item label="Enable" value="1" />
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="5">
<Group index="1" max_associations="1" label="Lifeline"/>
<Group index="2" max_associations="5" label="Plug status Basic On/Off"/>
<Group index="3" max_associations="5" label="Basic On/Off depending on the current load"/>
<Group index="4" max_associations="5" label="Secure Encapsulated Plug status basic On/Off"/>
<Group index="5" max_associations="5" label="Secure Encapsulated Basic On/Off depending on the current load"/>
</Associations>
</CommandClass>
<!-- Remove COMMAND_CLASS_BASIC -->
<CommandClass id="32" action="remove" />
</Product>

View file

@ -24,10 +24,10 @@
<Value type="short" index="4" genre="config" label="Report filter counter" read_only="true" value="0">
<Help>How many hours the system has run since the filter counter was last reset. Read only.</Help>
</Value>
<Value type="list" index="5" genre="config" label="Celsius/Farienheit" min="0" max="1" value="1" size="1">
<Help>Celsius or Farienheit.</Help>
<Value type="list" index="5" genre="config" label="Celsius/Fahrenheit" min="0" max="1" value="1" size="1">
<Help>Celsius or Fahrenheit.</Help>
<Item label="Celsius" value="0" />
<Item label="Farienheit" value="1" />
<Item label="Fahrenheit" value="1" />
</Value>
<Value type="byte" index="14" genre="config" label="Dead band" min="3" max="6" value="4" size="1">
<Help>

View file

@ -10,9 +10,9 @@
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value type="list" index="1" genre="config" label="Scale of temperature" min="0" max="1" value="1" size="1">
<Help>Celsius or Farienheit.</Help>
<Help>Celsius or Fahrenheit.</Help>
<Item label="Celsius" value="0" />
<Item label="Farienheit" value="1" />
<Item label="Fahrenheit" value="1" />
</Value>
<Value type="byte" index="2" genre="config" label="Swing" min="0" max="4" value="2" size="1">
<Help>

156
config/remotec/zxt-600.xml Normal file
View file

@ -0,0 +1,156 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!--
Remotec ZXT-600 AC MASTER
https://products.z-wavealliance.org/products/2445
-->
<!-- This thermostat's setpoint descriptions are 0 based, not 1 -->
<!-- COMMAND_CLASS_THERMOSTAT_SETPOINT get is not supported -->
<CommandClass id="67" base="0" getsupported="false"/>
<!-- The thermostat does not properly report its operating modes -->
<CommandClass id="64" name="COMMAND_CLASS_THERMOSTAT_MODE" version="1" request_flags="4" create_vars="true">
<Value type="list" genre="user" instance="1" index="0" label="Mode" units="" read_only="false" write_only="false" min="0" max="0" value="0">
<Item label="Off" value="0" />
<Item label="Heat" value="1" />
<Item label="Cool" value="2" />
<Item label="Resume" value="5" />
<Item label="Fan Only" value="6" />
<Item label="Dry Air" value="8" />
<Item label="Auto Changeover" value="10" />
</Value>
<SupportedModes>
<Mode index="0" label="Off" />
<Mode index="1" label="Heat" />
<Mode index="2" label="Cool" />
<Mode index="5" label="Resume" />
<Mode index="6" label="Fan Only" />
<Mode index="8" label="Dry Air" />
<Mode index="10" label="Auto Changeover" />
</SupportedModes>
</CommandClass>
<CommandClass id="112">
<Value type="list" index="25" genre="config" label="Learn IR code" size="2" min="0" max="32" value="0" write_only="true">
<Help>
In case none of the code on the code list works for the targeted air conditioner, user can use IR code learning function.
See manual at section &quot;IR Code Learning&quot; for a description of the procedure. Value 0-22
</Help>
<Item label="OFF" value="0" />
<Item label="ON (resume)" value="1" />
<Item label="Cool 17 C" value="2" />
<Item label="Cool 18 C" value="3" />
<Item label="Cool 19 C" value="4" />
<Item label="Cool 20 C" value="5" />
<Item label="Cool 21 C" value="6" />
<Item label="Cool 22 C" value="7" />
<Item label="Cool 23 C" value="8" />
<Item label="Cool 24 C" value="9" />
<Item label="Cool 25 C" value="10" />
<Item label="Cool 26 C" value="11" />
<Item label="Cool 27 C" value="12" />
<Item label="Cool 28 C" value="13" />
<Item label="Cool 29 C" value="14" />
<Item label="Cool 30 C" value="15" />
<Item label="Heat 17 C" value="16" />
<Item label="Heat 18 C" value="17" />
<Item label="Heat 19 C" value="18" />
<Item label="Heat 20 C" value="19" />
<Item label="Heat 21 C" value="20" />
<Item label="Heat 22 C" value="21" />
<Item label="Heat 23 C" value="22" />
<Item label="Heat 24 C" value="23" />
<Item label="Heat 25 C" value="24" />
<Item label="Heat 26 C" value="25" />
<Item label="Heat 27 C" value="26" />
<Item label="Heat 28 C" value="27" />
<Item label="Heat 29 C" value="28" />
<Item label="Heat 30 C" value="29" />
<Item label="Dry Mode" value="30" />
<Item label="Auto Mode" value="31" />
<Item label="Fan Mode" value="32" />
</Value>
<Value type="list" index="26" genre="config" label="Check IR Code Learning Status" size="1" read_only="true">
<Help>Note: The status value 0x01 and 0x04 will be reset to 0 when the ZXT-120 receive a get command to this parameter.
Idle - this IR channel is idle (default).
OK - the latest learning process successful and completed.
Learning - the ZXT- 120 is busy processing previous learning request.
Failed - the latest learning request failed.</Help>
<Item label="Idle" value="0" />
<Item label="OK" value="1" />
<Item label="Learning" value="2" />
<Item label="Failed" value="4" />
</Value>
<Value type="short" index="27" genre="config" label="Set IR Code number from built-in code library" size="2" value="0">
<Help>Refer to Code Finder Web page.</Help>
</Value>
<Value type="list" genre="config" instance="1" index="30" label="Set auto report condition trigger" size="1" min="0" max="8" value="0">
<Help>
Set Auto Report Condition Trigger By Room Temperature change.
Disable AUTO report function (Default) for saving battery life.
Auto report if room temperature is different from last report.
</Help>
<Item label="Disable AUTO report" value="0" />
<Item label="0.5 C" value="1" />
<Item label="1.0 C" value="2" />
<Item label="1.5 C" value="3" />
<Item label="2.0 C" value="4" />
<Item label="2.5 C" value="5" />
<Item label="3.0 C" value="6" />
<Item label="3.5 C" value="7" />
<Item label="4.0 C" value="8" />
</Value>
<Value type="list" index="32" genre="config" label="Set Built-in IR Emitter Control" size="1" value="255">
<Help>
To avoid the IR interference by disabling the surrounding IR emitter if 2 air-conditioners in a room are used.
Extend the battery life by disabling the Surround IR Emitters
</Help>
<Item label="Disable" value="0" />
<Item label="Enable" value="255" />
</Value>
<Value type="list" index="33" genre="config" label="Control Air Conditioner SWING function" size="1" value="1">
<Help></Help>
<Item label="Swing Off" value="0" />
<Item label="Swing Auto" value="1" />
</Value>
<Value type="list" genre="config" instance="1" index="34" label="Set Auto report condition by Time interval" size="1" min="1" max="8" value="1">
<Help>
Set Auto Report Condition Trigger By Time interval
</Help>
<Item label="1 Hr" value="1" />
<Item label="2 Hrs" value="2" />
<Item label="3 Hrs" value="3" />
<Item label="4 Hrs" value="4" />
<Item label="5 Hrs" value="5" />
<Item label="6 Hrs" value="6" />
<Item label="7 Hrs" value="7" />
<Item label="8 Hrs" value="8" />
</Value>
<Value type="list" genre="config" instance="1" index="37" label="Calibrate temperature reading" size="1" min="0" max="255" value="0">
<Help>
Temperature offset value.
</Help>
<Item label="0 C" value="0" />
<Item label="1 C" value="1" />
<Item label="2 C" value="2" />
<Item label="3 C" value="3" />
<Item label="4 C" value="4" />
<Item label="5 C" value="5" />
<Item label="-1 C" value="255" />
<Item label="-2 C" value="254" />
<Item label="-3 C" value="253" />
<Item label="-4 C" value="252" />
<Item label="-5 C" value="251" />
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="1">
<Group index="1" max_associations="1" label="Lifeline" />
</Associations>
</CommandClass>
</Product>

View file

@ -0,0 +1,206 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns="http://code.google.com/p/open-zwave/">
<!-- https://products.z-wavealliance.org/products/2290/ -->
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value genre="config" instance="1" index="BASIC" type="byte" label="Default light level" units="" size="1" min="1" max="99" value="99">
<Help>
Range: 1-99 (default: 99).
</Help>
</Value>
<Value genre="config" instance="1" index="1" type="short" label="Duration of light after motion detection" units="seconds" size="2" min="5" max="900" value="180">
<Help>
Range: 5-900 (default: 180 seconds).
</Help>
</Value>
<Value genre="config" instance="1" index="2" type="short" label="Light threshold" units="lx" size="2" min="0" max="2000" value="2000">
<Help>
Range: 2-2000, 0 (default: 2000 lux / potentiometer state if present).
0 - run Learn ambient light sequence.
2-1999 - threshold [lux].
2000 - is used as daylight (always night mode).
Value can be controlled via potentiometer (if present on device) - potentiometer value is then used as the default value and any potentiometer movement rewrites the current setting.
</Help>
</Value>
<Value genre="config" instance="1" index="3" type="byte" label="Night dim mode and time" units="minutes" size="1" min="0" max="255" value="0">
<Help>
Range: 0-60, -1 (default: 0 / potentiometer state if present).
0 - off (dim = basic light completely disabled).
1-60 - time [minutes] (enabled in night mode, starts after lamp is switched off after motion detection).
255 (-1) - whole night (dim through the whole night when lamp is off).
Dim mode is also disabled when local control is disabled as well as in Slave imode.
</Help>
</Value>
<Value genre="config" instance="1" index="4" type="short" label="Motion Radar Range" units="centimeters" size="2" min="100" max="500" value="500">
<Help>
Range: 100-500 (default: 500 cm / potentiometer state if present).
Value can be controlled via potentiometer (if present on device) - potentiometer value is then used as default value and any potentiometer movement rewrites the current setting.
</Help>
</Value>
<Value genre="config" instance="1" index="5" type="byte" label="Motion Radar Sensitivity" units="%" size="1" min="2" max="100" value="100">
<Help>
Range: 2-100 (default: 100 % / potentiometer state if present).
Value can be controlled via potentiometer (if present on device) . potentiometer value is then used as the default value and any potentiometer movement rewrites the current setting.
</Help>
</Value>
<Value genre="config" instance="1" index="6" type="byte" label="Brightness measuring interval" units="minutes" size="1" min="0" max="120" value="0">
<Help>
Range: 5-120, 0 (default: 0, disabled).
5-120 - Interval for ambient light measuring when lamp is on (lamp switches off shortly and measures).
0 - function is off.
</Help>
</Value>
<Value genre="config" instance="1" index="8" type="list" label="Use external Ambient Light valu" units="" size="1" min="0" max="1" value="1">
<Help>
Range: 0/1 (default: 1, disabled).
When GLOBAL_LIGHT mode is ON - device overrides its own light sensor values and uses Light Report values from any Z-Wave light sensor instead - this has to be configured appropriately to send light automatically. If the last remote light level value is older than 30 minutes, the internal light value is used again until the next external value is receive.
</Help>
<Item label="Enable" value="0" />
<Item label="Disable" value="1" />
</Value>
<Value genre="config" instance="1" index="9" type="list" label="Disable local control" units="bit field" size="1" min="0" max="4" value="2">
<Help>
Range: 0-4 (default: 2, Normal mode with lifeline error signalisation).
"Stupid mode" - lamp permanently on (bit 2 = 1):
- has higher priority then slave mode.
- lamp/relay is permanently on (for simple power wall switch controlling).
Slave mode without gateway checking (bit 0 = 1):
- only if included in Z-Wave network.
- useful for controlling via third-party sensor.
- lamp/relay is directly controlled via Z-Wave, internal sensors are not used for controlling it.
Central unit checking (bit 1 = 1): (useful especially for controlling via gateway)
When slave bit is 0:
- device signalises fail of lifeline connection (if this bit is zero, fail of lifeline connection is not signalised).
When slave bit is 1:
- device checks presence of Z-Wave device in lifeline group (gateway).
If it is not present for 2 minutes (testing repeatedly every 30 seconds) device switches to normal mode in the same way as after the end of local disabled mode (ON_BEHAVIOUR).
- the device checks every 1 minute for recovery of lifeline connection.
- if no lifeline specified - it works in normal mode.
Be careful with this option, device stops using its own motion sensor in Slave and "Stupid" mode.
</Help>
<Item label="Normal mode" value="0"/>
<Item label="Slave mode without gateway checking" value="1"/>
<Item label="Normal mode with lifeline error signalisation" value="2"/>
<Item label="Slave mode with gateway checking" value="3"/>
<Item label="Stupid mode - lamp permanently on" value="4"/>
</Value>
<Value genre="config" instance="1" index="10" type="short" label="Off behaviour (timeout)" units="" size="2" min="0" max="255" value="10">
<Help>
Behaviour after BASIC OFF (and similar commands). If a transition (even with zero change) with a non-default duration is to be processed, the transition cannot be interrupted by any motion event in any case.
Range: 0-209, 255 (default: 10 seconds).
0 - Lamp is switched off and remains so until any new motion event (local or remote) is received.
1-209 - Lamp/Relay is switched off and remains so until after a specified timeout once a new motion event (local or remote) is received.
Timeout:
1..100 - 1 second (1) to 100 seconds (100) in 1-second resolution.
101..200 - 1 minute (101) to 100 minutes (200) 1-minute resolution.
201..209 - 1 hour (201) to 9 hours (209) in 1-hour resolution.
210-254 - reserved.
255 - Lamp is switched off for TIME (cfg 1). It does not wait for a motion event and works normally via current motion evaluation.
</Help>
</Value>
<Value genre="config" instance="1" index="11" type="short" label="On behaviour (timeout)" units="" size="2" min="0" max="255" value="255">
<Help>
Behaviour after BASIC ON (and similar commands). If a transition (even with zero change) with a non-default duration is to be processed, the transition cannot be interrupted by any motion event in any case.
Range: 0-209, 255 (default: 255).
0 - Lamp is switched on and remains so until any new motion event (local or remote) is received. It then works normally via current motion evaluation.
Notice - during the day, this mode cannot be ended remotely due to motion events not being transmitted - only via local motion sensor if enabled.
1-209 - Lamp/relay is switched on and remains so until after a specified timeout once a new motion event (local or remote) is received. It then works normally via current motion evaluation.
Notice - during the day, this mode cannot be ended remotely due to motion events not being transmitted - only via local motion sensor if enabled.
Timeout:
1..100 - 1 second (1) to 100 seconds (100) in 1-second resolution.
101..200 - 1 minute (101) to 100 minutes (200) 1-minute resolution.
201..209 - 1 hour (201) to 9 hours (209) in 1-hour resolution.
210-254 - reserved
255 - Lamp is switched on for TIME (cfg 1). It does not wait for a motion event and works normally via current motion evaluation.
</Help>
</Value>
<Value genre="config" instance="1" index="12" type="short" label="On behaviour time over (timeout)" units="" size="2" min="0" max="255" value="204">
<Help>
Time limit to stop waiting for motion after timeout of ON_BEHAVIOUR or OFF_ON_BEHAVIOUR (0-209) to prevent staying ON forever when there is no motion.
Range: 0-209, 255 (default: 204, 4 hours).
0 - No additional waiting for motion.
1-209 - Timeout:
1..100 - 1 second (1) to 100 seconds (100) in 1-second resolution.
101..200 - 1 minute (101) to 100 minutes (200) 1-minute resolution.
201..209 - 1 hour (201) to 9 hours (209) in 1-hour resolution.
255 - Never stop waiting before motion.
</Help>
</Value>
<Value genre="config" instance="1" index="13" type="short" label="Sequence On-Off behaviour (timeout)" units="" size="2" min="0" max="255" value="204">
<Help>
Behaviour after a rapid sequence of BASIC ON and BASIC OFF commands. The intention is to use a much longer timeout value than the time after a single ON command which should then be followed by a short timeout value.
Range: 0-209,255 (default: 204, 4 hours).
0 - Lamp is switched off and remains so until any new motion event (local or remote) is received.
1-209 - Lamp/Relay is switched off and remains so until after a specified timeout once a new motion event (local or remote) is received.
Timeout:
1..100 - 1 second (1) to 100 seconds (100) in 1-second resolution.
101..200 - 1 minute (101) to 100 minutes (200) 1-minute resolution.
201..209 - 1 hour (201) to 9 hours (209) in 1-hour resolution.
210-254 - reserved.
255 - device ignores ON - OFF sequence and uses OFF behavior.
</Help>
</Value>
<Value genre="config" instance="1" index="14" type="short" label="Sequence Off-On behaviour (timeout)" units="" size="2" min="0" max="255" value="204">
<Help>
Behaviour after a rapid sequence of BASIC OFF and BASIC ON commands. The intention is to use a much longer timeout value than the time after a single OFF command which should then be followed by a short timeout value.
Range: 0-209, 255 (default: 204, 4 hours).
0 - Lamp is switched on and remains so until any new motion event (local or remote) is received. It then works normally via current motion evaluation.
Notice - during the day, this mode cannot be ended remotely due to motion events not being transmitted - only via local motion sensor if enabled.
1-209 - Lamp/relay is switched on and remains so until after a specified timeout once a new motion event (local or remote) is received. It then works normally via current motion evaluation.
Notice - during the day, this mode cannot be ended remotely due to motion events not being transmitted - only via local motion sensor if enabled.
Timeout:
1..100 - 1 second (1) to 100 seconds (100) in 1-second resolution.
101..200 - 1 minute (101) to 100 minutes (200) 1-minute resolution.
201..209 - 1 hour (201) to 9 hours (209) in 1-hour resolution.
210-254 - reserved
255 device ignores OFF - ON sequence and uses ON behaviour.
</Help>
</Value>
<Value genre="config" instance="1" index="15" type="byte" label="Sequence timing" units="" size="1" min="10" max="50" value="10">
<Help>
Time in [100 miliseconds] of maximum delay between BASIC ON and BASIC OFF (and vice versa) to consider this as a sequence. It is typically 1 second, but can be exceptionally longer due to retransmissions and overload - in this case, a longer interval can be allowed (up to 5 seconds).
Range: 10-50 (default: 10, 1 scond).
</Help>
</Value>
<Value genre="config" instance="1" index="16" type="short" label="Motion Off behaviour (timeout)" units="" size="2" min="0" max="255" value="0">
<Help>
Motion disable timeout after BASIC SET to motion endpoint when the internal motion sensor is not used for evaluating the behaviour of the lamp. Events are, however, still transmitted to the Lifeline, and the device can be controlled via remote motion sensors.
Range: 0-209,255 (default: 0, disabled).
0 - BASIC SET to Motion sensor endpoint ignored, BASIC to root is mapped to relay endpoint, motion sensor still enabled.
1-209 - Internal motion sensor is disabled for specified timeout after BASIC SET 0x00 to motion endpoint.
Timeout:
1..100 - 1 second (1) to 100 seconds (100) in 1-second resolution.
101..200 - 1 minute (101) to 100 minutes (200) 1-minute resolution.
201..209 - 1 hour (201) to 9 hours (209) in 1-hour resolution.
210-254 - reserved.
255 - BASIC SET to Motion sensor endpoint ignored, BASIC to root is mapped to relay endpoint, motion sensor still disabled.
</Help>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="4">
<Group index="1" label="Lifeline" max_associations="1" />
<Group index="2" label="On/Off Control" max_associations="16" />
<Group index="3" label="Notification Report" max_associations="16" />
<Group index="4" label="Ambient light" max_associations="15"/>
</Associations>
</CommandClass>
</Product>

49
config/wenzhou/tz57.xml Normal file
View file

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!--
Wenzhou TKB Control System TZ57 Two channel switch
-->
<!-- Configuration -->
<CommandClass id="112">
<Value type="list" genre="config" instance="1" index="1" label="Night light" min="0" max="1" value="1" size="1">
<Help>
The LED on the switch will by default, turn ON when the load attached is turned OFF.
To make the LED turn ON when the load attached is turned ON instead, set parameter to a value of 0.
</Help>
<Item label="The LED is ON when the load is ON" value="0" />
<Item label="The LED is ON when the load is OFF" value="1" />
</Value>
<Value type="list" genre="config" instance="1" index="2" label="Memory function" value="1" size="1">
<Help>Default with memory: the socket status is same as before when power on</Help>
<Item label="Disable" value="0"/>
<Item label="Enable" value="1"/>
</Value>
<Value type="list" genre="config" instance="1" index="3" label="Invert switch" value="0" size="1">
<Help>In the edge mode invert switch</Help>
<Item label="Disable" value="0"/>
<Item label="Enable" value="1"/>
</Value>
<Value type="list" genre="config" instance="1" index="4" label="LED Transmission Indication" value="1" size="1">
<Help>Led flicker on transmission</Help>
<Item label="No flicker" value="0"/>
<Item label="Only 1 second at beginning" value="1"/>
<Item label="Always" value="2"/>
</Value>
<Value type="list" genre="config" instance="1" index="5" label="Suspend Group 4" value="0" size="1">
<Help>Enable/Disable group 4</Help>
<Item label="Enable" value="0"/>
<Item label="Disable" value="1"/>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="4">
<Group index="1" max_associations="5" label="Lifeline" />
<Group index="2" max_associations="5" label="On/Off Dimmer 1" />
<Group index="3" max_associations="5" label="On/Off Dimmer 2" />
<Group index="4" max_associations="5" label="Wireless" />
</Associations>
</CommandClass>
</Product>

0
config/wenzhou/tz79.xml Executable file → Normal file
View file

0
config/zooz/zen06.xml Executable file → Normal file
View file

0
config/zooz/zen21.xml Executable file → Normal file
View file

0
config/zooz/zen22.xml Executable file → Normal file
View file

0
config/zooz/zen22v2.xml Executable file → Normal file
View file

47
config/zooz/zse18.xml Normal file
View file

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="utf-8"?>
<Product xmlns='http://code.google.com/p/open-zwave/'>
<!-- Zooz ZSE18 Motion Sensor -->
<!-- Configuration Parameters -->
<CommandClass id="112">
<Value type="byte" genre="config" index="12" label="PIR Sensitivity" size="1" min="1" max="8" value="4">
<Help>Adjust PIR sensor sensitivity. 1-8; 1 is low sensitivity, 8 is high sensitivity Defaults to 4.</Help>
</Value>
<Value type="list" genre="config" index="14" label="Enable BASIC SET reports" size="1" min="0" max="1" value="0">
<Help>Enable or Disable BASIC SET reports when motion is triggered for Group 2 of associated devices.</Help>
<Item label="Disabled" value="0"/>
<Item label="Enabled" value="1"/>
</Value>
<Value type="list" genre="config" index="15" label="Reverse values BASIC SET reports" size="1" min="0" max="1" value="0">
<Help>Use it to reverse values sent in BASIC SET reports when motion is triggered for Group 2 of associated devices. Defaults to Disabled, which will send value 255 when motion is triggered and send value 0 when motion times out. Enabled will send value 0 when motion is triggered, and send value 255 when motion times out</Help>
<Item label="Disabled" value="0"/>
<Item label="Enabled" value="1"/>
</Value>
<Value type="short" genre="config" index="18" label="Trigger ON Duration" size="2" min="3" max="65535" value="27" units="seconds">
<Help>Use it to set trigger interval - the time when motion is reported again after initial trigger. Values are between 3 and 65535 seconds, with a +3 second offset. Example; value of 3 actually means 6 seconds. Value of 27 actually means 30 seconds. Value of 65535 actually means 65538 seconds. Defaults to 27, so 30 seconds. NOTE: Small interval will increase activity and decrease battery life.</Help>
</Value>
<Value type="list" genre="config" index="17" label="Vibration Sensor" size="1" min="0" max="1" value="1">
<Help>Enable or Disable vibration sensor. Enabled by default.</Help>
<Item label="Disabled" value="0"/>
<Item label="Enabled" value="1"/>
</Value>
<Value type="byte" genre="config" index="32" label="Low Battery Alert" size="1" min="10" max="50" value="10">
<Help>Use this to set battery level for low battery reports. value of 10 means 10% battery remaining, while value 50 means 50% battery remaining. Defaults to 10.</Help>
</Value>
<Value type="list" genre="config" index="20" label="LED Indicator" size="1" min="0" max="1" value="1">
<Help>Enable or Disable LED indicator. Enabled by default.</Help>
<Item label="Disabled" value="0"/>
<Item label="Enabled" value="1"/>
</Value>
</CommandClass>
<!-- Association Groups -->
<CommandClass id="133">
<Associations num_groups="4">
<Group index="1" max_associations="5" label="Lifeline"/>
<Group index="2" max_associations="5" label="Control Command"/>
<Group index="3" max_associations="5" label="Notification report"/>
<Group index="4" max_associations="5" label="Binary sensor report"/>
</Associations>
</CommandClass>
</Product>

0
config/zwp/WD-100.xml Executable file → Normal file
View file

View file

@ -40,9 +40,17 @@ endif
#if we are on a Mac, add these flags and libs to the compile and link phases
ifeq ($(UNAME),Darwin)
CFLAGS += -c -DDARWIN
TARCH += -arch i386 -arch x86_64
ifeq ($(DARWIN_MOJAVE_UP),1)
# Newer macOS releases don't support i386 so only build 64-bit
DARWIN_BUILD_TARGET = -arch x86_64
# Disable an implicitly-set build flag that causes the build to needlessly fail
CFLAGS += -Wno-unused-private-field
else
DARWIN_BUILD_TARGET = -arch i386 -arch x86_64
endif
TARCH += $(DARWIN_BUILD_TARGET)
LDFLAGS += -dynamiclib -install_name "$(DESTDIR)/$(instlibdir)/$(SHARED_LIB_NAME)"
LIBS += -framework IOKit -framework CoreFoundation -arch i386 -arch x86_64
LIBS += -framework IOKit -framework CoreFoundation $(DARWIN_BUILD_TARGET)
else ifeq ($(UNAME),FreeBSD)
LDFLAGS+= -shared -lusb -Wl,-soname,$(SHARED_LIB_NAME)
@ -63,18 +71,25 @@ endif
# For 10.2 and later, use iconv from base, no extra include path required.
else ifeq ($(UNAME),NetBSD)
CFLAGS += -I/usr/pkg/include/libusb-1.0
LDFLAGS+= -shared -L/usr/pkg/lib -lusb-1.0 -Wl,-rpath=/usr/pkg/lib
CFLAGS += $(shell pkgconf --cflags libusb-1.0)
LDFLAGS+= -shared $(shell pkgconf --libs libusb-1.0)
else ifeq ($(UNAME),SunOS)
CFLAGS+= -I$(PREFIX)/include/libusb-1.0
LDFLAGS+= -shared -lusb-1.0 -liconv
else
LDFLAGS += -shared -Wl,-soname,$(SHARED_LIB_NAME)
LIBS += -ludev
endif
CFLAGS += $(CPPFLAGS)
#where to put the temporary library
LIBDIR ?= $(top_builddir)
INCLUDES := -I $(top_srcdir)/cpp/src -I $(top_srcdir)/cpp/tinyxml/ -I $(top_srcdir)/cpp/hidapi/hidapi/
INCLUDES := -I $(top_srcdir)/cpp/src -I $(top_srcdir)/cpp/tinyxml/
ifeq ($(USE_HID),1)
INCLUDES += -I $(top_srcdir)/cpp/hidapi/hidapi/
CFLAGS += -DUSE_HID
ifeq ($(UNAME),Darwin)
SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/mac
@ -82,10 +97,13 @@ else ifeq ($(UNAME),FreeBSD)
SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/libusb
else ifeq ($(UNAME),NetBSD)
SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/libusb
else ifeq ($(UNAME),SunOS)
SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/libusb
else
SOURCES_HIDAPI =$(top_srcdir)/cpp/hidapi/linux
LIBS += -ludev
endif
endif # USE_HID
SOURCES := $(top_srcdir)/cpp/src $(top_srcdir)/cpp/src/command_classes $(top_srcdir)/cpp/tinyxml \
$(top_srcdir)/cpp/src/value_classes $(top_srcdir)/cpp/src/platform $(top_srcdir)/cpp/src/platform/unix $(SOURCES_HIDAPI) $(top_srcdir)/cpp/src/aes/
@ -94,15 +112,19 @@ VPATH = $(top_srcdir)/cpp/src:$(top_srcdir)/cpp/src/command_classes:$(top_srcdir
tinyxml := $(notdir $(wildcard $(top_srcdir)/cpp/tinyxml/*.cpp))
ifeq ($(USE_HID),1)
ifeq ($(UNAME),Darwin)
hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/mac/*.c))
else ifeq ($(UNAME),FreeBSD)
hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/libusb/*.c))
else ifeq ($(UNAME),NetBSD)
hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/libusb/*.c))
else ifeq ($(UNAME),SunOS)
hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/libusb/*.c))
else
hidapi := $(notdir $(wildcard $(top_srcdir)/cpp/hidapi/linux/*.c)) # we do not want the libusb version
endif
endif # USE_HID
ifeq ($(BITBAKE_ENV),1)
ar_option := "rc"
@ -180,6 +202,7 @@ $(top_builddir)/libopenzwave.pc: $(top_srcdir)/cpp/build/libopenzwave.pc.in $(PK
-e 's|[@]gitversion@|$(GITVERSION)|g' \
-e 's|[@]docdir@|$(docdir)/|g' \
-e 's|[@]VERSION@|$(VERSION)|g' \
-e 's|[@]LIBS@|$(LIBS)|g' \
< "$<" > "$@"
$(top_builddir)/ozw_config: $(top_srcdir)/cpp/build/ozw_config.in
@echo "Making ozw_config file"

View file

@ -12,3 +12,4 @@ URL: http://www.openzwave.org/
Version: @VERSION@
Libs: -L${libdir} -lopenzwave
Cflags: -I${includedir}
Libs.private: @LIBS@

View file

@ -8,9 +8,21 @@ BUILD ?= release
#the prefix to install the library into
PREFIX ?= /usr/local
# build HID support by default
USE_HID ?= 1
#the System we are building on
UNAME := $(shell uname -s)
# The version of macOS we might be building on
DARWIN_VERSION = 0
# A simple flag to help determine if we're building on 10.14 or greater
# 0 = false, 1 = true
DARWIN_MOJAVE_UP = 0
ifeq ($(UNAME),Darwin)
# Returns a macOS version number as `10.14`
DARWIN_VERSION := $(shell sw_vers -productVersion)
DARWIN_MOJAVE_UP := $(shell expr $(DARWIN_VERSION) \>= 10.14)
endif
#the location of Doxygen to generate our api documentation
DOXYGEN := $(shell which doxygen)
#dot is required for doxygen (part of Graphviz)

View file

@ -44,7 +44,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src;..\..\..\src\command_classes;..\..\..\src\value_classes;..\..\..\src\platform;..\..\..\src\platform\windows;..\..\..\tinyxml;..\..\..\hidapi\hidapi"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;USE_HID=1"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@ -112,7 +112,7 @@
Optimization="2"
EnableIntrinsicFunctions="true"
AdditionalIncludeDirectories="..\..\..\src;..\..\..\src\command_classes;..\..\..\src\value_classes;..\..\..\src\platform;..\..\..\src\platform\windows;..\..\..\tinyxml;..\..\..\hidapi\hidapi"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;USE_HID=1"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
@ -176,7 +176,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\src;..\..\..\src\command_classes;..\..\..\src\value_classes;..\..\..\src\platform;..\..\..\src\platform\windows;..\..\..\tinyxml;..\..\..\hidapi\hidapi"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;OPENZWAVE_MAKEDLL"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;USE_HID=1;OPENZWAVE_MAKEDLL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@ -251,7 +251,7 @@
Optimization="2"
EnableIntrinsicFunctions="true"
AdditionalIncludeDirectories="..\..\..\src;..\..\..\src\command_classes;..\..\..\src\value_classes;..\..\..\src\platform;..\..\..\src\platform\windows;..\..\..\tinyxml;..\..\..\hidapi\hidapi"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;OPENZWAVE_MAKEDLL"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;USE_HID=1;OPENZWAVE_MAKEDLL"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"

View file

@ -88,7 +88,7 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;USE_HID=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@ -115,7 +115,7 @@ exit 0</Command>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;OPENZWAVE_MAKEDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;USE_HID=1;OPENZWAVE_MAKEDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@ -150,7 +150,7 @@ exit 0</Command>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<PreprocessorDefinitions>WIN32;_LIB;OPENZWAVE_MAKEDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_LIB;USE_HID=1;OPENZWAVE_MAKEDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
@ -181,7 +181,7 @@ exit 0</Command>
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;USE_HID=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>

View file

@ -37,7 +37,13 @@ include $(top_srcdir)/cpp/build/support.mk
#if we are on a Mac, add these flags and libs to the compile and link phases
ifeq ($(UNAME),Darwin)
CFLAGS += -DDARWIN
TARCH += -arch i386 -arch x86_64
ifeq ($(DARWIN_MOJAVE_UP),1)
# Newer macOS releases don't support i386 so only build 64-bit
TARCH += -arch x86_64
else
# Support older versions of OSX that may need to build both 32-bit and 64-bit
TARCH += -arch i386 -arch x86_64
endif
endif
# Dup from main makefile, but that is not included when building here..
@ -55,6 +61,8 @@ endif
else ifeq ($(UNAME),NetBSD)
LDFLAGS+= -L/usr/pkg/lib -lusb-1.0
else ifeq ($(UNAME),SunOS)
LDFLAGS+= -lusb-1.0
endif
$(OBJDIR)/MinOZW: $(patsubst %.cpp,$(OBJDIR)/%.o,$(minozwsrc))

View file

@ -59,7 +59,7 @@ extern "C" {
#define LOG(...) do {} while (0)
#endif
#ifdef __NetBSD__
#if defined(__NetBSD__) || defined(__sun)
#define ICONV_CONST const
#else
#define ICONV_CONST

View file

@ -40,11 +40,13 @@
#include "platform/Event.h"
#include "platform/Mutex.h"
#include "platform/SerialController.h"
#ifdef USE_HID
#ifdef WINRT
#include "platform/winRT/HidControllerWinRT.h"
#else
#include "platform/HidController.h"
#endif
#endif
#include "platform/Thread.h"
#include "platform/Log.h"
#include "platform/TimeStamp.h"
@ -233,11 +235,13 @@ m_eventMutex (new Mutex() )
initNetworkKeys(false);
#ifdef USE_HID
if( ControllerInterface_Hid == _interface )
{
m_controller = new HidController();
}
else
#endif
{
m_controller = new SerialController();
}
@ -1714,7 +1718,9 @@ bool Driver::ReadMsg
(
)
{
uint8 buffer[1024] = {0};
uint8 buffer[1024];
memset(buffer, 0, sizeof(uint8)* 1024);
if( !m_controller->Read( buffer, 1 ) )
{

View file

@ -536,8 +536,7 @@ Group::AssociationCommand::AssociationCommand
(
uint8 const _length,
uint8 const* _data
):
m_length( _length )
)
{
m_data = new uint8[_length];
memcpy( m_data, _data, _length );

View file

@ -101,7 +101,6 @@ namespace OpenZWave
~AssociationCommand();
private:
uint8 m_length;
uint8* m_data;
};

View file

@ -350,6 +350,11 @@ void MultiInstance::HandleMultiInstanceEncap
pCommandClass->ReceivedCntIncr();
pCommandClass->HandleMsg( &_data[3], _length-3, instance );
}
else
{
Log::Write( LogLevel_Warning, GetNodeId(), "Received invalid MultiInstanceReport from node %d. Attempting to process as MultiChannel", GetNodeId());
HandleMultiChannelEncap( _data, _length );
}
}
}

View file

@ -25,6 +25,8 @@
//
//-----------------------------------------------------------------------------
#ifdef USE_HID
#include "Msg.h"
#include "platform/Thread.h"
#include "platform/Event.h"
@ -539,3 +541,4 @@ int HidController::SendFeatureReport
return result;
}
#endif /* USE_HID */

View file

@ -34,8 +34,13 @@
#include "SerialControllerImpl.h"
#include "platform/Log.h"
#ifdef __linux__
#include <libudev.h>
#ifdef __sun
// SunOS doesn't have the cfsetspeed convenience function.
int
cfsetspeed(struct termios *tios, speed_t speed)
{
return (cfsetispeed(tios, speed) || cfsetospeed(tios, speed));
}
#endif
using namespace OpenZWave;

View file

@ -553,7 +553,9 @@ int Value::VerifyRefreshedValue
void* _checkValue,
void* _newValue,
ValueID::ValueType _type,
int _length // = 0
int _originalValueLength, // = 0,
int _checkValueLength, // = 0,
int _newValueLength // = 0
)
{
// TODO: this is pretty rough code, but it's reused by each value type. It would be
@ -652,7 +654,8 @@ int Value::VerifyRefreshedValue
bOriginalEqual = ( *((bool*)_originalValue) == *((bool*)_newValue) );
break;
case ValueID::ValueType_Raw: // raw
bOriginalEqual = ( memcmp( _originalValue, _newValue, _length ) == 0 );
bOriginalEqual = ( _originalValueLength == _newValueLength ); // first check length of arrays
if(bOriginalEqual) bOriginalEqual = ( memcmp( _originalValue, _newValue, _newValueLength ) == 0 ); // if length is the same, then check content
break;
case ValueID::ValueType_Schedule: // Schedule
/* Should not get here */
@ -703,7 +706,8 @@ int Value::VerifyRefreshedValue
bCheckEqual = ( *((bool*)_checkValue) == *((bool*)_newValue) );
break;
case ValueID::ValueType_Raw:
bCheckEqual = ( memcmp( _checkValue, _newValue, _length ) == 0 );
bCheckEqual = ( _checkValueLength == _newValueLength ); // first check length of arrays
if (bCheckEqual) bCheckEqual = ( memcmp( _checkValue, _newValue, _newValueLength ) == 0 ); // if length is the same, then check content
break;
case ValueID::ValueType_Schedule:
/* Should not get here */

View file

@ -100,7 +100,7 @@ namespace OpenZWave
void SetCheckingChange( bool _check ) { m_checkChange = _check; }
void OnValueRefreshed(); // A value in a device has been refreshed
void OnValueChanged(); // The refreshed value actually changed
int VerifyRefreshedValue( void* _originalValue, void* _checkValue, void* _newValue, ValueID::ValueType _type, int _length = 0 );
int VerifyRefreshedValue( void* _originalValue, void* _checkValue, void* _newValue, ValueID::ValueType _type, int _originalValueLength = 0, int _checkValueLength = 0, int _newValueLength = 0 );
int32 m_min;
int32 m_max;

View file

@ -57,8 +57,7 @@ ValueBool::ValueBool
):
Value( _homeId, _nodeId, _genre, _commandClassId, _instance, _index, ValueID::ValueType_Bool, _label, _units, _readOnly, _writeOnly, false, _pollIntensity ),
m_value( _value ),
m_valueCheck( false ),
m_newValue( false )
m_valueCheck( false )
{
}

View file

@ -64,7 +64,6 @@ namespace OpenZWave
private:
bool m_value; // the current index in the m_items vector
bool m_valueCheck; // the previous value (used for double-checking spurious value reads)
bool m_newValue; // a new value to be set on the appropriate device
};
} // namespace OpenZWave

View file

@ -57,8 +57,7 @@ ValueByte::ValueByte
):
Value( _homeId, _nodeId, _genre, _commandClassId, _instance, _index, ValueID::ValueType_Byte, _label, _units, _readOnly, _writeOnly, false, _pollIntensity ),
m_value( _value ),
m_valueCheck( false ),
m_newValue( false )
m_valueCheck( false )
{
m_min = 0;
m_max = 255;

View file

@ -63,7 +63,6 @@ namespace OpenZWave
private:
uint8 m_value; // the current value
uint8 m_valueCheck; // the previous value (used for double-checking spurious value reads)
uint8 m_newValue; // a new value to be set on the appropriate device
};
} // namespace OpenZWave

View file

@ -58,8 +58,7 @@ ValueInt::ValueInt
):
Value( _homeId, _nodeId, _genre, _commandClassId, _instance, _index, ValueID::ValueType_Int, _label, _units, _readOnly, _writeOnly, false, _pollIntensity ),
m_value( _value ),
m_valueCheck( 0 ),
m_newValue( 0 )
m_valueCheck( 0 )
{
m_min = INT_MIN;
m_max = INT_MAX;
@ -74,8 +73,7 @@ ValueInt::ValueInt
):
Value(),
m_value( 0 ),
m_valueCheck( 0 ),
m_newValue( 0 )
m_valueCheck( 0 )
{
m_min = INT_MIN;

View file

@ -63,7 +63,6 @@ namespace OpenZWave
private:
int32 m_value; // the current value
int32 m_valueCheck; // the previous value (used for double-checking spurious value reads)
int32 m_newValue; // a new value to be set on the appropriate device
};
} // namespace OpenZWave

View file

@ -60,7 +60,6 @@ ValueList::ValueList
m_items( _items ),
m_valueIdx( _valueIdx ),
m_valueIdxCheck( 0 ),
m_newValueIdx( 0 ),
m_size( _size )
{
}
@ -76,7 +75,6 @@ ValueList::ValueList
m_items( ),
m_valueIdx(),
m_valueIdxCheck( 0 ),
m_newValueIdx( 0 ),
m_size(0)
{
}

View file

@ -83,7 +83,6 @@ namespace OpenZWave
vector<Item> m_items;
int32 m_valueIdx; // the current index in the m_items vector
int32 m_valueIdxCheck; // the previous index in the m_items vector (used for double-checking spurious value reads)
int32 m_newValueIdx; // a new value to be set on the appropriate device
uint8 m_size;
};

View file

@ -59,7 +59,7 @@ ValueRaw::ValueRaw
m_value( NULL ),
m_valueLength( _length ),
m_valueCheck ( NULL ),
m_newValue ( NULL )
m_valueCheckLength ( 0 )
{
m_value = new uint8[_length];
memcpy( m_value, _value, _length );
@ -75,10 +75,10 @@ ValueRaw::ValueRaw
(
):
m_value( NULL ),
m_valueLength( 0 ),
m_valueCheck ( NULL ),
m_newValue ( NULL )
m_valueCheckLength ( 0 )
{
m_valueLength = 0;
m_min = 0;
m_max = 0;
}
@ -92,6 +92,7 @@ ValueRaw::~ValueRaw
)
{
delete [] m_value;
if ( m_valueCheck != NULL ) delete[] m_valueCheck;
}
string const ValueRaw::GetAsString
@ -259,7 +260,7 @@ void ValueRaw::OnValueRefreshed
uint8 const _length
)
{
switch( VerifyRefreshedValue( (void*)m_value, (void*)m_valueCheck, (void*)_value, ValueID::ValueType_Raw, _length ) )
switch( VerifyRefreshedValue( (void*)m_value, (void*)m_valueCheck, (void*)_value, ValueID::ValueType_Raw, m_valueLength, m_valueCheckLength, _length ) )
{
case 0: // value hasn't changed, nothing to do
break;
@ -269,6 +270,7 @@ void ValueRaw::OnValueRefreshed
delete [] m_valueCheck;
}
m_valueCheck = new uint8[_length];
m_valueCheckLength = _length;
memcpy( m_valueCheck, _value, _length );
break;
case 2: // value has changed (confirmed), save _value in m_value
@ -277,6 +279,7 @@ void ValueRaw::OnValueRefreshed
delete [] m_value;
}
m_value = new uint8[_length];
m_valueLength = _length;
memcpy( m_value, _value, _length );
break;
case 3: // all three values are different, so wait for next refresh to try again

View file

@ -65,7 +65,7 @@ namespace OpenZWave
uint8* m_value; // the current value
uint8 m_valueLength; // fixed length for this instance
uint8* m_valueCheck; // the previous value (used for double-checking spurious value reads)
uint8* m_newValue; // a new value to be set on the appropriate device
uint8 m_valueCheckLength; // m_valueCheck array length
};
} // namespace OpenZWave

View file

@ -58,8 +58,7 @@ ValueShort::ValueShort
):
Value( _homeId, _nodeId, _genre, _commandClassId, _instance, _index, ValueID::ValueType_Short, _label, _units, _readOnly, _writeOnly, false, _pollIntensity ),
m_value( _value ),
m_valueCheck( 0 ),
m_newValue( 0 )
m_valueCheck( 0 )
{
m_min = SHRT_MIN;
m_max = SHRT_MAX;
@ -74,8 +73,7 @@ ValueShort::ValueShort
):
Value(),
m_value( 0 ),
m_valueCheck( 0 ),
m_newValue( 0 )
m_valueCheck( 0 )
{
m_min = SHRT_MIN;
m_max = SHRT_MAX;

View file

@ -63,7 +63,6 @@ namespace OpenZWave
private:
int16 m_value; // the current value
int16 m_valueCheck; // the previous value (used for double-checking spurious value reads)
int16 m_newValue; // a new value to be set on the appropriate device
};
} // namespace OpenZWave

316
debian/TODO vendored
View file

@ -1,316 +0,0 @@
Debian packaging
================
Switch to separate packaging: 3.0 (quilt), debian/watch, possibly repack.
(Maybe) add multi-arch support. This would require moving the config files to
a separate data package.
Change Debian packaging to use libjs-jquery instead of the embedded copy of
jquery
Upstream cleanup
================
Drop embedded copy of tinyxml
cpp/hidapi/windows has an unclear license (only applies to the *user* of this
library?)
Warning: Tag `XML_SCHEMA' at line 1786 of file `Doxyfile' has become obsolete.
To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
Warning: Tag `XML_DTD' at line 1792 of file `Doxyfile' has become obsolete.
To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
Upstream cleanup (minor stuff, reported by lintian)
===================================================
P: openzwave source: source-contains-autogenerated-visual-c++-file dotnet/src/app.rc
N:
N: The following file is autogenerated by Microsoft Visual C++.
N:
N: They are usually provided for the convenience of users. These files
N: usually just take up space in the tarball and are of no use in Debian.
N:
N: Check if upstream also provides source-only tarballs that you can use as
N: the upstream distribution instead. If not, you may want to ask upstream
N: to provide source-only tarballs.
N:
N: Severity: pedantic, Certainty: possible
N:
N: Check: cruft, Type: source
N:
P: openzwave source: source-contains-autogenerated-visual-c++-file dotnet/src/resource.h
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1NoOperation__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1NoOperation__inherit__graph.md5
N:
N: The package ships the two (or more) files with the exact same contents.
N:
N: Note: empty files are exempt from this check.
N:
N: Severity: pedantic, Certainty: possible
N:
N: Check: duplicate-files, Type: binary
N:
N: This tag is marked experimental, which means that the code that
N: generates it is not as well-tested as the rest of Lintian and might
N: still give surprising results. Feel free to ignore experimental tags
N: that do not seem to make sense, though of course bug reports are always
N: welcome.
N:
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Hail__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Hail__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Basic__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Basic__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ClimateControlSchedule__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ClimateControlSchedule__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ApplicationStatus__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ApplicationStatus__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1HidController__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1HidController__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueButton__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueButton__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanMode__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanMode__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Alarm__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Alarm__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanMode__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanMode__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiCmd__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiCmd__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ZWavePlusInfo__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ZWavePlusInfo__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Meter__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Meter__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1LogImpl__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1LogImpl__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleMultilevel__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleMultilevel__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Protection__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Protection__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Mutex__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Mutex__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueButton__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueButton__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueByte__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueByte__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Version__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Version__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ClimateControlSchedule__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ClimateControlSchedule__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Battery__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Battery__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLockLogging__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLockLogging__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueRaw__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueRaw__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1WakeUp__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1WakeUp__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchBinary__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchBinary__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ZWavePlusInfo__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ZWavePlusInfo__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1WakeUp__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1WakeUp__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Configuration__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Configuration__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorBinary__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorBinary__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatSetpoint__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatSetpoint__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueDecimal__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueDecimal__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Language__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Language__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanState__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanState__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchMultilevel__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchMultilevel__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1EnergyProduction__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1EnergyProduction__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Lock__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Lock__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Configuration__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Configuration__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ZWavePlusInfo__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ZWavePlusInfo__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueButton__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueButton__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Hail__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Hail__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ApplicationStatus__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ApplicationStatus__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatMode__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatMode__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SceneActivation__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SceneActivation__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Clock__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Clock__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorMultilevel__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorMultilevel__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Basic__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Basic__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1AssociationCommandConfiguration__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1AssociationCommandConfiguration__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueRaw__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueRaw__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1BasicWindowCovering__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1BasicWindowCovering__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Event__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Event__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueByte__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueByte__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLockLogging__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLockLogging__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1OZWException__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1OZWException__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueShort__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueShort__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Configuration__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Configuration__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Alarm__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Alarm__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Lock__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Lock__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleBinary__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleBinary__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1LogImpl__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1LogImpl__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLock__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLock__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ManufacturerSpecific__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ManufacturerSpecific__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstanceAssociation__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstanceAssociation__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1UserCode__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1UserCode__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstance__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstance__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1CentralScene__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1CentralScene__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1EnergyProduction__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1EnergyProduction__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Proprietary__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Proprietary__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SceneActivation__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SceneActivation__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Meter__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Meter__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DeviceResetLocally__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1DeviceResetLocally__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueSchedule__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueSchedule__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1CRC16Encap__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1CRC16Encap__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorMultilevel__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorMultilevel__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1TimeParameters__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1TimeParameters__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SerialController__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SerialController__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1BasicWindowCovering__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1BasicWindowCovering__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchAll__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchAll__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1CRC16Encap__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1CRC16Encap__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1HidController__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1HidController__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ClimateControlSchedule__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ClimateControlSchedule__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/search/all_19.js usr/share/doc/openzwave/api/html/search/functions_16.js
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MeterPulse__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1MeterPulse__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Mutex__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Mutex__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorAlarm__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorAlarm__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Security__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Security__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Association__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Association__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Battery__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Battery__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorBinary__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorBinary__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1NoOperation__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1NoOperation__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorMultilevel__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorMultilevel__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Hail__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Hail__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Event__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Event__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1UserCode__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1UserCode__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1TimeParameters__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1TimeParameters__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstance__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstance__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1TimeParameters__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1TimeParameters__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLock__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLock__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ManufacturerSpecific__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ManufacturerSpecific__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SerialController__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SerialController__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchAll__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchAll__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLock__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLock__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ApplicationStatus__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ApplicationStatus__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Color__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Color__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Color__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Color__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1AssociationCommandConfiguration__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1AssociationCommandConfiguration__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueString__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueString__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1AssociationCommandConfiguration__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1AssociationCommandConfiguration__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueShort__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueShort__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SerialController__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SerialController__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatSetpoint__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatSetpoint__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchBinary__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchBinary__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Meter__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Meter__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1OZWException__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1OZWException__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Alarm__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Alarm__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueString__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueString__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1CentralScene__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1CentralScene__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Protection__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Protection__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1OZWException__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1OZWException__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1NodeNaming__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1NodeNaming__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiCmd__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiCmd__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Thread__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Thread__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ControllerReplication__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ControllerReplication__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueByte__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueByte__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Indicator__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Indicator__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Indicator__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Indicator__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueList__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueList__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstanceAssociation__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstanceAssociation__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchBinary__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchBinary__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Security__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Security__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Thread__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Thread__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Language__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Language__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatSetpoint__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatSetpoint__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatMode__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatMode__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorAlarm__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorAlarm__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1CRC16Encap__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1CRC16Encap__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Thread__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Thread__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Powerlevel__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Powerlevel__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleMultilevel__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleMultilevel__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Version__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Version__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiCmd__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiCmd__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ControllerReplication__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ControllerReplication__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanMode__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanMode__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchMultilevel__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchMultilevel__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MeterPulse__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1MeterPulse__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchAll__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchAll__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Lock__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Lock__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Association__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Association__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DeviceResetLocally__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1DeviceResetLocally__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueBool__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueBool__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Security__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Security__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorBinary__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorBinary__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueDecimal__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueDecimal__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueInt__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueInt__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Battery__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Battery__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueInt__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueInt__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleMultilevel__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleMultilevel__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Proprietary__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Proprietary__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanState__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanState__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/image003.gif usr/share/doc/openzwave/images+css/image003.gif
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1LogImpl__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1LogImpl__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ControllerReplication__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ControllerReplication__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DeviceResetLocally__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1DeviceResetLocally__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Basic__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Basic__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatOperatingState__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatOperatingState__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Proprietary__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Proprietary__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Association__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Association__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueInt__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueInt__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1EnergyProduction__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1EnergyProduction__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleBinary__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleBinary__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstanceAssociation__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstanceAssociation__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1CentralScene__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1CentralScene__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueSchedule__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueSchedule__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1NodeNaming__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1NodeNaming__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueRaw__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueRaw__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Clock__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Clock__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueList__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueList__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueBool__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueBool__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Version__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Version__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueSchedule__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueSchedule__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ManufacturerSpecific__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ManufacturerSpecific__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Event__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Event__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Powerlevel__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Powerlevel__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SceneActivation__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SceneActivation__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatOperatingState__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatOperatingState__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueDecimal__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueDecimal__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Color__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Color__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Clock__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Clock__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Protection__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Protection__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MeterPulse__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1MeterPulse__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanState__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatFanState__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Language__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Language__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueString__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueString__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleBinary__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchToggleBinary__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Mutex__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1Mutex__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueShort__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueShort__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstance__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1MultiInstance__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/search/all_17.js usr/share/doc/openzwave/api/html/search/defines_16.js
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLockLogging__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1DoorLockLogging__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueBool__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueBool__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Indicator__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1Indicator__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1UserCode__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1UserCode__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1WakeUp__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1WakeUp__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchMultilevel__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1SwitchMultilevel__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueList__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ValueList__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatMode__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatMode__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1HidController__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1HidController__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1BasicWindowCovering__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1BasicWindowCovering__inherit__graph.map
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1NodeNaming__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1NodeNaming__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatOperatingState__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1ThermostatOperatingState__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1Powerlevel__coll__graph.md5 usr/share/doc/openzwave/api/html/classOpenZWave_1_1Powerlevel__inherit__graph.md5
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1NoOperation__coll__graph.png usr/share/doc/openzwave/api/html/classOpenZWave_1_1NoOperation__inherit__graph.png
X: libopenzwave-doc: duplicate-files usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorAlarm__coll__graph.map usr/share/doc/openzwave/api/html/classOpenZWave_1_1SensorAlarm__inherit__graph.map
I: libopenzwave1.3: spelling-error-in-binary usr/lib/x86_64-linux-gnu/libopenzwave.so.1.3 Recieved Received
N:
N: Lintian found a spelling error in the given binary. Lintian has a list
N: of common misspellings that it looks for. It does not have a dictionary
N: like a spelling checker does.
N:
N: If the string containing the spelling error is translated with the help
N: of gettext or a similar tool, please fix the error in the translations
N: as well as the English text to avoid making the translations fuzzy. With
N: gettext, for example, this means you should also fix the spelling
N: mistake in the corresponding msgids in the *.po files.
N:
N: You can often find the word in the source code by running:
N:
N: grep -rw <word> <source-tree>
N:
N: This tag may produce false positives for words that contain non-ASCII
N: characters due to limitations in strings.
N:
N: Severity: minor, Certainty: wild-guess
N:
N: Check: binaries, Type: binary, udeb
N:
X: libopenzwave1.3: shlib-calls-exit usr/lib/x86_64-linux-gnu/libopenzwave.so.1.3
N:
N: The listed shared library calls the C library exit() or _exit()
N: functions.
N:
N: In the case of an error, the library should instead return an
N: appropriate error code to the calling program which can then determine
N: how to handle the error, including performing any required clean-up.
N:
N: In most cases, removing the call should be discussed with upstream,
N: particularly as it may produce an ABI change.
N:
N: Severity: wishlist, Certainty: possible
N:
N: Check: shared-libs, Type: binary, udeb
N:
N: This tag is marked experimental, which means that the code that
N: generates it is not as well-tested as the rest of Lintian and might
N: still give surprising results. Feel free to ignore experimental tags
N: that do not seem to make sense, though of course bug reports are always
N: welcome.
N:

12
debian/changelog vendored
View file

@ -1,11 +1,5 @@
openzwave (1.4.79.gfaea7dd) unstable; urgency=low
openzwave (1.4+ds-1) unstable; urgency=medium
* Update to a 1.4.x snapshot.
* Initial release
-- Julien Wajsberg <julien@mozilla.com> Tue, 15 Mar 2016 15:45:00 +0100
openzwave (1.3.532.ge3defea) unstable; urgency=low
* Initial Debian packaging.
-- Lucas Nussbaum <lucas@debian.org> Sat, 07 Nov 2015 10:46:13 +0100
-- Justin Hammond <justin@dynam.ac> Thur, 16 July 2018 22:36:00 +0800

2
debian/compat vendored
View file

@ -1 +1 @@
9
10

48
debian/control vendored
View file

@ -1,32 +1,40 @@
Source: openzwave
Maintainer: Lucas Nussbaum <lucas@debian.org>
Maintainer: Justin Hammond <justin@dynam.ac>
Uploaders: Justin Hammond <justin@dynam.ac>
Section: devel
Priority: optional
Build-Depends: debhelper (>=9), dh-exec (>=0.2), g++ (>= 4.4), libudev-dev, libxml2-utils
Standards-Version: 3.9.6
Build-Depends: debhelper
, dh-exec (>=0.2)
, g++ (>= 4.4)
, quilt
, libudev-dev
, libxml2-utils
, gcc, g++
Standards-Version: 4.1.5
Homepage: http://www.openzwave.com/
Package: libopenzwave1.3
Package: libopenzwave1.4
Section: libs
Architecture: any
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: API to use a Z-Wave controller
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
protocol.
.
This package contains the library.
Package: libopenzwave1.3-dev
Package: libopenzwave1.4-dev
Section: libdevel
Depends: ${misc:Depends}, libopenzwave1.3 (= ${binary:Version})
Depends: ${misc:Depends}, libopenzwave1.4 (= ${binary:Version})
Suggests: libopenzwave-doc
Architecture: any
Description: header files for the openzwave library
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
protocol.
.
This package contains files for developing.
@ -36,9 +44,9 @@ Section: doc
Depends: ${misc:Depends}, libjs-jquery
Architecture: all
Description: documentation for the openzwave library
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
protocol.
.
This package contains documentation.
@ -46,9 +54,9 @@ Description: documentation for the openzwave library
Package: openzwave
Section: misc
Architecture: any
Depends: libopenzwave1.3 (>= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
Description: Sample Program for libopenzwave
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
Depends: libopenzwave1.4 (>= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
Description: Sample Program for libopenzwave
OpenZWave is an open-source, cross-platform library designed to enable
anyone to add support for Z-Wave home-automation devices to their
applications, without requiring any in depth knowledge of the Z-Wave
protocol.

49
debian/copyright vendored
View file

@ -1,8 +1,8 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: open-zwave
Upstream-Contact: Mal Lansell <openzwave@lansell.org>
Source: https://github.com/OpenZWave/open-zwave
Files-Excluded: debian, cpp/hidapi/windows
Files-Excluded: cpp/hidapi/windows debian
Files: *
Copyright: 2010 Mal Lansell <openzwave@lansell.org>
@ -10,11 +10,12 @@ Copyright: 2010 Mal Lansell <openzwave@lansell.org>
2014 Justin Hammond <justin@dynam.ac>
2010 Jason Frazier <frazierjason@gmail.com>
2010 Amer Harb <harb_amer@hotmail.com>
2015 Microsoft Corporation
License: LGPL-3+
Files: cpp/hidapi/*
Copyright: 2010, Alan Ott, Signal 11 Software
License: HIDAPI or GPL-3 or OZBSD or OriginalHIDAPI
License: HIDAPIlicense or GPL-3 or OZBSD or OriginalHIDAPI
Files: cpp/build/sh2ju.sh
Copyright: 2010 Manuel Carrasco Moñino. (manolo at apache.org)
@ -30,7 +31,7 @@ Copyright: Yves Berquin
2005, Tyge Lovset
License: TINY
License: HIDAPI
License: HIDAPIlicense
HIDAPI can be used under one of three licenses.
.
1. The GNU General Public License, version 3.0, in LICENSE-gpl3.txt (-> see GPL-3)
@ -96,6 +97,46 @@ License: AESBSD
This software is provided 'as is' with no explicit or implied warranties
in respect of its operation, including, but not limited to, correctness
and fitness for purpose.
Comment:
This license text is the official license text of Brian Gladman. The
term "is allowed without the payment of fees or royalties" shall make
it clear that this software is now available for free (as in beer)
and will always be.
The rest of the license takes care of the free as in speech.
Nevertheless Brian permits others to distribute the software under
other licenses. Especially he allowed me to distribute the software
under the following conditions, which is the normal BSD license without
mentioning fees:
> /*
> ---------------------------------------------------------------------------
> Copyright (c) 1998-2013, Brian Gladman, Worcester, UK. All rights reserved.
>
> The redistribution and use of this software (with or without changes)
> is allowed provided that:
>
> source code distributions include the above copyright notice, this
> list of conditions and the following disclaimer;
>
> binary distributions include the above copyright notice, this list
> of conditions and the following disclaimer in their documentation.
>
> This software is provided 'as is' with no explicit or implied warranties
> in respect of its operation, including, but not limited to, correctness
> and fitness for purpose.
> ---------------------------------------------------------------------------
> */
.
Hi Thorsten,
.
I am content with this and would be happy for you to replace my current
license with is one on any files that you wish to use.
.
If you need a more formal agreement from me, I am sure we will be able
to find a way of achieving this.
.
best regards,
.
Brian
License: TINY
This software is provided 'as-is', without any express or implied

1
debian/format vendored Normal file
View file

@ -0,0 +1 @@
3.0 (quilt)

View file

@ -7,5 +7,5 @@ Abstract: OpenZWave is a library which provides an API for applications
Section: Programming
Format: HTML
Index: /usr/share/doc/openzwave/default.htm
Files: /usr/share/doc/openzwave/*.htm
Index: /usr/share/doc/openzwave-1.4.0/default.htm
Files: /usr/share/doc/openzwave-1.4.0/*.htm

1
debian/libopenzwave-doc.install vendored Normal file
View file

@ -0,0 +1 @@
usr/share/doc/openzwave*/*

View file

@ -0,0 +1,2 @@
# this is not jquery but some stuff added by doxygen
libopenzwave-doc: embedded-javascript-library usr/share/doc/openzwave-1.4.0/api/html/jquery.js please use libjs-jquery

View file

@ -1,5 +0,0 @@
# this is a modified version
libopenzwave1.3: embedded-library usr/lib/*/libopenzwave.so.1.3: tinyxml
#due to arch- and optimisation-dependent symbols the symbols-file is not
#maintainable and FTBSs occur on lots of architectures
libopenzwave1.3: no-symbols-control-file

View file

@ -1,3 +1,3 @@
usr/lib/*/libopenzwave.so
usr/include/openzwave/*
usr/lib*/pkgconfig/libopenzwave.pc
cpp/tinyxml/*.h usr/include/openzwave/tinyxml

View file

@ -1 +1,2 @@
usr/lib/*/libopenzwave.so.*
#etc/openzwave/*

View file

@ -0,0 +1,8 @@
# this is a modified version
libopenzwave1.4: embedded-library usr/lib/*/libopenzwave.so.1.4: tinyxml
#due to arch- and optimisation-dependent symbols the symbols-file is not
#maintainable and FTBSs occur on lots of architectures
libopenzwave1.4: no-symbols-control-file
# this is a false positive
libopenzwave1.4: spelling-error-in-binary usr/lib/x86_64-linux-gnu/libopenzwave.so.1.4 LengH Length

26
debian/openzwave.dsc vendored Normal file
View file

@ -0,0 +1,26 @@
Format: 3.0 (quilt)
Source: openzwave
Binary: libopenzwave1.4, libopenzwave1.4-dev, libopenzwave-doc, openzwave
Architecture: any all
Version: 1.4+ds-4
Maintainer: justin@dynam.ac
Uploaders: justin@dynam.ac
Homepage: http://www.openzwave.com/
Standards-Version: 3.9.8
Vcs-Browser: https://anonscm.debian.org/cgit/debian-iot/openzwave.git
Vcs-Git: https://anonscm.debian.org/git/debian-iot/openzwave.git
Build-Depends: debhelper (>= 9), dh-exec (>= 0.2), g++ (>= 4.4), quilt, libudev-dev, libxml2-utils
Package-List:
libopenzwave-doc deb doc optional arch=all
libopenzwave1.4 deb libs optional arch=any
libopenzwave1.4-dev deb libdevel optional arch=any
openzwave deb misc optional arch=any
Checksums-Sha1:
65fafb40a2efd63cc4f54e42a3968e29aa6d97a9 948050 openzwave_1.4+ds.orig.tar.gz
b150e03f58aab805535db7cf3e666a9827c87b11 7600 openzwave_1.4+ds-4.debian.tar.xz
Checksums-Sha256:
e46322bbb7570003cb2d46b9062a02addc08effc45582e1221de6c7e4b30df56 948050 openzwave_1.4+ds.orig.tar.gz
8495ccaa5859b6378707d3bd2c4f76c12b72c245616e39621604ed53c44d42da 7600 openzwave_1.4+ds-4.debian.tar.xz
Files:
63e765f96014f6877bcd34b462855f01 948050 openzwave_1.4+ds.orig.tar.gz
04e053edf2899486f4b1dd23503e8fe9 7600 openzwave_1.4+ds-4.debian.tar.xz

26
debian/patches/cppflags.patch vendored Normal file
View file

@ -0,0 +1,26 @@
Author: Thorsten Alteholz <debian@alteholz.de>
Description: allow CPPFLAGS with spaces
Index: openzwave/Makefile
===================================================================
--- openzwave.orig/Makefile 2016-09-05 13:49:48.000000000 +0200
+++ openzwave/Makefile 2016-09-05 13:50:31.000000000 +0200
@@ -17,8 +17,8 @@
export PREFIX
all:
- CPPFLAGS=$(CPPFLAGS) $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS)
- CPPFLAGS=$(CPPFLAGS) $(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS)
+ LDFLAGS="$(LDFLAGS)" CPPFLAGS="$(CPPFLAGS)" $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS)
+ LDFLAGS="$(LDFLAGS)" CPPFLAGS="$(CPPFLAGS)" $(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS)
install:
$(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) $(MAKECMDGOALS)
@@ -29,7 +29,7 @@
$(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS) $(MAKECMDGOALS)
cpp/src/vers.cpp:
- CPPFLAGS=$(CPPFLAGS) $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) cpp/src/vers.cpp
+ LDFLAGS="$(LDFLAGS)" CPPFLAGS="$(CPPFLAGS)" $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) cpp/src/vers.cpp
check: xmltest

40
debian/patches/gcc8.patch vendored Normal file
View file

@ -0,0 +1,40 @@
Description: avoid FTBFS with gcc8
Author: Thorsten Alteholz <debian@alteholz.de>
#Index: openzwave-1.5+ds/cpp/build/support.mk
#===================================================================
#--- openzwave-1.5+ds.orig/cpp/build/support.mk 2018-07-09 13:53:57.470848046 +0200
#+++ openzwave-1.5+ds/cpp/build/support.mk 2018-07-09 13:53:57.458848046 +0200
#@@ -50,9 +50,9 @@
# CXX := $(CROSS_COMPILE)c++
# LD := $(CROSS_COMPILE)c++
# else
#-CC := $(CROSS_COMPILE)gcc
#-CXX := $(CROSS_COMPILE)g++
#-LD := $(CROSS_COMPILE)g++
#+CC := $(CROSS_COMPILE)gcc-8
#+CXX := $(CROSS_COMPILE)g++-8
#+LD := $(CROSS_COMPILE)g++-8
# endif
# ifeq ($(UNAME),Darwin)
# AR := libtool -static -o
Index: openzwave-1.5+ds/cpp/src/command_classes/DoorLockLogging.cpp
===================================================================
--- openzwave-1.5+ds.orig/cpp/src/command_classes/DoorLockLogging.cpp 2018-07-09 13:53:57.470848046 +0200
+++ openzwave-1.5+ds/cpp/src/command_classes/DoorLockLogging.cpp 2018-07-09 14:46:19.842753846 +0200
@@ -304,12 +304,14 @@
}
uint8 userid = (_data[10]);
uint8 usercodelength = (_data[11]);
- char usercode[254];
+ #define USERCODESIZE 254
+ char usercode[USERCODESIZE], tmpusercode[USERCODESIZE+4];
snprintf(usercode, sizeof(usercode), "UserCode:");
if (usercodelength > 0)
for (int i = 0; i < usercodelength; i++ )
{
- snprintf(usercode, sizeof(usercode), "%s %d", usercode, (int)_data[12+i]);
+ snprintf(tmpusercode, sizeof(tmpusercode), "%s %d", usercode, (int)_data[12+i]);
+ snprintf(usercode, USERCODESIZE, "%.253s",tmpusercode);
}
if (valid) {

77
debian/patches/hardening.patch vendored Normal file
View file

@ -0,0 +1,77 @@
Author: Thorsten Alteholz <debian@alteholz.de>
Description: introduce hardening flags to Makefile
Last-Updated: 2015-06-28
Index: openzwave/Makefile
===================================================================
--- openzwave.orig/Makefile 2015-06-28 15:06:55.419193182 +0200
+++ openzwave/Makefile 2015-06-28 15:06:55.415193189 +0200
@@ -17,8 +17,8 @@
export PREFIX
all:
- $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS)
- $(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS)
+ CPPFLAGS=$(CPPFLAGS) $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS)
+ CPPFLAGS=$(CPPFLAGS) $(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS)
install:
$(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) $(MAKECMDGOALS)
@@ -29,7 +29,7 @@
$(MAKE) -C $(top_srcdir)/cpp/examples/MinOZW/ -$(MAKEFLAGS) $(MAKECMDGOALS)
cpp/src/vers.cpp:
- $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) cpp/src/vers.cpp
+ CPPFLAGS=$(CPPFLAGS) $(MAKE) -C $(top_srcdir)/cpp/build/ -$(MAKEFLAGS) cpp/src/vers.cpp
check: xmltest
@@ -55,4 +55,4 @@
DIST_FORMATS ?= gzip
include $(top_srcdir)/distfiles.mk
-include $(top_srcdir)/dist.mk
\ No newline at end of file
+include $(top_srcdir)/dist.mk
Index: openzwave/cpp/build/Makefile
===================================================================
--- openzwave.orig/cpp/build/Makefile 2015-06-28 15:06:55.419193182 +0200
+++ openzwave/cpp/build/Makefile 2015-06-28 15:06:55.415193189 +0200
@@ -34,6 +34,7 @@
else
LDFLAGS += -Wl,-soname,libopenzwave.so.$(VERSION)
LIBS += -ludev
+CFLAGS += $(CPPFLAGS)
endif
#where to put the temporary library
Index: openzwave/cpp/examples/MinOZW/Makefile
===================================================================
--- openzwave.orig/cpp/examples/MinOZW/Makefile 2014-10-15 15:55:48.000000000 +0200
+++ openzwave/cpp/examples/MinOZW/Makefile 2015-06-28 15:08:06.855047366 +0200
@@ -10,8 +10,8 @@
.PHONY: default clean
-DEBUG_CFLAGS := -Wall -Wno-format -ggdb -DDEBUG
-RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-format -O3
+DEBUG_CFLAGS := -Wall -Wno-format -ggdb -DDEBUG $(CPPFLAGS)
+RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-format -O3 $(CPPFLAGS)
DEBUG_LDFLAGS := -g
Index: openzwave/cpp/tinyxml/Makefile
===================================================================
--- openzwave.orig/cpp/tinyxml/Makefile 2014-10-15 15:55:46.000000000 +0200
+++ openzwave/cpp/tinyxml/Makefile 2015-06-28 15:07:34.591113079 +0200
@@ -25,8 +25,8 @@
AR := ar rc
RANLIB := ranlib
-DEBUG_CFLAGS := -Wall -Wno-format -g -DDEBUG
-RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-format -O3
+DEBUG_CFLAGS := -Wall -Wno-format -g -DDEBUG $(CPPFLAGS)
+RELEASE_CFLAGS := -Wall -Wno-unknown-pragmas -Wno-format -O3 $(CPPFLAGS)
LIBS :=

4
debian/patches/series vendored Normal file
View file

@ -0,0 +1,4 @@
#hardening.patch
#spelling.patch
#cppflags.patch
#gcc8.patch

104
debian/patches/spelling.patch vendored Normal file
View file

@ -0,0 +1,104 @@
Author: Thorsten Alteholz <debian@alteholz.de>
Description: take care of spelling errors
Last-Updated: 2015-06-06
Index: openzwave/cpp/src/command_classes/DoorLock.cpp
===================================================================
--- openzwave.orig/cpp/src/command_classes/DoorLock.cpp 2016-09-05 12:31:52.000000000 +0200
+++ openzwave/cpp/src/command_classes/DoorLock.cpp 2016-09-05 12:31:52.000000000 +0200
@@ -320,7 +320,7 @@
m_timeoutsecs = _data[4];
break;
default:
- Log::Write(LogLevel_Warning, GetNodeId(), "Recieved a Unsupported Door Lock Config Report %d", _data[1]);
+ Log::Write(LogLevel_Warning, GetNodeId(), "Received a Unsupported Door Lock Config Report %d", _data[1]);
}
if( ValueByte* value = static_cast<ValueByte*>( GetValue( _instance, Value_System_Config_OutsideHandles ) ) )
Index: openzwave/cpp/src/command_classes/DoorLockLogging.cpp
===================================================================
--- openzwave.orig/cpp/src/command_classes/DoorLockLogging.cpp 2016-09-05 12:31:52.000000000 +0200
+++ openzwave/cpp/src/command_classes/DoorLockLogging.cpp 2016-09-05 12:31:52.000000000 +0200
@@ -281,7 +281,7 @@
if (EventType >= DoorLockEventType_Max)
EventType = DoorLockEventType_Max;
- Log::Write (LogLevel_Info, GetNodeId(), "Recieved a DoorLockLogging Record %d which is \"%s\"", _data[1], c_DoorLockEventType[EventType-1]);
+ Log::Write (LogLevel_Info, GetNodeId(), "Received a DoorLockLogging Record %d which is \"%s\"", _data[1], c_DoorLockEventType[EventType-1]);
if( ValueByte* value = static_cast<ValueByte*>( GetValue( _instance, Value_GetRecordNo ) ) )
{
Index: openzwave/cpp/src/command_classes/MultiInstance.cpp
===================================================================
--- openzwave.orig/cpp/src/command_classes/MultiInstance.cpp 2016-09-05 12:31:52.000000000 +0200
+++ openzwave/cpp/src/command_classes/MultiInstance.cpp 2016-09-05 12:31:52.000000000 +0200
@@ -435,7 +435,7 @@
*/
if ((m_ignoreUnsolicitedMultiChannelCapabilityReport && (node->GetCurrentQueryStage() != Node::QueryStage_Instances))
&& !dynamic && m_endPointCommandClasses.size() > 0) {
- Log::Write(LogLevel_Error, GetNodeId(), "Recieved a Unsolicited MultiChannelEncap when we are not in QueryState_Instances");
+ Log::Write(LogLevel_Error, GetNodeId(), "Received a Unsolicited MultiChannelEncap when we are not in QueryState_Instances");
return;
}
@@ -685,7 +685,7 @@
pCommandClass->HandleMsg( &_data[4], _length-4, instance );
}
} else {
- Log::Write(LogLevel_Error, GetNodeId(), "Recieved a MultiChannelEncap for endpoint %d for Command Class %d, which we can't find", endPoint, commandClassId);
+ Log::Write(LogLevel_Error, GetNodeId(), "Received a MultiChannelEncap for endpoint %d for Command Class %d, which we can't find", endPoint, commandClassId);
}
}
}
Index: openzwave/cpp/src/Driver.cpp
===================================================================
--- openzwave.orig/cpp/src/Driver.cpp 2016-09-05 12:31:52.000000000 +0200
+++ openzwave/cpp/src/Driver.cpp 2016-09-05 12:31:52.000000000 +0200
@@ -4398,7 +4398,7 @@
Log::Write(LogLevel_Info, _nodeId, "Network Key Not Set - Secure Option is %s", secure ? "required" : "not required");
m_nodes[_nodeId]->SetProtocolInfo(_protocolInfo, _length);
}
- Log::Write(LogLevel_Info, _nodeId, "Initilizing Node. New Node: %s (%s)", static_cast<Node *>(m_nodes[_nodeId])->IsAddingNode() ? "true" : "false", newNode ? "true" : "false");
+ Log::Write(LogLevel_Info, _nodeId, "Initializing Node. New Node: %s (%s)", static_cast<Node *>(m_nodes[_nodeId])->IsAddingNode() ? "true" : "false", newNode ? "true" : "false");
}
//-----------------------------------------------------------------------------
Index: openzwave/cpp/src/Node.cpp
===================================================================
--- openzwave.orig/cpp/src/Node.cpp 2016-09-05 12:31:52.000000000 +0200
+++ openzwave/cpp/src/Node.cpp 2016-09-05 12:31:52.000000000 +0200
@@ -1843,7 +1843,7 @@
if( CommandClass* pCommandClass = GetCommandClass( _data[5] ) )
{
if (pCommandClass->IsSecured() && !encrypted) {
- Log::Write( LogLevel_Warning, m_nodeId, "Recieved a Clear Text Message for the CommandClass %s which is Secured", pCommandClass->GetCommandClassName().c_str());
+ Log::Write( LogLevel_Warning, m_nodeId, "Received a Clear Text Message for the CommandClass %s which is Secured", pCommandClass->GetCommandClassName().c_str());
bool drop = true;
Options::Get()->GetOptionAsBool("EnforceSecureReception", &drop);
if (drop) {
Index: openzwave/cpp/src/ZWSecurity.cpp
===================================================================
--- openzwave.orig/cpp/src/ZWSecurity.cpp 2016-09-05 12:31:52.000000000 +0200
+++ openzwave/cpp/src/ZWSecurity.cpp 2016-09-05 12:31:52.000000000 +0200
@@ -284,7 +284,7 @@
PrintHex("Raw", e_buffer, e_length);
if (e_length < 19) {
- Log::Write(LogLevel_Warning, _sendingNode, "Recieved a Encrypted Message that is too Short. Dropping it");
+ Log::Write(LogLevel_Warning, _sendingNode, "Received a Encrypted Message that is too Short. Dropping it");
return false;
}
Index: openzwave/cpp/src/command_classes/Security.cpp
===================================================================
--- openzwave.orig/cpp/src/command_classes/Security.cpp 2016-01-11 16:02:44.000000000 +0100
+++ openzwave/cpp/src/command_classes/Security.cpp 2016-09-05 12:33:06.000000000 +0200
@@ -295,7 +295,7 @@
case SecurityCmd_MessageEncap:
case SecurityCmd_MessageEncapNonceGet:
{
- Log::Write(LogLevel_Warning, GetNodeId(), "Recieved a Security Message that should have been handled in the Driver");
+ Log::Write(LogLevel_Warning, GetNodeId(), "Received a Security Message that should have been handled in the Driver");
break;
}
default:

27
debian/rules vendored
View file

@ -6,16 +6,26 @@ CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS:=$(shell dpkg-buildflags --get CFLAGS)
CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS)
LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
#XXX: MORECPPFLAGS=-fPIE -pie
# add CFLAGS here as upstream make does not care about them and we need -Wformat
MORECPPFLAGS=$(CFLAGS)
MORELDFLAGS:=-Wl,-z,now
ifndef DESTDIR
export CC=gcc-8
export CXX=g++-8
ifndef DESTDIR
DESTDIR=$(CURDIR)/debian/tmp/
endif
DEBVERS := $(shell dpkg-parsechangelog | sed -n -e 's/^Version: //p')
VERSION := $(shell echo '$(DEBVERS)' | sed -e 's/^[\[:digit:]]*://' -e 's/[-].*//')
MAJOR := $(shell echo '$(VERSION)' | awk -F . {'print $$1'})
MINOR := $(shell echo '$(VERSION)' | awk -F . {'print $$2'})
MINOR := $(shell echo '$(VERSION)' | awk -F . {'print $$2'} | awk -F '+' {'print $$1'})
REV := $(shell echo '$(VERSION)' | awk -F . {'print $$3'})
ifeq ($(strip $(REV)),)
REV:=0
endif
DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
LIBDIR := /usr/lib/$(DEB_HOST_MULTIARCH)/
@ -23,17 +33,22 @@ LIBDIR := /usr/lib/$(DEB_HOST_MULTIARCH)/
%:
dh $@
override_dh_clean:
rm -f ozw_config doxygen.log
dh_clean
override_dh_auto_build:
CPPFLAGS=$(CPPFLAGS) VERSION_MAJ=$(MAJOR) VERSION_MIN=$(MINOR) VERSION_REV=$(REV) PREFIX=/usr SYSCONFDIR=/etc/openzwave instlibdir=$(LIBDIR) make
echo "Build version: >$(MAJOR).$(MINOR).$(REV)<"
LDFLAGS="$(LDFLAGS) $(MORELDFLAGS)" CPPFLAGS="$(CPPFLAGS) $(MORECPPFLAGS)" VERSION_MAJ=$(MAJOR) VERSION_MIN=$(MINOR) VERSION_REV=$(REV) PREFIX=/usr SYSCONFDIR=/etc/openzwave instlibdir=$(LIBDIR) make
override_dh_auto_install:
VERSION_MAJ=$(MAJOR) VERSION_MIN=$(MINOR) VERSION_REV=$(REV) DESTDIR=$(DESTDIR) PREFIX=/usr SYSCONFDIR=/etc/openzwave instlibdir=$(LIBDIR) make install
# install docs in /usr/share/doc/openzwave/, not openzwave-VERSION
install -d debian/libopenzwave-doc/usr/share/doc
mv debian/tmp/usr/share/doc/openzwave-1* debian/libopenzwave-doc/usr/share/doc/openzwave
###mv debian/tmp/usr/share/doc/openzwave-1* debian/libopenzwave-doc/usr/share/doc/openzwave
# install config files in /etc/
install -d debian/libopenzwave1.3/etc
mv debian/tmp/usr/etc/openzwave debian/libopenzwave1.3/etc/
install -d debian/libopenzwave1.4/etc
mv debian/tmp/usr/etc/openzwave debian/libopenzwave1.4/etc/
update_debian_version:
sed -i '1 s/(.*)/($(shell git describe --long --tags --dirty | sed s/-/./g | sed s/^v// ))/' debian/changelog

1
debian/shlibs.libopenzwave1.4 vendored Normal file
View file

@ -0,0 +1 @@
libopenzwave 1 libopenzwave (>= 1.2)

Some files were not shown because too many files have changed in this diff Show more