Skip to content

Commit

Permalink
Merge pull request #1 from benfrancis/upgrade-and-patch
Browse files Browse the repository at this point in the history
Rebase against latest upstream and patch to fix build workflow of zwave-adapter
  • Loading branch information
benfrancis authored Apr 19, 2024
2 parents 76e21d8 + 9df50bb commit 7ab65dc
Show file tree
Hide file tree
Showing 533 changed files with 26,658 additions and 3,184 deletions.
2 changes: 1 addition & 1 deletion .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# These are supported funding model platforms

#github: [Fishwaldo, nechry]
github: [Fishwaldo, nechry]
patreon: # Replace with a single Patreon username
open_collective: ozw
ko_fi: # Replace with a single Ko-fi username
Expand Down
30 changes: 30 additions & 0 deletions .github/XMLTestMatcher.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"problemMatcher": [
{
"owner": "xmltest",
"pattern": [
{
"regexp": "^(.*\/open.zwave\/)(.*):([0-9]*):.?(.*)$",
"fromPath": 1,
"file": 2,
"line": 3,
"message": 4
}
]
},
{
"owner": "ConfigDatabase",
"pattern": [
{
"regexp": "^Errors: [0-9]*\\. \\(Please Correct before Submitting to OZW\\)$"
},
{
"regexp": "^(.*):.(.*)$",
"file": 1,
"message": 2,
"loop": true
}
]
}
]
}
20 changes: 20 additions & 0 deletions .github/workflows/ConfigCheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Test Config Files

on:
pull_request:
paths:
- 'config/**'

jobs:
ConfigTest:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: install dependancies
run: sudo apt update && sudo apt-get install libxml2-utils libxml-simple-perl
- name: make xmltest
run: |
echo "::add-matcher::.github/XMLTestMatcher.json"
make xmltest
21 changes: 0 additions & 21 deletions .github/workflows/PRTest.yml

This file was deleted.

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -55,3 +55,4 @@ ozw_config
ozw_config
gtest-main
cpp/src/command_classes/\.DS_Store
.DS_Store
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,10 @@ xmltest: $(XMLLINT)
@$(XMLLINT) --noout --schema $(top_srcdir)/config/NotificationCCTypes.xsd $(top_srcdir)/config/NotificationCCTypes.xml
@$(XMLLINT) --noout --schema $(top_srcdir)/config/SensorMultiLevelCCTypes.xsd $(top_srcdir)/config/SensorMultiLevelCCTypes.xml
@$(XMLLINT) --noout --schema $(top_srcdir)/config/device_configuration.xsd $(top_srcdir)/config/*/*.xml
-@cpp/build/testconfig.pl
@cpp/build/testconfig.pl
endif
fulltest:
-@cpp/build/testconfig.pl --printwarnings
@cpp/build/testconfig.pl --printwarnings



Expand Down
21 changes: 20 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,14 @@
![Open-ZWave Library](https://github.com/OpenZWave/open-zwave-web/raw/master/gfx/OZW_SF.png)
==================

*Last Updated: 4 October 2019*
*Last Updated: 17 November 2022*

* * *

## NOTICE: This project is no longer being maintained. :warning:
openzwave has no more maintainers, are there any motivated to continue the development of the library?

## Introduction

Our goal is to create free software library that interfaces with Z-Wave controllers, allowing anyone to create applications to control devices on a Z-Wave network, without requiring in-depth knowledge of the Z-Wave protocol. OpenZWave is not about creating Z-Wave devices (nodes). The project consists of the main library, written in C++ and wrappers and supporting projects, to interface different languages and protocol(s).

Expand Down Expand Up @@ -102,6 +109,8 @@ Become a financial contributor and help us sustain our community. [[Contribute](

<a href="https://opencollective.com/ozw"><img src="https://opencollective.com/ozw/individuals.svg?width=890"></a>

(We also have many users that support us via Github Sponsors program!)

#### Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/ozw/contribute)]
Expand All @@ -116,3 +125,13 @@ Support this project with your organization. Your logo will show up here with a
<a href="https://opencollective.com/ozw/organization/7/website"><img src="https://opencollective.com/ozw/organization/7/avatar.svg"></a>
<a href="https://opencollective.com/ozw/organization/8/website"><img src="https://opencollective.com/ozw/organization/8/avatar.svg"></a>
<a href="https://opencollective.com/ozw/organization/9/website"><img src="https://opencollective.com/ozw/organization/9/avatar.svg"></a>

### Sponsors

The Following Organisations Sponsor OpenZWave Development by donating hardware for testing and support

<a href="https://www.aeotec.com/"><img height="47px" width="152px" src="https://aeotec.com/images/aeotec-logo.svg"></a>

<a href="https://qubino.com/"><img height="47px" width="152px" src="https://qubino.com/wp-content/uploads/2019/02/qubino_logo.png"></a>

<a href="https://www.heatit.com/"><img height="47px" width="152px" src="http://utvikling.thermofloor.no/TFWP/wp-content/uploads/2017/07/Heatit_Controls_RGB.png"></a>
123 changes: 123 additions & 0 deletions config/2gig/ct200.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
<Product Revision="1" xmlns="https://github.com/OpenZWave/open-zwave">
<MetaData>
<MetaDataItem name="Name">Vivint Element</MetaDataItem>
<MetaDataItem name="Description">The Vivint Element Smart Thermostat has an elegantly simple design making it easy for anyone to use. It's hidden display comes to life when you need it, providing clear information and simple controls. This simplicity purposefully masks Element's true intelligence. Element works in concert with the Vivint SkyControl system, leveraging an unmatched understanding of home routines and activity levels. Element automatically and dynamically adjusts to match home activities and ensure a personalized balance of comfort and energy savings. </MetaDataItem>
<MetaDataItem name="OzwInfoPage">http://www.openzwave.com/device-database/0098:0022:c801</MetaDataItem>
<MetaDataItem name="ProductPic">images/2gig/ct200.png</MetaDataItem>
<MetaDataItem id="0022" name="ZWProductPage" type="c801">https://products.z-wavealliance.org/products/1678</MetaDataItem>
<MetaDataItem id="0022" name="FrequencyName" type="c801">U.S. / Canada / Mexico </MetaDataItem>
<MetaDataItem id="0022" name="Identifier" type="c801">CT200</MetaDataItem>
<ChangeLog>
<Entry author="srirams" date="11 Nov 2020" revision="1">Initial</Entry>
</ChangeLog>
<MetaDataItem id="0022" name="ZWProductPage" type="c801">https://products.z-wavealliance.org/products/1678/</MetaDataItem>
<MetaDataItem name="ResetDescription">Press and hold the side button until you reach settings. Navigate to Installer / Reset. Use this procedure only in the event that the network primary controller is missing or otherwise inoperable.</MetaDataItem>
<MetaDataItem id="0022" name="Identifier" type="c801">CT200</MetaDataItem>
<MetaDataItem name="ExclusionDescription">Same process as inclusion.</MetaDataItem>
<MetaDataItem name="ProductManual">https://products.z-wavealliance.org/ProductManual/File?folder=&amp;filename=MarketCertificationFiles/1678/CT200_UserGuide_20160308.pdf</MetaDataItem>
<MetaDataItem id="0022" name="FrequencyName" type="c801">U.S. / Canada / Mexico</MetaDataItem>
<MetaDataItem name="WakeupDescription">When included into a Z-Wave network on battery power, this device is a FLiRS device. The Thermostat will wake up for communication when it receives a valid Z-Wave beam. </MetaDataItem>
<MetaDataItem name="InclusionDescription">Hold the side button until you reach settings. Navigate to Installer / Network</MetaDataItem>
</MetaData>
<!--
Radio Thermostat Company of America CT200 Thermostat manual available at:
https://products.z-wavealliance.org/ProductManual/File?folder=&filename=MarketCertificationFiles/1678/CT200_UserGuide_20160308.pdf
Additional information:
https://products.z-wavealliance.org/products/1678
-->
<CommandClass id="112">
<Value genre="config" instance="1" index="1" value="2" label="Temperature Reporting Threshold (8-bit)" units="" size="1" min="0" max="4" type="list">
<Help>This value determines the reporting threshold</Help>
<Item value="0" label="Disabled"/>
<Item value="1" label="Also Disabled"/>
<Item value="2" label="0.5 degrees F"/>
<Item value="3" label="1.0 degrees F"/>
<Item value="4" label="1.5 degrees F"/>
</Value>
<Value genre="config" instance="1" index="2" value="0" label="HVAC Settings" units="" size="4" min="0" max="0" type="int">
<Help>Retrieves the HVAC Settings</Help>
</Value>
<Value genre="config" instance="1" index="3" value="0" label="Utility Lock" units="" size="1" min="0" max="255" type="byte">
<Help>Enable or Disable the Utility Lock</Help>
</Value>
<Value genre="config" instance="1" index="4" value="0" label="C-Wire/Battery Status" units="" size="1" min="0" max="0" type="list">
<Help>Query power which source is in use</Help>
<Item value="1" label="Powered by C-Wire"/>
<Item value="2" label="Powered by battery"/>
</Value>
<Value genre="config" instance="1" index="5" value="2" label="Humidity Reporting Threshold" units="" size="1" min="0" max="3" type="byte">
<Help>This value determines the reporting threshold</Help>
</Value>
<Value genre="config" instance="1" index="6" value="0" label="Auxiliary/Emergency" units="" size="1" min="0" max="1" type="byte">
<Help>Auxiliary / Emergency Heat Pump Mode</Help>
</Value>
<Value genre="config" instance="1" index="7" value="2" label="Thermostat Swing Temp" units="degrees Fahrenheit" size="1" min="1" max="8" type="list">
<Help>Temperature spread between the on and off temperatures</Help>
<Item value="1" label="0.5 degrees Fahrenheit"/>
<Item value="2" label="1.0 degrees Fahrenheit"/>
<Item value="3" label="1.5 degrees Fahrenheit"/>
<Item value="4" label="2.0 degrees Fahrenheit"/>
<Item value="5" label="2.5 degrees Fahrenheit"/>
<Item value="6" label="3.0 degrees Fahrenheit"/>
<Item value="7" label="3.5 degrees Fahrenheit"/>
<Item value="8" label="4.0 degrees Fahrenheit"/>
</Value>
<Value genre="config" instance="1" index="8" value="4" label="Thermostat Diff Temp" units="" size="1" min="4" max="12" type="list">
<Help>How far off from target temp before turning on unit</Help>
<Item value="4" label="2.0 degrees Fahrenheit"/>
<Item value="6" label="3.0 degrees Fahrenheit"/>
<Item value="8" label="4.0 degrees Fahrenheit"/>
<Item value="10" label="5.0 degrees Fahrenheit"/>
<Item value="12" label="6.0 degrees Fahrenheit"/>
</Value>
<Value genre="config" instance="1" index="9" value="2" label="Thermostat Recovery Mode" units="" size="1" min="1" max="2" type="list">
<Help>Bring a space back to a normal occupied temp</Help>
<Item value="1" label="Fast Recovery Mode"/>
<Item value="2" label="Economy Recovery Mode"/>
</Value>
<Value genre="config" instance="1" index="11" value="1" label="Simple UI Mode" units="" size="1" min="0" max="1" type="list">
<Help>Toggle Simple UI Mode</Help>
<Item value="0" label="Disabled"/>
<Item value="1" label="Enabled"/>
</Value>
<Value genre="config" instance="1" index="12" value="0" label="Multicast" units="" size="1" min="0" max="1" type="list">
<Help>Toggle Multicast Mode</Help>
<Item value="0" label="Disabled"/>
<Item value="1" label="Enabled"/>
</Value>
<Value genre="config" instance="1" index="13" value="1" label="Main Display Selection" units="" size="1" min="1" max="2" type="list">
<Help>Control which info is displayed in the main display area</Help>
<Item value="1" label="Show Temperature"/>
<Item value="2" label="Show (unknown)"/>
</Value>
<Value genre="config" instance="1" index="14" value="2" label="Save Energy Mode Type" units="" size="1" min="1" max="255" type="byte">
<Help>Save Energy Mode behavior</Help>
</Value>
<Value genre="config" instance="1" index="15" value="0" label="Fan Timer" units="" size="1" min="0" max="60" type="byte">
<Help>Activate Fan w/ auto shutoff timer</Help>
</Value>
<Value genre="config" instance="1" index="17" value="0" label="Temperature Calibration" units="" size="1" min="-6" max="6" type="byte">
<Help>Temperature Calibration / Offset</Help>
</Value>
<Value genre="config" instance="1" index="18" value="0" label="Display Units" units="" size="1" min="0" max="1" type="list">
<Help>Celsius or Fahrenheit</Help>
<Item value="0" label="Fahrenheit"/>
<Item value="1" label="Celcius"/>
</Value>
</CommandClass>

<!-- This thermostat's setpoint descriptions are 0 based, not 1 -->
<CommandClass id="67">
<Compatibility>
<Base>0</Base>
<AltTypeInterpretation>true</AltTypeInterpretation>
</Compatibility>
</CommandClass>

<CommandClass id="96">
<Compatibility>
<MapRootToEndpoint>true</MapRootToEndpoint>
</Compatibility>
</CommandClass>

</Product>
32 changes: 18 additions & 14 deletions config/2gig/ct32.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Product Revision="5" xmlns="https://github.com/OpenZWave/open-zwave">
<Product Revision="6" xmlns="https://github.com/OpenZWave/open-zwave">
<MetaData>
<MetaDataItem name="OzwInfoPage">http://www.openzwave.com/device-database/0098:0100:2002</MetaDataItem>
<MetaDataItem name="ProductPic">images/2gig/ct32.png</MetaDataItem>
Expand All @@ -16,6 +16,7 @@
<Entry author="Justin Hammond - [email protected]" date="03 May 2019" revision="3">Initial Metadata Import from Z-Wave Alliance Database - https://products.z-wavealliance.org/products/1046/xml</Entry>
<Entry author="Justin Hammond - [email protected]" date="08 May 2019" revision="4">Updated Metadata Import from Z-Wave Alliance Database - https://products.z-wavealliance.org/products/1330/xml</Entry>
<Entry author="Keith Pine - [email protected]" date="05 Dec 2019" revision="5">Force root instance to map to first endpoint via compat flag MapRootToEndpoint</Entry>
<Entry author="Keith Pine - [email protected]" date="21 Jan 2020" revision="6">Force Setpoint Interpretion A and update some config parameters.</Entry>
</ChangeLog>
</MetaData>
<!--
Expand All @@ -26,6 +27,7 @@
<CommandClass id="67">
<Compatibility>
<Base>0</Base>
<AltTypeInterpretation>false</AltTypeInterpretation>
</Compatibility>
</CommandClass>
<CommandClass id="96">
Expand All @@ -34,7 +36,7 @@
</Compatibility>
</CommandClass>
<CommandClass id="112">
<Value genre="config" index="1" label="Temperature Reporting Threshold" max="4" min="0" size="1" type="list" units="" value="0">
<Value genre="config" index="1" label="Temperature Reporting Threshold" max="4" min="0" size="1" type="list" units="" value="2">
<Help>
The Temperature Reporting Threshold Configuration Set Command sets the reporting threshold for changes in the ambient temperature as detected by the thermostat.
</Help>
Expand Down Expand Up @@ -115,9 +117,7 @@
<Item label="HVAC: Normal, Aux Stages: 2, Aux Setup: Elec, Heat Pump Stages: 2, Cool Stages: 2" value="19005954"/>
<!-- 0x01,0x2,0x2,0x02,0x02 -->
<Item label="HVAC: Heat Pump, Aux Stages: 2, Aux Setup: Elec, Heat Pump Stages: 2, Cool Stages: 2" value="35783170"/>


<!-- 0x02,0x2,0x2,0x02,0x02 -->
<!-- 0x02,0x2,0x2,0x02,0x02 -->
</Value>
<Value genre="config" index="3" label="Utility Lock" max="1" min="0" size="1" type="list" units="" value="0">
<Help>
Expand All @@ -135,9 +135,9 @@
<Item label="C-Wire" value="1"/>
<Item label="Battery" value="2"/>
</Value>
<Value genre="config" index="5" label="Humidity Reporting Threshold" max="3" min="0" size="1" type="list" units="" value="0">
<Value genre="config" index="5" label="Humidity Reporting Threshold" max="3" min="0" size="1" type="list" units="" value="2">
<Help>
The Temperature Reporting Threshold Configuration Set Command sets the reporting threshold for changes in the ambient temperature as detected by the thermostat.
The Humidity Reporting Threshold Configuration Set Command sets the reporting threshold for changes in the ambient humidity as detected by the thermostat.
</Help>
<Item label="Disabled" value="0"/>
<Item label="3% RH" value="1"/>
Expand All @@ -155,13 +155,17 @@
<Item label="Disabled" value="0"/>
<Item label="Enabled" value="1"/>
</Value>
<Value genre="config" index="7" label="Thermostat Swing Temperature" max="8" min="1" size="1" type="list" units="" value="0">
<Value genre="config" index="7" label="Thermostat Swing Temperature" max="8" min="1" size="1" type="list" units="" value="2">
<Help>
The Auxiliary/Emergency configuration command enables or disables auxiliary/emergency heating in the thermostat. Auxiliary/emergency heating is only available if the thermostat is configured in heat pump mode and with at least one stage of auxiliary heating. This command enables auxiliary / emergency heating when the thermostat is in Auto mode. The Thermostat Set Mode command with mode Auxiliary/Emergency Heat will enable emergency heating but only if the thermostat is in Heat
mode. This command should only be used on thermsotats that support Auxiliary/Emergency Heat thermostat mode.
The Temperate Swing (HVAC cycling rate) is the desired variance in temperature between the thermostat setting and the room temperature required before the heating or cooling system will turn on.
</Help>
<Item label="0.05F" value="1"/>
<Item label="0.1F" value="2"/>
<Item label="0.5F" value="1"/>
<Item label="1.0F" value="2"/>
<Item label="1.5F" value="3"/>
<Item label="2.0F" value="4"/>
<Item label="2.5F" value="5"/>
<Item label="3.0F" value="6"/>
<Item label="3.5F" value="7"/>
<Item label="4.0F" value="8"/>
</Value>
<Value genre="config" index="8" label="Thermostat Differential Temperature" max="32767" min="2" size="2" type="list" units="F" value="4">
Expand Down Expand Up @@ -217,14 +221,14 @@
</Value>
<Value genre="config" index="11" label="Simple UI Mode" max="1" min="0" size="1" type="list" units="" value="1">
<Help>
Simple UI Mode Enable/Disable
If the value is set to Disable then Normal Mode is enabled. If the value is set to Enable then Simple Mode is enabled.
</Help>
<Item label="Enable" value="0"/>
<Item label="Disable" value="1"/>
</Value>
<Value genre="config" index="12" label="Multicast" max="1" min="0" size="1" type="byte" units="" value="0">
<Help>
Multicasting Enable/Disable
If set to 0, multicast is disabled, if set to 1, will enable the multicast.
</Help>
</Value>
</CommandClass>
Expand Down
Loading

0 comments on commit 7ab65dc

Please sign in to comment.