<?xml version="1.0" encoding="utf-8"?>
<Templates format="2" protocolVersion="83">
  <Template id="aead7285-47a2-41d8-ba91-6a3b303d4073" revision="1.0">
    <SuggestedCCUParameters>
      <TcpPort>502</TcpPort>
      <ReadWriteTimeout>1000</ReadWriteTimeout>
    </SuggestedCCUParameters>
    <Name>alpha innotec Luxtronik 2.1 SHI</Name>
    <CcuModel>ModbusTcpCCU</CcuModel>
    <Producer>alpha innotec</Producer>
    <Model>Luxtronik 2.1 SHI</Model>
    <Description>Smart Home Interface pro tepelne cerpadlo Luxtronik 2.1 — Modbus TCP.</Description>
    <Category>1</Category>
    <ImportParameters>
      <Parameter>
        <Id>IpAddress</Id>
        <Name>IP adresa</Name>
        <Value>192.168.1.116</Value>
      </Parameter>
      <Parameter>
        <Id>SlaveId</Id>
        <Name>Modbus Slave ID</Name>
        <Value>1</Value>
      </Parameter>
    </ImportParameters>
    <Module>
      <Name>Luxtronik 2.1 SHI</Name>
      <Id>-1</Id>
      <Model>ModbusModule</Model>
      <DeviceProperties>
        <IpAddress>$[IpAddress]</IpAddress>
        <Port>502</Port>
        <SlaveId>$[SlaveId]</SlaveId>
        <MaxPrefetchGroupSize>100</MaxPrefetchGroupSize>
        <ReadScript>VAR err := MODBUSR(A, 10201, UInt16);
IF(err != 0) ADDERROR(1, &quot;Chyba systemu c. &quot; + TOSTRING(err)); END
VAR state := MODBUSR(A, 10002, UInt16);
IF(state = 0) ADDINFO(0, &quot;Stav: Vypnuto&quot;); END
IF(state = 1) ADDINFO(1, &quot;Stav: Topeni&quot;); END
IF(state = 2) ADDINFO(2, &quot;Stav: TUV&quot;); END
IF(state = 3) ADDINFO(3, &quot;Stav: Ohrev MVS&quot;); END
IF(state = 5) ADDINFO(5, &quot;Stav: Pohotovost&quot;); END
IF(state = 7) ADDINFO(7, &quot;Stav: Externi zdroj&quot;); END
VAR gen := MODBUSR(A, 10000, UInt16);
IF(GETBIT(gen, 0)) ADDINFO(10, &quot;Aktivni zdroj: VD1&quot;); END
IF(GETBIT(gen, 1)) ADDINFO(11, &quot;Aktivni zdroj: VD2&quot;); END
IF(GETBIT(gen, 2)) ADDINFO(12, &quot;Aktivni zdroj: ZWE1&quot;); END
IF(GETBIT(gen, 3)) ADDINFO(13, &quot;Aktivni zdroj: ZWE2&quot;); END
IF(GETBIT(gen, 4)) ADDINFO(14, &quot;Aktivni zdroj: ZWE3&quot;); END</ReadScript>
        <ServiceAttributesFormulas>[{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Stav systemu&quot;},&quot;ReadFormula&quot;:&quot;SWITCH(MODBUSR(A, 10002, UInt16), 0, \&quot;Vypnuto\&quot;, 1, \&quot;Topeni\&quot;, 2, \&quot;TUV\&quot;, 3, \&quot;Ohrev MVS\&quot;, 4, \&quot;Chlazeni\&quot;, 5, \&quot;Pohotovost\&quot;, 6, \&quot;Pasivni chlazeni\&quot;, 7, \&quot;Externi zdroj\&quot;, \&quot;Neznamy\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Pozadavek topeni&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(A, 10003, UInt16) != 0, \&quot;Aktivni\&quot;, \&quot;Neaktivni\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Pozadavek TUV&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(A, 10004, UInt16) != 0, \&quot;Aktivni\&quot;, \&quot;Neaktivni\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Topeni povoleno&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(D, 10000, Bool), \&quot;Ano\&quot;, \&quot;Ne\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;TUV povoleno&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(D, 10001, Bool), \&quot;Ano\&quot;, \&quot;Ne\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Mixovaci okruh MC1 — topeni povoleno&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(D, 10006, Bool), \&quot;Ano\&quot;, \&quot;Ne\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Pumpa solanky&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(A, 10350, UInt16) != 0, \&quot;Bezi\&quot;, \&quot;Stoji\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Obehova pumpa MC1&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(A, 10351, UInt16) != 0, \&quot;Bezi\&quot;, \&quot;Stoji\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Obehova pumpa topeniho okruhu&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(A, 10354, UInt16) != 0, \&quot;Bezi\&quot;, \&quot;Stoji\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Obehova pumpa TUV&quot;},&quot;ReadFormula&quot;:&quot;IF(MODBUSR(A, 10355, UInt16) != 0, \&quot;Bezi\&quot;, \&quot;Stoji\&quot;)&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Verze softwaru&quot;},&quot;ReadFormula&quot;:&quot;\&quot;V\&quot; + TOSTRING(MODBUSR(A, 10400, UInt16)) + \&quot;.\&quot; + TOSTRING(MODBUSR(A, 10401, UInt16)) + \&quot;.\&quot; + TOSTRING(MODBUSR(A, 10402, UInt16))&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Provozni hodiny TC&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10404, UInt32)) + \&quot; h\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Provozni hodiny topeni&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10406, UInt32)) + \&quot; h\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Provozni hodiny TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10408, UInt32)) + \&quot; h\&quot;&quot;}]</ServiceAttributesFormulas>
        <ServiceActionsScripts>[{&quot;ActionDefinition&quot;:{&quot;Name&quot;:&quot;Nastavit limit prikonu&quot;,&quot;NumericParameters&quot;:[{&quot;FriendlyName&quot;:&quot;Limit&quot;,&quot;Abbreviation&quot;:&quot;Lim&quot;,&quot;IsFloat&quot;:true,&quot;MinValue&quot;:0,&quot;MaxValue&quot;:30}],&quot;BoolParameters&quot;:[],&quot;EnumParameters&quot;:[]},&quot;Script&quot;:&quot;MODBUSWNE(SH, 10041, UInt16, Lim * 10);&quot;}]</ServiceActionsScripts>
      </DeviceProperties>
      <Devices>
        <Device>
          <Name>Teplota zpetneho potrubi</Name>
          <Id>-2</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10100, UInt16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Zadana teplota zpetneho potrubi</Name>
          <Id>-3</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10101, UInt16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Teplota akumulacniho zasobiku (zpetna)</Name>
          <Id>-4</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10102, UInt16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Teplota primarnich potrubi (flow)</Name>
          <Id>-5</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10105, UInt16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Venkovni teplota</Name>
          <Id>-6</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>60000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10108, Int16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Prumerna venkovni teplota (24 h)</Name>
          <Id>-7</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>60000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10109, Int16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Teplota vstupu zdroje tepla</Name>
          <Id>-8</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10110, Int16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Teplota vystupu zdroje tepla</Name>
          <Id>-9</Id>
          <Model>ModbusTemperatureSensor</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <ReadTemperature>MODBUSR(A, 10111, Int16) / 10</ReadTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Teple uzit. voda — regulace</Name>
          <Id>-10</Id>
          <Model>ModbusThermostat</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>10000</InternalPollInterval>
            <ServiceAttributesFormulas>[{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Min. teplota TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10122, Int16) / 10, \&quot;F1\&quot;) + \&quot; °C\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Max. teplota TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10123, Int16) / 10, \&quot;F1\&quot;) + \&quot; °C\&quot;&quot;}]</ServiceAttributesFormulas>
            <ReadCurrentTemperature>MODBUSR(A, 10120, Int16) / 10</ReadCurrentTemperature>
            <ReadDesiredTemperature>MODBUSR(A, 10121, UInt16) / 10</ReadDesiredTemperature>
            <WriteDesiredTemperature>MODBUSWNE(SH, 10006, UInt16, Se * 10)</WriteDesiredTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Rezim nastaveni TUV</Name>
          <Id>-11</Id>
          <Model>ModbusMultiValueSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <ReadSwitchState>MODBUSR(H, 10005, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10005, UInt16, Mu)</WriteSwitchState>
            <Value0>0</Value0>
            <Value0Index>0</Value0Index>
            <Value0Name>Bez vlivu</Value0Name>
            <Value0IconId>4</Value0IconId>
            <Value1>1</Value1>
            <Value1Index>1</Value1Index>
            <Value1Name>Zadana teplota</Value1Name>
            <Value1IconId>1</Value1IconId>
            <Value2>2</Value2>
            <Value2Index>2</Value2Index>
            <Value2Name>Teplotni offset</Value2Name>
            <Value2IconId>7</Value2IconId>
            <Value3>3</Value3>
            <Value3Index>3</Value3Index>
            <Value3Name>Uroven provozu</Value3Name>
            <Value3IconId>8</Value3IconId>
            <Value4Index>68</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Blokace TUV</Name>
          <Id>-12</Id>
          <Model>ModbusSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <OnStateIconId>60</OnStateIconId>
            <OffStateIconId>61</OffStateIconId>
            <OnStateName>Zablokováno</OnStateName>
            <OffStateName>Normální provoz</OffStateName>
            <ReadSwitchState>MODBUSR(H, 10051, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10051, UInt16, St)</WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Mimorizadny ohrev TUV</Name>
          <Id>-13</Id>
          <Model>ModbusSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <OnStateIconId>60</OnStateIconId>
            <OffStateIconId>61</OffStateIconId>
            <OnStateName>Zapnuto</OnStateName>
            <OffStateName>Vypnuto</OffStateName>
            <ServiceAttributesFormulas>[{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Cilova teplota mimoradneho TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10500, Int16) / 10, \&quot;F1\&quot;) + \&quot; °C\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Trvani mimoradneho TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10501, Int16)) + \&quot; min\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Zbyvajici cas TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10502, Int16)) + \&quot; min\&quot;&quot;}]</ServiceAttributesFormulas>
            <ReadSwitchState>MODBUSR(H, 10071, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10071, UInt16, St)</WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Rezim nastaveni topeni</Name>
          <Id>-14</Id>
          <Model>ModbusMultiValueSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <ReadSwitchState>MODBUSR(H, 10000, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10000, UInt16, Mu)</WriteSwitchState>
            <Value0>0</Value0>
            <Value0Index>0</Value0Index>
            <Value0Name>Bez vlivu</Value0Name>
            <Value0IconId>4</Value0IconId>
            <Value1>1</Value1>
            <Value1Index>1</Value1Index>
            <Value1Name>Zadana zpetna teplota</Value1Name>
            <Value1IconId>1</Value1IconId>
            <Value2>2</Value2>
            <Value2Index>2</Value2Index>
            <Value2Name>Teplotni offset</Value2Name>
            <Value2IconId>7</Value2IconId>
            <Value3>3</Value3>
            <Value3Index>3</Value3Index>
            <Value3Name>Uroven provozu</Value3Name>
            <Value3IconId>8</Value3IconId>
            <Value4Index>68</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Topeni — celkovy rezim</Name>
          <Id>-15</Id>
          <Model>ModbusMultiValueSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <ReadSwitchState>MODBUSR(H, 10065, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10065, UInt16, Mu)</WriteSwitchState>
            <Value0>0</Value0>
            <Value0Index>0</Value0Index>
            <Value0Name>Individualni (dle okruhu)</Value0Name>
            <Value0IconId>5</Value0IconId>
            <Value1Index>65</Value1Index>
            <Value2>2</Value2>
            <Value2Index>2</Value2Index>
            <Value2Name>Globalni offset</Value2Name>
            <Value2IconId>7</Value2IconId>
            <Value3>3</Value3>
            <Value3Index>3</Value3Index>
            <Value3Name>Globalni uroven</Value3Name>
            <Value3IconId>8</Value3IconId>
            <Value4Index>68</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Blokace topeni</Name>
          <Id>-16</Id>
          <Model>ModbusSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <OnStateIconId>60</OnStateIconId>
            <OffStateIconId>61</OffStateIconId>
            <OnStateName>Zablokováno</OnStateName>
            <OffStateName>Normální provoz</OffStateName>
            <ReadSwitchState>MODBUSR(H, 10050, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10050, UInt16, St)</WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Mixovaci okruh MC1 — teplota flow</Name>
          <Id>-17</Id>
          <Model>ModbusThermostat</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>10000</InternalPollInterval>
            <ServiceAttributesFormulas>[{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Min. teplota flow MC1&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10142, Int16) / 10, \&quot;F1\&quot;) + \&quot; °C\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Max. teplota flow MC1&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10143, Int16) / 10, \&quot;F1\&quot;) + \&quot; °C\&quot;&quot;}]</ServiceAttributesFormulas>
            <ReadCurrentTemperature>MODBUSR(A, 10140, Int16) / 10</ReadCurrentTemperature>
            <ReadDesiredTemperature>MODBUSR(A, 10141, Int16) / 10</ReadDesiredTemperature>
            <WriteDesiredTemperature>MODBUSWNE(SH, 10011, UInt16, Se * 10)</WriteDesiredTemperature>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Rezim nastaveni MC1</Name>
          <Id>-18</Id>
          <Model>ModbusMultiValueSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <ReadSwitchState>MODBUSR(H, 10010, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10010, UInt16, Mu)</WriteSwitchState>
            <Value0>0</Value0>
            <Value0Index>0</Value0Index>
            <Value0Name>Bez vlivu</Value0Name>
            <Value0IconId>4</Value0IconId>
            <Value1>1</Value1>
            <Value1Index>1</Value1Index>
            <Value1Name>Zadana teplota flow</Value1Name>
            <Value1IconId>1</Value1IconId>
            <Value2>2</Value2>
            <Value2Index>2</Value2Index>
            <Value2Name>Teplotni offset</Value2Name>
            <Value2IconId>7</Value2IconId>
            <Value3>3</Value3>
            <Value3Index>3</Value3Index>
            <Value3Name>Uroven provozu</Value3Name>
            <Value3IconId>8</Value3IconId>
            <Value4Index>68</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Spotrebovana elektricka energie</Name>
          <Id>-19</Id>
          <Model>ModbusElectricityMeter</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>30000</InternalPollInterval>
            <ReadTotalConsumption>MODBUSR(A, 10310, Int32) / 10</ReadTotalConsumption>
            <ReadDemand>MODBUSR(A, 10301, UInt16) / 10</ReadDemand>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Tepelna energie — topeni</Name>
          <Id>-20</Id>
          <Model>ModbusElectricityMeter</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>30000</InternalPollInterval>
            <ServiceAttributesFormulas>[{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Spotreba el. energie — topeni&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10312, Int32) / 10, \&quot;F1\&quot;) + \&quot; kWh\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Spotreba el. energie — TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10314, Int32) / 10, \&quot;F1\&quot;) + \&quot; kWh\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Tepelna energie — TUV&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10324, Int32) / 10, \&quot;F1\&quot;) + \&quot; kWh\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Tepelna energie celkem&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10320, Int32) / 10, \&quot;F1\&quot;) + \&quot; kWh\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Predikce min. prikonu&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10302, UInt16) / 10, \&quot;F1\&quot;) + \&quot; kW\&quot;&quot;}]</ServiceAttributesFormulas>
            <ReadTotalConsumption>MODBUSR(A, 10322, Int32) / 10</ReadTotalConsumption>
            <ReadDemand>MODBUSR(A, 10300, Int16) / 10</ReadDemand>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>Limit prikonu (Smart Grid / EVU)</Name>
          <Id>-21</Id>
          <Model>ModbusMultiValueSwitch</Model>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>5000</InternalPollInterval>
            <ServiceAttributesFormulas>[{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Aktualni limit prikonu&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(H, 10041, UInt16) / 10, \&quot;F1\&quot;) + \&quot; kW\&quot;&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Signal EVU1&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10360, UInt16))&quot;},{&quot;AttributeDefinition&quot;:{&quot;Name&quot;:&quot;Signal EVU2&quot;},&quot;ReadFormula&quot;:&quot;TOSTRING(MODBUSR(A, 10361, UInt16))&quot;}]</ServiceAttributesFormulas>
            <ServiceActionsScripts>[{&quot;ActionDefinition&quot;:{&quot;Name&quot;:&quot;Nastavit limit prikonu&quot;,&quot;NumericParameters&quot;:[{&quot;FriendlyName&quot;:&quot;Limit kW&quot;,&quot;Abbreviation&quot;:&quot;Lim&quot;,&quot;IsFloat&quot;:true,&quot;MinValue&quot;:0,&quot;MaxValue&quot;:30}],&quot;BoolParameters&quot;:[],&quot;EnumParameters&quot;:[]},&quot;Script&quot;:&quot;MODBUSWNE(SH, 10041, UInt16, Lim * 10);&quot;}]</ServiceActionsScripts>
            <ReadSwitchState>MODBUSR(H, 10040, UInt16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(SH, 10040, UInt16, Mu)</WriteSwitchState>
            <Value0>0</Value0>
            <Value0Index>0</Value0Index>
            <Value0Name>Bez omezeni</Value0Name>
            <Value0IconId>5</Value0IconId>
            <Value1>1</Value1>
            <Value1Index>1</Value1Index>
            <Value1Name>Mekke omezeni (FV prebytky)</Value1Name>
            <Value1IconId>6</Value1IconId>
            <Value2>2</Value2>
            <Value2Index>2</Value2Index>
            <Value2Name>Tvrde omezeni (§14a)</Value2Name>
            <Value2IconId>57</Value2IconId>
            <Value3Index>67</Value3Index>
            <Value4Index>68</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
          </DeviceProperties>
        </Device>
      </Devices>
    </Module>
  </Template>
</Templates>
