[openwebnet] adding support for central unit (#12062)

* - read 'standAlone' flag from thing
- send standAlone flag to own4j for setting the temperature on central unit
- own4j 0.7.1 required
* added localmode and central unit thing
* added localOffSet channel to readme.md
* added remoteControl, batteryStatus and modeCentralUnit for bus_thermo_cu
* added weekly and scenarios to modeCentralUnit
* - manual setting of a zone to T temperature (with persistence in central unit)
- manual setting of central unit to T temperature (all zones)
- set the central unit in OFF mode (all zones)
- set central unit in thermal protection (all zones)
- set central unit in antifreeze mode (all zones)
- weekly program activation command (all zones)
- scenario activation command (all zones)
* renamed cu's channels name
* removed unused channel 'modeCentralUnit" from readme
* fix #12298
* - add configuration section (where) for BusThermoCentralUnit
- strings ("OK", "KO", "ENABLED", "DISABLED" converted to constants
- fix typo

Signed-off-by: Conte Andrea <andrea@conte.com>

Co-authored-by: M Valla <12682715+mvalla@users.noreply.github.com>
This commit is contained in:
Conte Andrea
2022-02-27 19:11:45 +01:00
committed by GitHub
parent 339df2cb3a
commit b2765a3895
8 changed files with 414 additions and 81 deletions

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<thing:thing-descriptions bindingId="openwebnet"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0"
xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd">
<!-- Thing for BUS Thermo Central Unit -->
<thing-type id="bus_thermo_cu">
<supported-bridge-type-refs>
<bridge-type-ref id="bus_gateway"/>
</supported-bridge-type-refs>
<label>Thermo Central Unit</label>
<description>A OpenWebNet BUS/SCS configured thermo Central Unit.</description>
<channels>
<!-- read only -->
<channel id="remoteControl" typeId="remoteControl"/>
<channel id="batteryStatus" typeId="batteryStatus"/>
<!-- read/write -->
<channel id="setpointTemperature" typeId="setpointTemperature"/>
<channel id="mode" typeId="modeCentralUnit"/>
<channel id="weeklyProgram" typeId="weeklyProgramCentralUnit"/>
<channel id="scenarioProgram" typeId="scenarioProgramCentralUnit"/>
</channels>
<properties>
<property name="vendor">BTicino/Legrand</property>
<property name="model">BTicino Central Unit 3550 (99 zones) or BTI-L/NT/HC/4695 (4 zones) </property>
<property name="ownDeviceType">430</property>
</properties>
<representation-property>ownId</representation-property>
<config-description>
<parameter name="where" type="text" readOnly="true">
<label>OpenWebNet Address (where)</label>
<description>The Central Unit can only assume where=0.</description>
<default>0</default>
</parameter>
</config-description>
</thing-type>
</thing:thing-descriptions>

View File

@@ -19,6 +19,7 @@
<channel id="conditioningValves" typeId="conditioningValves"/>
<channel id="heatingValves" typeId="heatingValves"/>
<channel id="actuators" typeId="actuators"/>
<channel id="localOffset" typeId="localOffset"/>
<!-- read/write -->
<channel id="setpointTemperature" typeId="setpointTemperature"/>
<channel id="function" typeId="function"/>

View File

@@ -171,6 +171,104 @@
</state>
</channel-type>
<channel-type id="localOffset" advanced="true">
<item-type>String</item-type>
<label>Local Offset</label>
<description>Local knob status (read only)</description>
<state readOnly="true">
<options>
<option value="OFF">OFF</option>
<option value="PROTECTION">PROTECTION</option>
<option value="PLUS_3">+3</option>
<option value="PLUS_2">+2</option>
<option value="PLUS_1">+1</option>
<option value="NORMAL">0</option>
<option value="MINUS_1">-1</option>
<option value="MINUS_2">-2</option>
<option value="MINUS_3">-3</option>
</options>
</state>
</channel-type>
<channel-type id="modeCentralUnit">
<item-type>String</item-type>
<label>Central Unit Mode</label>
<description>Set mode of the Central Unit (read/write)</description>
<state>
<options>
<option value="MANUAL">Manual</option>
<option value="PROTECTION">Protection</option>
<option value="OFF">Off</option>
<option value="WEEKLY">Weekly</option>
<option value="SCENARIO">Scenario</option>
</options>
</state>
</channel-type>
<channel-type id="weeklyProgramCentralUnit">
<item-type>Number</item-type>
<label>Weekly Program Number</label>
<description>Set weekly program number for the Central Unit, valid only with Central Unit mode = "WEEKLY" (read/write)</description>
<state>
<options>
<option value="1">Program 1</option>
<option value="2">Program 2</option>
<option value="3">Program 3</option>
</options>
</state>
</channel-type>
<channel-type id="scenarioProgramCentralUnit">
<item-type>Number</item-type>
<label>Scenario Program Number</label>
<description>Set scenario program number for the Central Unit, valid only with Central Unit mode = "SCENARIO"
(read/write)</description>
<state>
<options>
<option value="1">Program 1</option>
<option value="2">Program 2</option>
<option value="3">Program 3</option>
<option value="4">Program 4</option>
<option value="5">Program 5</option>
<option value="6">Program 6</option>
<option value="7">Program 7</option>
<option value="8">Program 8</option>
<option value="9">Program 9</option>
<option value="10">Program 10</option>
<option value="11">Program 11</option>
<option value="12">Program 12</option>
<option value="13">Program 13</option>
<option value="14">Program 14</option>
<option value="15">Program 15</option>
<option value="16">Program 16</option>
</options>
</state>
</channel-type>
<channel-type id="remoteControl" advanced="true">
<item-type>String</item-type>
<label>Remote Control</label>
<description>Central Unit Remote Control status (read only)</description>
<state readOnly="true">
<options>
<option value="DISABLED">DISABLED</option>
<option value="ENABLED">ENABLED</option>
</options>
</state>
</channel-type>
<channel-type id="batteryStatus" advanced="true">
<item-type>String</item-type>
<label>Battery Status</label>
<description>Central Unit Battery status (read only)</description>
<state readOnly="true">
<options>
<option value="OK">OK</option>
<option value="KO">KO</option>
</options>
</state>
</channel-type>
<!-- Energy channels -->
<channel-type id="power">
<item-type>Number:Power</item-type>