@Hans_B instructions are not clear enough and his post has some missing lines - xml
tags.
For modifying the jar you should read @5iver’s post – Modify a zwave binding jar to add/change a zwave device while waiting for a build
Here are the lines to add to spirit_0.0.xml
:
<channel id="basic_mode" typeId="eurotronic_spirit_00_000_basic_mode">
<label>Basic mode</label>
<properties>
<property name="binding:*:DecimalType">COMMAND_CLASS_BASIC</property>
</properties>
</channel>
and
<channel-type id="eurotronic_spirit_00_000_basic_mode">
<item-type>Number</item-type>
<label>Basic Mode</label>
<description>Sets the Basic mode</description>
<category>Temperature</category>
<state pattern="%s">
<options>
<option value="15">Off</option>
<option value="0">Economy Heat</option>
<option value="255">Heat</option>
<option value="240">Full Power</option>
<option value="254">Manual</option>
</options>
</channel-type>
I’m also attaching the full modified file: spirit_0_0.xml (12.3 KB)
After compiling the jar (jar -uf org.openhab.binding.zwave-2.5.0.M1.jar ./ESH-INF/thing/eurotronic/spirit_0_0.xml
as per @5iver’s instructions), I uninstalled the zwave binding and put the new jar in /usr/share/openhab2/addons/
, removed the thing and discovered it again.
The new basic mode
channel was detected:
Here a re the items used – it’s still in the test group :
Group gSpirit1 (gTest)
Dimmer Spirit1_Dimmer "Spirit1_Dimmer [%d %%]" (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:switch_dimmer"}
Number:Temperature Spirit1_CurrentTemperature (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:sensor_temperature"}
Number Spirit1_ExternalTemperature (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:sensor_report"}
Number Spirit1_ThermostatMode (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:thermostat_mode"}
Number:Temperature Spirit1_SetpointHeat (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:thermostat_setpoint_heating"}
Number:Temperature Spirit1_SetpointEnergyHeat (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:thermostat_setpoint_heating_econ"}
Switch Spirit1_AlarmSystem (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:alarm_system"}
Switch Spirit1_AlarmPower (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:alarm_power"}
Number Spirit1_BatteryLevel (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:battery-level"}
Number Spirit1_BasicMode (gSpirit1) {channel="zwave:device:1628a3e05cc:node85:basic_mode"}
in openHAB’s console send the new mode to the basic_mode
channel:
openhab> smarthome:send Spirit1_BasicMode 254
and here is the result:
2019-10-31 16:28:35.004 [nt.ItemStatePredictedEvent] - Spirit1_BasicMode predicted to become 254
2019-10-31 16:28:35.006 [vent.ItemStateChangedEvent] - Spirit1_BasicMode changed from NULL to 254
2019-10-31 16:28:36.872 [vent.ItemStateChangedEvent] - Spirit1_Dimmer changed from 38 to 20
Then, I tried the direct control of the valve and set the dimmer to some value - in this case 67
:
2019-10-31 16:28:58.676 [ome.event.ItemCommandEvent] - Item 'Spirit1_Dimmer' received command 67
2019-10-31 16:28:58.677 [nt.ItemStatePredictedEvent] - Spirit1_Dimmer predicted to become 67
2019-10-31 16:28:58.684 [vent.ItemStateChangedEvent] - Spirit1_Dimmer changed from 20 to 67
2019-10-31 16:29:00.887 [vent.ItemStateChangedEvent] - Spirit1_ThermostatMode changed from 1 to 31
2019-10-31 16:42:55.038 [vent.ItemStateChangedEvent] - Spirit1_CurrentTemperature changed from 24.17 °C to 24.62 °C
The display of the TRV is displaying the valve opening percent, not the setpoint temp:
EDIT: HERE is the modified 2.5 M1 jar I’m using now