diff --git a/bundles/org.openhab.binding.somfytahoma/README.md b/bundles/org.openhab.binding.somfytahoma/README.md index 360182de3..3683ad6e1 100644 --- a/bundles/org.openhab.binding.somfytahoma/README.md +++ b/bundles/org.openhab.binding.somfytahoma/README.md @@ -41,6 +41,7 @@ Any home automation system based on the OverKiz API is potentially supported. - action groups (scenarios which can execute predefined Tahoma group of steps, e.g. send to all roller shutters DOWN command, one by one) - thermostats (read status and battery level) - water heater system (monitor and control) +- Yutaki heat pump consisting of heat pump, heating control and hot water tank (controls and a lot of states; it is tested with components RAS-4WHNPE, RWM-4.ONE, DHWT-300S-3.0H2E) Both Somfy Tahoma and Somfy Connexoon gateways have been confirmed working. @@ -60,82 +61,116 @@ Please see the example below. ## Channels -| Thing | Channel | Note | -|-------------------------------------------------------------------------------|------------------------------|-----------------------------------------------------------------------------------------------------------------------------| -| bridge | N.A | bridge does not expose any channel | -| gateway | status | status of your gateway | -| gateway | scenarios | used to run the scenarios defined in the cloud portal | -| gate | gate_command | used for controlling your gate (open, close, stop, pedestrian) | -| gate | gate_state | get state of your gate (open, closed, pedestrian) | -| gate | gate_position | get position (0-100%) of your gate (where supported) | -| roller shutter, screen, venetian blind, garage door, awning, pergola, curtain | control | device controller which reacts to commands UP/DOWN/ON/OFF/OPEN/CLOSE/MY/STOP + closure 0-100 | -| window | control | device controller which reacts to commands UP/DOWN/ON/OFF/OPEN/CLOSE/STOP + closure 0-100 | -| silent roller shutter | silent_control | similar to control channel but in silent mode | -| venetian blind, adjustable slats roller shutter, bioclimatic pergola | orientation | percentual orientation of the blind's slats, it can have value 0-100. For IO Homecontrol devices only (non RTS) | -| venetian blind, adjustable slats roller shutter | closure_orientation | percentual closure and orientation of the blind's slats, it can have value 0-100. For IO Homecontrol devices only (non RTS) | -| adjustable slats roller shutter | rocker | used for setting the rocker position of the roller shutter, the only position allowing the slats control | -| bioclimatic pergola | slats | slats state (open/closed) | -| bioclimatic pergola | pergola_command | used for controlling biclimatic pergola (closeSlats, openSlats, stop) | -| action group | execute_action | switch which reacts to ON command and triggers the predefined Tahoma action | -| onoff, light | switch | reacts to standard ON/OFF commands | -| dimmer light | light_intensity | sets/gets intensity of the dimmer light or ON/OFF | -| smoke sensor, occupancy sensor, contact sensor & water sensor | contact | normal value is CLOSE, changes to OPEN when detection triggered | -| smoke sensor, occupancy sensor, contact sensor & water sensor | sensor_defect | indicates the health of the sensor (dead, lowBatter, maintenanceRequired, noDefect) | -| smoke sensor | radio_battery | maintenance radio part battery state (low, normal) | -| smoke sensor | sensor_battery | maintenance sensor part battery state (absence, low, normal) | -| smoke sensor | short_check | triggering the smoke sensor's short check | -| smoke sensor | long_check | triggering the smoke sensor's long check | -| light sensor | luminance | light luminance value in luxes | -| electricity sensor | energy_consumption | energy consumption value in watts | -| humidity sensor | humidity | current relative humidity | -| dock | battery_status | indicates running on battery (yes/no) | -| dock | battery_level | remaining battery percentage | -| dock | siren_status | used for controlling and getting siren state (on, off, cyclic) | -| dock | short_beep | testing of dock's siren - short beep | -| dock | long_beep | testing of dock's siren - long beep | -| siren | battery | battery level full/low/normal/verylow | -| siren | onoff | controlling siren status ON/OFF | -| siren | memorized_volume | setting memorized volume (normal/highest) | -| pod | cyclic_button | pod cyclic button state | -| pod | battery_status | pod battery status state | -| pod | lighting_led_pod_mode | lighting LED pod mod state | -| interior alarm | alarm_command | used for sending commands to Somfy alarm device | -| interior alarm | intrusion_control | used for alarm external intrusion controlling | -| interior alarm, myfox alarm | alarm_state | state of the Somfy alarm | -| interior alarm | target_alarm_state | target state of the Somfy alarm | -| interior alarm, myfox alarm | intrusion_state | intrusion state of the Somfy alarm | -| external alarm | active_zones_state | state of external alarm active zones | -| door lock | lock | switch representing unlocked/locked state | -| door lock | open | switch representing open/close state | -| on/off heating system | target_heating_level | target heating level (off, eco, comfort, frostprotection) | -| heating system | current_temperature | current temperature of the heating system | -| heating system | current_state | current state of the heating system | -| heating system, valve heating system, thermostat | target_temperature | target temperature of the heating system | -| heating system, valve heating system, thermostat | battery_level | battery level of the heating system | -| valve heating system, thermostat | derogation_heating_mode | derogation heating mode of the thermostat (away, freeze, manual, ...) | -| valve heating system, thermostat | derogated_target_temperature | target temperature of the heating system | -| valve heating system | current_heating_mode | current heating mode of the thermostatic valve | -| valve heating system | open_closed_valve | current open/closed state of the thermostatic valve | -| valve heating system | operating mode | operating mode of the thermostatic valve | -| thermostat | heating_mode | standard heating mode of the thermostat (away, freeze, manual, ...) | -| thermostat | derogation_activation | derogation activation state (inactive, active) | -| exterior heating system | heating_level | heating level of the exterior heating system or ON/OFF | -| temperature sensor | temperature | temperature reported by the sensor | -| myfox camera, myfox alarm | cloud_status | cloud connection status | -| myfox camera | shutter | controlling of the camera shutter | -| myfox alarm | myfox_alarm_command | used for sending commands to Somfy Myfox alarm device | -| waterheatersystem | middlewater_temperature | Number:Temperature indicating the temperature of the water at the middle of the heater | -| waterheatersystem | boost_mode | Switch allowing to enable or disable the booster. When switching to ON, by default, the Boost duration will be set for 1 day.| -| waterheatersystem | away_mode | Defines if away mode is On or Off (no water heating) | -| waterheatersystem | away_mode_duration | Defines if away mode the duration in days. | -| waterheatersystem | boost_mode_duration | The duration of the Boost mode in days. Valid from 1 to 7. | -| waterheatersystem | power_heatpump | Current consumption/power of the heatpump in Watts. | -| waterheatersystem | power_heatelec | Current consumption/power of the electric resistance in Watts. | -| waterheatersystem | showers | Virtual channel, representing the number of desired showers - between 3 to 5. It actually switches the desired temperature to 50.0, 54.5 or 62.0 Celcius degrees. Please note that in ECO mode, only 3 and 4 showers are allowed. | -| waterheatersystem | heat_pump_operating_time | Number of hours the heatpump has been operating | -| waterheatersystem | electric_booster_operating_time | number of hours the electric booster has been operating. | -| waterheatersystem | mode | The current mode of the boiler. Can be: autoMode / manualEcoInactive / manualEcoActive | -| waterheatersystem | target_temperature | Water target temperature in degrees. Read only. Temperature desired is managed through mode and showers channels. | +| Thing | Channel | Note | +|-------------------------------------------------------------------------------|---------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| bridge | N.A | bridge does not expose any channel | +| gateway | status | status of your gateway | +| gateway | scenarios | used to run the scenarios defined in the cloud portal | +| gate | gate_command | used for controlling your gate (open, close, stop, pedestrian) | +| gate | gate_state | get state of your gate (open, closed, pedestrian) | +| gate | gate_position | get position (0-100%) of your gate (where supported) | +| roller shutter, screen, venetian blind, garage door, awning, pergola, curtain | control | device controller which reacts to commands UP/DOWN/ON/OFF/OPEN/CLOSE/MY/STOP + closure 0-100 | +| window | control | device controller which reacts to commands UP/DOWN/ON/OFF/OPEN/CLOSE/STOP + closure 0-100 | +| silent roller shutter | silent_control | similar to control channel but in silent mode | +| venetian blind, adjustable slats roller shutter, bioclimatic pergola | orientation | percentual orientation of the blind's slats, it can have value 0-100. For IO Homecontrol devices only (non RTS) | +| venetian blind, adjustable slats roller shutter | closure_orientation | percentual closure and orientation of the blind's slats, it can have value 0-100. For IO Homecontrol devices only (non RTS) | +| adjustable slats roller shutter | rocker | used for setting the rocker position of the roller shutter, the only position allowing the slats control | +| bioclimatic pergola | slats | slats state (open/closed) | +| bioclimatic pergola | pergola_command | used for controlling biclimatic pergola (closeSlats, openSlats, stop) | +| action group | execute_action | switch which reacts to ON command and triggers the predefined Tahoma action | +| onoff, light | switch | reacts to standard ON/OFF commands | +| dimmer light | light_intensity | sets/gets intensity of the dimmer light or ON/OFF | +| smoke sensor, occupancy sensor, contact sensor & water sensor | contact | normal value is CLOSE, changes to OPEN when detection triggered | +| smoke sensor, occupancy sensor, contact sensor & water sensor | sensor_defect | indicates the health of the sensor (dead, lowBatter, maintenanceRequired, noDefect) | +| smoke sensor | radio_battery | maintenance radio part battery state (low, normal) | +| smoke sensor | sensor_battery | maintenance sensor part battery state (absence, low, normal) | +| smoke sensor | short_check | triggering the smoke sensor's short check | +| smoke sensor | long_check | triggering the smoke sensor's long check | +| light sensor | luminance | light luminance value in luxes | +| electricity sensor | energy_consumption | energy consumption value in watts | +| humidity sensor | humidity | current relative humidity | +| dock | battery_status | indicates running on battery (yes/no) | +| dock | battery_level | remaining battery percentage | +| dock | siren_status | used for controlling and getting siren state (on, off, cyclic) | +| dock | short_beep | testing of dock's siren - short beep | +| dock | long_beep | testing of dock's siren - long beep | +| siren | battery | battery level full/low/normal/verylow | +| siren | onoff | controlling siren status ON/OFF | +| siren | memorized_volume | setting memorized volume (normal/highest) | +| pod | cyclic_button | pod cyclic button state | +| pod | battery_status | pod battery status state | +| pod | lighting_led_pod_mode | lighting LED pod mod state | +| interior alarm | alarm_command | used for sending commands to Somfy alarm device | +| interior alarm | intrusion_control | used for alarm external intrusion controlling | +| interior alarm, myfox alarm | alarm_state | state of the Somfy alarm | +| interior alarm | target_alarm_state | target state of the Somfy alarm | +| interior alarm, myfox alarm | intrusion_state | intrusion state of the Somfy alarm | +| external alarm | active_zones_state | state of external alarm active zones | +| door lock | lock | switch representing unlocked/locked state | +| door lock | open | switch representing open/close state | +| on/off heating system | target_heating_level | target heating level (off, eco, comfort, frostprotection) | +| heating system | current_temperature | current temperature of the heating system | +| heating system | current_state | current state of the heating system | +| heating system, valve heating system, thermostat | target_temperature | target temperature of the heating system | +| heating system, valve heating system, thermostat | battery_level | battery level of the heating system | +| valve heating system, thermostat | derogation_heating_mode | derogation heating mode of the thermostat (away, freeze, manual, ...) | +| valve heating system, thermostat | derogated_target_temperature | target temperature of the heating system | +| valve heating system | current_heating_mode | current heating mode of the thermostatic valve | +| valve heating system | open_closed_valve | current open/closed state of the thermostatic valve | +| valve heating system | operating mode | operating mode of the thermostatic valve | +| thermostat | heating_mode | standard heating mode of the thermostat (away, freeze, manual, ...) | +| thermostat | derogation_activation | derogation activation state (inactive, active) | +| exterior heating system | heating_level | heating level of the exterior heating system or ON/OFF | +| temperature sensor | temperature | temperature reported by the sensor | +| myfox camera, myfox alarm | cloud_status | cloud connection status | +| myfox camera | shutter | controlling of the camera shutter | +| myfox alarm | myfox_alarm_command | used for sending commands to Somfy Myfox alarm device | +| waterheatersystem | middlewater_temperature | Number:Temperature indicating the temperature of the water at the middle of the heater | +| waterheatersystem | boost_mode | Switch allowing to enable or disable the booster. When switching to ON, by default, the Boost duration will be set for 1 day. | +| waterheatersystem | away_mode | Defines if away mode is On or Off (no water heating) | +| waterheatersystem | away_mode_duration | Defines if away mode the duration in days. | +| waterheatersystem | boost_mode_duration | The duration of the Boost mode in days. Valid from 1 to 7. | +| waterheatersystem | power_heatpump | Current consumption/power of the heatpump in Watts. | +| waterheatersystem | power_heatelec | Current consumption/power of the electric resistance in Watts. | +| waterheatersystem | showers | Virtual channel, representing the number of desired showers - between 3 to 5. It actually switches the desired temperature to 50.0, 54.5 or 62.0 Celcius degrees. Please note that in ECO mode, only 3 and 4 showers are allowed. | +| waterheatersystem | heat_pump_operating_time | Number of hours the heatpump has been operating | +| waterheatersystem | electric_booster_operating_time | number of hours the electric booster has been operating. | +| waterheatersystem | mode | The current mode of the boiler. Can be: autoMode / manualEcoInactive / manualEcoActive | +| waterheatersystem | target_temperature | Water target temperature in degrees. Read only. Temperature desired is managed through mode and showers channels. | +| hitachi (yutaki) air to water heating zone, dhw, main component | alarm_number | error number in case of malfunction | +| hitachi (yutaki) air to water heating zone | circuit_control | controls the air-to-water-component (Run, Stop) | +| hitachi (yutaki) air to water heating zone | circuit_status | actual state of the air-to-water-component (Run, Stop) | +| hitachi (yutaki) air to water heating zone | holiday_mode | switch to activate the holiday mode | +| hitachi (yutaki) air to water heating zone | yutaki_mode | actual mode of the heat pump (Eco, Comfort) | +| hitachi (yutaki) air to water heating zone | yutaki_target_mode | sets the mode of the heat pump (Eco, Comfort) | +| hitachi (yutaki) air to water heating zone | zone_mode | sets the zone mode (Auto, Manual) | +| hitachi (yutaki) domestic hot water | anti_legionella | controls the anti legionella mode (Run, Stop) | +| hitachi (yutaki) domestic hot water | anti_legionella_temp | controls the anti legionella temperature | +| hitachi (yutaki) domestic hot water | target_boost_mode | controls the boost mode (No request, Enabled, Disabled) | +| hitachi (yutaki) domestic hot water | boost_mode | boost mode status (Enabled, Disabled) | +| hitachi (yutaki) domestic hot water | dhw | controls the hot water tank (Run, Stop) | +| hitachi (yutaki) domestic hot water | dhw_mode | controls the dhw mode (Standard, High demand) | +| hitachi (yutaki) domestic hot water | dhw_setting_temp | controls the target temperature for hot water | +| hitachi (yutaki) domestic hot water | dhw_temp | current temperature of hot water | +| hitachi (yutaki) air to water main component | auto_manu_mode | controls auto/manual mode (Auto, Manual) | +| hitachi (yutaki) air to water main component | block_menu_control | controls the block menu (No, Block) | +| hitachi (yutaki) air to water main component | comm_alarm_bit_status | alarm bit status (No, Yes) | +| hitachi (yutaki) air to water main component | compressor_running_current | stage of the current compressor running (0, 0.1, 0.2, 0.3, 0.4) | +| hitachi (yutaki) air to water main component | eco_mode_offset | offset for the ECO-Mode | +| hitachi (yutaki) air to water main component | eco_mode_target_offset | controls the offset for the ECO-Mode (0-10 degrees) | +| hitachi (yutaki) air to water main component | liquid_temp | current liquid temperature | +| hitachi (yutaki) air to water main component | liquid_temp_thmi | current liquid temperature THMI | +| hitachi (yutaki) air to water main component | operation | current operation state (Alarm, Off, Heat/Cool thermo on, Heat/Cool thermo off, DHW off, Heat/Cool demand off, Swp off) | +| hitachi (yutaki) air to water main component | outdoor_temp | current outdoor temperature | +| hitachi (yutaki) air to water main component | space_mode | controls space mode (Eco, Comfort) | +| hitachi (yutaki) air to water main component | unit_control | controls unit (Run, Stop) | +| hitachi (yutaki) air to water main component | unit_mode_control | controls unit mode (Heat, Cool) | +| hitachi (yutaki) air to water main component | unit_mode_status | unit mode state (Heat, Cool) | +| hitachi (yutaki) air to water main component | water_inlet_temp | current water inlet temperature | +| hitachi (yutaki) air to water main component | water_outlet_temp | current water outlet temperature | +| hitachi (yutaki) air to water main component | water_outlet_hp_temp | current water outlet hp temperature | +| hitachi (yutaki) air to water main component | water_temp_setting | target heating water temperature | +| hitachi (yutaki) air to water main component | yutaki_operating_mode | yutaki operating mode (Auto, Holidays, Normal, Timer) | To run a scenario inside a rule for example, the ID of the scenario will be required. You can list all the scenarios IDs with the following console command: `somfytahoma scenarios`. diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaBindingConstants.java b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaBindingConstants.java index ee4648ba3..e2310122b 100644 --- a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaBindingConstants.java +++ b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaBindingConstants.java @@ -163,6 +163,15 @@ public class SomfyTahomaBindingConstants { // Thermostat public static final ThingTypeUID THING_TYPE_THERMOSTAT = new ThingTypeUID(BINDING_ID, "thermostat"); + // HitachiAirToWaterHeatingZone + public static final ThingTypeUID THING_TYPE_HITACHI_ATWHZ = new ThingTypeUID(BINDING_ID, "hitachiatwhz"); + + // HitachDHW + public static final ThingTypeUID THING_TYPE_HITACHI_DHW = new ThingTypeUID(BINDING_ID, "hitachidhw"); + + // HitachiAirToWaterMainComponent + public static final ThingTypeUID THING_TYPE_HITACHI_ATWMC = new ThingTypeUID(BINDING_ID, "hitachiatwmc"); + // List of all Channel ids public static final String RSSI = "rssi"; @@ -297,6 +306,45 @@ public class SomfyTahomaBindingConstants { // Myfox Camera public static final String SHUTTER = "shutter"; + // Hitachi Air To Water Heating Zone + public static final String ZONE_MODE = "zone_mode"; + public static final String CIRCUIT_CONTROL = "circuit_control"; + public static final String CIRCUIT_STATUS = "circuit_status"; + public static final String YUTAKI_TARGET_MODE = "yutaki_target_mode"; + public static final String YUTAKI_MODE = "yutaki_mode"; + public static final String HOLIDAY_MODE = "holiday_mode"; + + // Hitachi Air To Water Main Component + public static final String AUTO_MANU_MODE = "auto_manu_mode"; + public static final String UNIT_CONTROL = "unit_control"; + public static final String UNIT_MODE_STATUS = "unit_mode_status"; + public static final String UNIT_MODE_CONTROL = "unit_mode_control"; + public static final String BLOCK_MENU_CONTROL = "block_menu_control"; + public static final String SPACE_MODE = "space_mode"; + public static final String ECO_MODE_TARGET_OFFSET = "eco_mode_target_offset"; + public static final String COMM_ALARM_BIT_STATUS = "comm_alarm_bit_status"; + public static final String OPERATION = "operation"; + public static final String OUTDOOR_TEMP = "outdoor_temp"; + public static final String WATER_INLET_TEMP = "water_inlet_temp"; + public static final String WATER_OUTLET_TEMP = "water_outlet_temp"; + public static final String ECO_MODE_OFFSET = "eco_mode_offset"; + public static final String WATER_OUTLET_HP_TEMP = "water_outlet_hp_temp"; + public static final String LIQUID_TEMP = "liquid_temp"; + public static final String LIQUID_TEMP_THMI = "liquid_temp_thmi"; + public static final String COMPRESSOR_RUNNING_CURRENT = "compressor_running_current"; + public static final String WATER_TEMP_SETTING = "water_temp_setting"; + public static final String YUTAKI_OPERATING_MODE = "yutaki_operating_mode"; + + // Hitachi DHW + public static final String DHW_MODE = "dhw_mode"; + public static final String ANTI_LEGIONELLA_TEMP = "anti_legionella_temp"; + public static final String DHW = "dhw"; + public static final String ANTI_LEGIONELLA = "anti_legionella"; + public static final String DHW_SETTING_TEMP = "dhw_setting_temp"; + public static final String DHW_TEMP = "dhw_temp"; + public static final String TARGET_BOOST_MODE = "target_boost_mode"; + public static final String ALARM_NUMBER = "alarm_number"; + // Constants public static final String COZYTOUCH_PORTAL = "ha110-1.overkiz.com"; public static final String TAHOMA_PORTAL = "www.tahomalink.com"; @@ -420,11 +468,13 @@ public class SomfyTahomaBindingConstants { public static final String CLASS_ADJUSTABLE_SLATS_ROLLER_SHUTTER = "AdjustableSlatsRollerShutter"; public static final String CLASS_CAMERA = "Camera"; public static final String CLASS_WATER_HEATING_SYSTEM = "WaterHeatingSystem"; + public static final String CLASS_HITACHI_HEATING_SYSTEM = "HitachiHeatingSystem"; // unsupported uiClasses public static final String THING_PROTOCOL_GATEWAY = "ProtocolGateway"; public static final String THING_REMOTE_CONTROLLER = "RemoteController"; public static final String THING_NETWORK_COMPONENT = "NetworkComponent"; + public static final String THING_GENERIC = "Generic"; // Event states public static final String FAILED_EVENT = "FAILED"; @@ -442,7 +492,8 @@ public class SomfyTahomaBindingConstants { THING_TYPE_ADJUSTABLE_SLATS_ROLLERSHUTTER, THING_TYPE_MYFOX_CAMERA, THING_TYPE_ROLLERSHUTTER_UNO, THING_TYPE_WATERSENSOR, THING_TYPE_HUMIDITYSENSOR, THING_TYPE_MYFOX_ALARM, THING_TYPE_THERMOSTAT, THING_TYPE_DIMMER_LIGHT, THING_TYPE_EXTERIOR_HEATING_SYSTEM, THING_TYPE_VALVE_HEATING_SYSTEM, - THING_TYPE_BIOCLIMATIC_PERGOLA, THING_TYPE_WATERHEATINGSYSTEM)); + THING_TYPE_BIOCLIMATIC_PERGOLA, THING_TYPE_WATERHEATINGSYSTEM, THING_TYPE_HITACHI_ATWHZ, + THING_TYPE_HITACHI_DHW, THING_TYPE_HITACHI_ATWMC)); // somfy gateways public static Map gatewayTypes = new HashMap() { diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaHandlerFactory.java b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaHandlerFactory.java index ab4c978ee..c55286e2a 100644 --- a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaHandlerFactory.java +++ b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/SomfyTahomaHandlerFactory.java @@ -31,6 +31,9 @@ import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaExteriorHeati import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaExternalAlarmHandler; import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaGateHandler; import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaGatewayHandler; +import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaHitachiATWHZHandler; +import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaHitachiATWMCHandler; +import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaHitachiDHWHandler; import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaHumiditySensorHandler; import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaInternalAlarmHandler; import org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaLightSensorHandler; @@ -187,6 +190,12 @@ public class SomfyTahomaHandlerFactory extends BaseThingHandlerFactory { return new SomfyTahomaThermostatHandler(thing); } else if (thingTypeUID.equals(THING_TYPE_WATERHEATINGSYSTEM)) { return new SomfyTahomaWaterHeatingSystemHandler(thing); + } else if (thingTypeUID.equals(THING_TYPE_HITACHI_ATWHZ)) { + return new SomfyTahomaHitachiATWHZHandler(thing); + } else if (thingTypeUID.equals(THING_TYPE_HITACHI_DHW)) { + return new SomfyTahomaHitachiDHWHandler(thing); + } else if (thingTypeUID.equals(THING_TYPE_HITACHI_ATWMC)) { + return new SomfyTahomaHitachiATWMCHandler(thing); } else { return null; } diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/discovery/SomfyTahomaItemDiscoveryService.java b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/discovery/SomfyTahomaItemDiscoveryService.java index 04af86178..62de14ebc 100644 --- a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/discovery/SomfyTahomaItemDiscoveryService.java +++ b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/discovery/SomfyTahomaItemDiscoveryService.java @@ -326,10 +326,26 @@ public class SomfyTahomaItemDiscoveryService extends AbstractDiscoveryService logUnsupportedDevice(device); } break; + case CLASS_HITACHI_HEATING_SYSTEM: + if ("HitachiAirToWaterHeatingZone".equals(device.getWidget())) { + // widget: HitachiAirToWaterHeatingZone + deviceDiscovered(device, THING_TYPE_HITACHI_ATWHZ, place); + } else if ("HitachiAirToWaterMainComponent".equals(device.getWidget())) { + // widget: HitachiAirToWaterMainComponent + deviceDiscovered(device, THING_TYPE_HITACHI_ATWMC, place); + } else if ("HitachiDHW".equals(device.getWidget())) { + // widget: HitachiDHW + deviceDiscovered(device, THING_TYPE_HITACHI_DHW, place); + } else { + logUnsupportedDevice(device); + } + break; case THING_PROTOCOL_GATEWAY: case THING_REMOTE_CONTROLLER: // widget: AlarmRemoteController case THING_NETWORK_COMPONENT: + case THING_GENERIC: + // widget: unknown break; default: diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiATWHZHandler.java b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiATWHZHandler.java new file mode 100644 index 000000000..36488083b --- /dev/null +++ b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiATWHZHandler.java @@ -0,0 +1,72 @@ +/** + * Copyright (c) 2010-2022 Contributors to the openHAB project + * + * See the NOTICE file(s) distributed with this work for additional + * information. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + */ +package org.openhab.binding.somfytahoma.internal.handler; + +import static org.openhab.binding.somfytahoma.internal.SomfyTahomaBindingConstants.*; + +import org.eclipse.jdt.annotation.NonNullByDefault; +import org.openhab.core.library.types.StringType; +import org.openhab.core.thing.ChannelUID; +import org.openhab.core.thing.Thing; +import org.openhab.core.types.Command; +import org.openhab.core.types.RefreshType; + +/** + * The {@link SomfyTahomaHitachiATWHZHandler} is responsible for handling commands, + * which are sent to one of the channels of the Hitachi Air To Water Heating Zone thing. + * + * @author Ondrej Pecta - Initial contribution + */ +@NonNullByDefault +public class SomfyTahomaHitachiATWHZHandler extends SomfyTahomaBaseThingHandler { + + public SomfyTahomaHitachiATWHZHandler(Thing thing) { + super(thing); + stateNames.put(ZONE_MODE, "modbus:AutoManuModeZone1State"); + stateNames.put(CIRCUIT_CONTROL, "modbus:ControlCircuit1State"); + stateNames.put(CIRCUIT_STATUS, "modbus:StatusCircuit1State"); + stateNames.put(YUTAKI_TARGET_MODE, "modbus:YutakiTargetModeState"); + stateNames.put(YUTAKI_MODE, "modbus:YutakiModeState"); + stateNames.put(HOLIDAY_MODE, "modbus:HolidayModeZone1State"); + stateNames.put(ALARM_NUMBER, "modbus:AlarmNumberState"); + } + + @Override + public void handleCommand(ChannelUID channelUID, Command command) { + super.handleCommand(channelUID, command); + if (command instanceof RefreshType) { + return; + } else { + if (command instanceof StringType) { + switch (channelUID.getId()) { + case ZONE_MODE: + sendCommand("setAutoManuMode", "[\"" + command + "\"]"); + break; + case CIRCUIT_CONTROL: + sendCommand("setControlCircuit1", "[\"" + command + "\"]"); + break; + case YUTAKI_TARGET_MODE: + sendCommand("setTargetMode", "[\"" + command + "\"]"); + break; + case HOLIDAY_MODE: + sendCommand("setHolidayMode", "[\"" + command + "\"]"); + break; + default: + getLogger().debug("This channel doesn't accept any commands"); + } + } else { + getLogger().debug("This thing accepts only String commands"); + } + } + } +} diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiATWMCHandler.java b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiATWMCHandler.java new file mode 100644 index 000000000..41332bd2a --- /dev/null +++ b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiATWMCHandler.java @@ -0,0 +1,111 @@ +/** + * Copyright (c) 2010-2022 Contributors to the openHAB project + * + * See the NOTICE file(s) distributed with this work for additional + * information. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + */ +package org.openhab.binding.somfytahoma.internal.handler; + +import static org.openhab.binding.somfytahoma.internal.SomfyTahomaBindingConstants.*; + +import java.math.BigDecimal; + +import org.eclipse.jdt.annotation.NonNullByDefault; +import org.openhab.core.library.types.DecimalType; +import org.openhab.core.library.types.QuantityType; +import org.openhab.core.library.types.StringType; +import org.openhab.core.thing.ChannelUID; +import org.openhab.core.thing.Thing; +import org.openhab.core.types.Command; +import org.openhab.core.types.RefreshType; + +/** + * The {@link SomfyTahomaHitachiATWMCHandler} is responsible for handling commands, + * which are sent to one of the channels of the Hitachi Air To Water Main Component thing. + * + * @author Ondrej Pecta - Initial contribution + */ +@NonNullByDefault +public class SomfyTahomaHitachiATWMCHandler extends SomfyTahomaBaseThingHandler { + + public SomfyTahomaHitachiATWMCHandler(Thing thing) { + super(thing); + stateNames.put(AUTO_MANU_MODE, "core:AutoManuModeState"); + stateNames.put(UNIT_CONTROL, "modbus:ControlUnitState"); + stateNames.put(UNIT_MODE_STATUS, "modbus:StatusUnitModeState"); + stateNames.put(UNIT_MODE_CONTROL, "modbus:ControlUnitModeState"); + stateNames.put(BLOCK_MENU_CONTROL, "modbus:ControlBlockMenuState"); + stateNames.put(SPACE_MODE, "modbus:SpaceModeState"); + stateNames.put(ECO_MODE_TARGET_OFFSET, "modbus:EcoModeOffsetTargetState"); + stateNames.put(COMM_ALARM_BIT_STATUS, "modbus:StatusCommunicationAlarmBitState"); + stateNames.put(OPERATION, "modbus:OperationState"); + stateNames.put(OUTDOOR_TEMP, "modbus:OutdoorAmbientTemperatureState"); + stateNames.put(WATER_INLET_TEMP, "modbus:WaterInletUnitTemperatureState"); + stateNames.put(WATER_OUTLET_TEMP, "modbus:WaterOutletUnitTemperatureState"); + stateNames.put(ECO_MODE_OFFSET, "modbus:EcoModeOffsetState"); + stateNames.put(WATER_OUTLET_HP_TEMP, "modbus:WaterOutletHpTemperatureState"); + stateNames.put(LIQUID_TEMP_THMI, "modbus:LiquidTemperatureTHMIState"); + stateNames.put(LIQUID_TEMP, "modbus:LiquidTemperatureState"); + stateNames.put(COMPRESSOR_RUNNING_CURRENT, "modbus:CompressorRunningCurrentState"); + stateNames.put(WATER_TEMP_SETTING, "modbus:WaterTemperatureSettingState"); + stateNames.put(YUTAKI_OPERATING_MODE, "modbus:YutakiVirtualOperatingModeState"); + stateNames.put(ALARM_NUMBER, "modbus:AlarmNumberState"); + } + + @Override + public void handleCommand(ChannelUID channelUID, Command command) { + super.handleCommand(channelUID, command); + if (command instanceof RefreshType) { + return; + } else { + switch (channelUID.getId()) { + case AUTO_MANU_MODE: + if (command instanceof StringType) { + sendCommand("setGlobalAutoManuMode", "[\"" + command + "\"]"); + } + break; + case UNIT_CONTROL: + if (command instanceof StringType) { + sendCommand("setControlUnit", "[\"" + command + "\"]"); + } + break; + case UNIT_MODE_CONTROL: + if (command instanceof StringType) { + sendCommand("setControlUnitMode", "[\"" + command + "\"]"); + } + break; + case BLOCK_MENU_CONTROL: + if (command instanceof StringType) { + sendCommand("setControlBlockMenu", "[\"" + command + "\"]"); + } + break; + case SPACE_MODE: + if (command instanceof StringType) { + sendCommand("setSpaceMode", "[\"" + command + "\"]"); + } + break; + case ECO_MODE_TARGET_OFFSET: + sendTempCommand("setEcoModeOffset", command); + break; + default: + getLogger().debug("This channel doesn't accept any commands"); + } + } + } + + private void sendTempCommand(String cmd, Command command) { + if (command instanceof DecimalType || command instanceof QuantityType) { + BigDecimal temperature = toTemperature(command); + if (temperature != null) { + String param = "[" + temperature.toPlainString() + "]"; + sendCommand(cmd, param); + } + } + } +} diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiDHWHandler.java b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiDHWHandler.java new file mode 100644 index 000000000..ae5f829cc --- /dev/null +++ b/bundles/org.openhab.binding.somfytahoma/src/main/java/org/openhab/binding/somfytahoma/internal/handler/SomfyTahomaHitachiDHWHandler.java @@ -0,0 +1,98 @@ +/** + * Copyright (c) 2010-2022 Contributors to the openHAB project + * + * See the NOTICE file(s) distributed with this work for additional + * information. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0 + * + * SPDX-License-Identifier: EPL-2.0 + */ +package org.openhab.binding.somfytahoma.internal.handler; + +import static org.openhab.binding.somfytahoma.internal.SomfyTahomaBindingConstants.*; + +import java.math.BigDecimal; + +import org.eclipse.jdt.annotation.NonNullByDefault; +import org.openhab.core.library.types.DecimalType; +import org.openhab.core.library.types.QuantityType; +import org.openhab.core.library.types.StringType; +import org.openhab.core.thing.ChannelUID; +import org.openhab.core.thing.Thing; +import org.openhab.core.types.Command; +import org.openhab.core.types.RefreshType; + +/** + * The {@link SomfyTahomaHitachiDHWHandler} is responsible for handling commands, + * which are sent to one of the channels of the Hitachi DHW thing. + * + * @author Ondrej Pecta - Initial contribution + */ +@NonNullByDefault +public class SomfyTahomaHitachiDHWHandler extends SomfyTahomaBaseThingHandler { + + public SomfyTahomaHitachiDHWHandler(Thing thing) { + super(thing); + stateNames.put(DHW_MODE, "modbus:DHWModeState"); + stateNames.put(DHW, "modbus:StatusDHWState"); + stateNames.put(ANTI_LEGIONELLA, "modbus:StatusAntiLegionellaState"); + stateNames.put(ANTI_LEGIONELLA_TEMP, "modbus:StatusAntiLegionellaSettingTemperatureState"); + stateNames.put(DHW_SETTING_TEMP, "modbus:StatusDHWSettingTemperatureState"); + stateNames.put(DHW_TEMP, "core:DHWTemperatureState"); + stateNames.put(TARGET_BOOST_MODE, "modbus:YutakiTargetBoostModeState"); + stateNames.put(BOOST_MODE, "modbus:YutakiBoostModeState"); + stateNames.put(ALARM_NUMBER, "modbus:AlarmNumberState"); + } + + @Override + public void handleCommand(ChannelUID channelUID, Command command) { + super.handleCommand(channelUID, command); + if (command instanceof RefreshType) { + return; + } else { + switch (channelUID.getId()) { + case DHW: + if (command instanceof StringType) { + sendCommand("setControlDHW", "[\"" + command + "\"]"); + } + break; + case DHW_MODE: + if (command instanceof StringType) { + sendCommand("setDHWMode", "[\"" + command + "\"]"); + } + break; + case ANTI_LEGIONELLA: + if (command instanceof StringType) { + sendCommand("setControlAntiLegionella", "[\"" + command + "\"]"); + } + break; + case TARGET_BOOST_MODE: + if (command instanceof StringType) { + sendCommand("setTargetBoostMode", "[\"" + command + "\"]"); + } + break; + case DHW_SETTING_TEMP: + sendTempCommand("setControlDHWSettingTemperature", command); + break; + case ANTI_LEGIONELLA_TEMP: + sendTempCommand("setControlAntiLegionellaSettingTemperature", command); + break; + default: + getLogger().debug("This channel doesn't accept any commands"); + } + } + } + + private void sendTempCommand(String cmd, Command command) { + if (command instanceof DecimalType || command instanceof QuantityType) { + BigDecimal temperature = toTemperature(command); + if (temperature != null) { + String param = "[" + temperature.toPlainString() + "]"; + sendCommand(cmd, param); + } + } + } +} diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/i18n/somfytahoma.properties b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/i18n/somfytahoma.properties index 97f23a0c8..ad40cd3b7 100644 --- a/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/i18n/somfytahoma.properties +++ b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/i18n/somfytahoma.properties @@ -26,6 +26,9 @@ thing-type.somfytahoma.garagedoor.label = Somfy Garage Door thing-type.somfytahoma.gate.label = Somfy Heating System with On/Off thing-type.somfytahoma.gateway.label = Somfy Tahoma Gateway thing-type.somfytahoma.heatingsystem.label = Z-Wave Heating System +thing-type.somfytahoma.hitachiatwhz.label = Hitachi Air To Water Heating Zone +thing-type.somfytahoma.hitachiatwmc.label = Hitachi Air To Water Main Component +thing-type.somfytahoma.hitachidhw.label = Hitachi DHW thing-type.somfytahoma.humiditysensor.label = Somfy Humidity Sensor thing-type.somfytahoma.internalalarm.label = Somfy Internal Alarm thing-type.somfytahoma.light.label = Somfy Light Switch @@ -94,8 +97,20 @@ channel-type.somfytahoma.alarm_command.state.option.on = ARM channel-type.somfytahoma.alarm_command.state.option.off = DISARM channel-type.somfytahoma.alarm_command.state.option.alarmPartial1 = ARM_PARTIAL_1 channel-type.somfytahoma.alarm_command.state.option.alarmPartial2 = ARM_PARTIAL_2 +channel-type.somfytahoma.alarm_number.label = Alarm Number State +channel-type.somfytahoma.alarm_number.description = Hitachi alarm number state channel-type.somfytahoma.alarm_state.label = Alarm State channel-type.somfytahoma.alarm_state.description = A state of the Somfy Alarm +channel-type.somfytahoma.anti_legionella.label = Anti Legionella +channel-type.somfytahoma.anti_legionella.description = Anti legionella control +channel-type.somfytahoma.anti_legionella.state.option.run = Run +channel-type.somfytahoma.anti_legionella.state.option.stop = Stop +channel-type.somfytahoma.anti_legionella_temp.label = Anti Legionella Temperature +channel-type.somfytahoma.anti_legionella_temp.description = Anti legionella temperature control +channel-type.somfytahoma.auto_manu_mode.label = Auto/Manu Mode +channel-type.somfytahoma.auto_manu_mode.description = Auto/Manu mode control +channel-type.somfytahoma.auto_manu_mode.state.option.auto = Auto +channel-type.somfytahoma.auto_manu_mode.state.option.manu = Manual channel-type.somfytahoma.away_mode.label = Away channel-type.somfytahoma.away_mode.description = Away Mode (ON or OFF) channel-type.somfytahoma.away_mode_duration.label = Away Mode Duration @@ -104,14 +119,32 @@ channel-type.somfytahoma.battery.label = Battery State channel-type.somfytahoma.battery.description = Battery Condition State (full, low, normal, verylow) channel-type.somfytahoma.battery_status.label = Battery Status State channel-type.somfytahoma.battery_status.description = Battery Status State +channel-type.somfytahoma.block_menu_control.label = Block Menu +channel-type.somfytahoma.block_menu_control.description = Block menu control +channel-type.somfytahoma.block_menu_control.state.option.block = Block +channel-type.somfytahoma.block_menu_control.state.option.no = No channel-type.somfytahoma.boost_mode.label = Boost channel-type.somfytahoma.boost_mode.description = Boost Mode (ON or OFF) channel-type.somfytahoma.boost_mode_duration.label = Boost Mode Duration channel-type.somfytahoma.boost_mode_duration.description = Duration for Boost Mode +channel-type.somfytahoma.circuit_control.label = Circuit Control +channel-type.somfytahoma.circuit_control.description = Circuit control +channel-type.somfytahoma.circuit_control.state.option.run = Run +channel-type.somfytahoma.circuit_control.state.option.stop = Stop +channel-type.somfytahoma.circuit_status.label = Circuit Status +channel-type.somfytahoma.circuit_status.description = Circuit status state +channel-type.somfytahoma.circuit_status.state.option.run = Run +channel-type.somfytahoma.circuit_status.state.option.stop = Stop channel-type.somfytahoma.closure_orientation.label = Set Closure And Orientation channel-type.somfytahoma.closure_orientation.description = A channel for setting closure and orientation of the blind channel-type.somfytahoma.cloud_status.label = Cloud Status State channel-type.somfytahoma.cloud_status.description = Cloud status state of the camera +channel-type.somfytahoma.comm_alarm_bit_status.label = Communication Alarm Bit Status +channel-type.somfytahoma.comm_alarm_bit_status.description = Communication alarm bit status state +channel-type.somfytahoma.comm_alarm_bit_status.state.option.alarm = Alarm +channel-type.somfytahoma.comm_alarm_bit_status.state.option.no = No +channel-type.somfytahoma.compressor_running_current.label = Compressor Running Current +channel-type.somfytahoma.compressor_running_current.description = Compressor running current state channel-type.somfytahoma.contact.label = Contact channel-type.somfytahoma.contact.description = A contact having OPEN/CLOSE state channel-type.somfytahoma.control.label = Control @@ -136,6 +169,22 @@ channel-type.somfytahoma.derogation_heating_mode.command.option.comfort = Home channel-type.somfytahoma.derogation_heating_mode.command.option.frost\ protection = Frost protection channel-type.somfytahoma.derogation_heating_mode.command.option.manual = Manual channel-type.somfytahoma.derogation_heating_mode.command.option.eco = Night +channel-type.somfytahoma.dhw.label = DHW Control +channel-type.somfytahoma.dhw.description = Domestic hot water control +channel-type.somfytahoma.dhw.state.option.run = Run +channel-type.somfytahoma.dhw.state.option.stop = Stop +channel-type.somfytahoma.dhw_mode.label = DHW Mode +channel-type.somfytahoma.dhw_mode.description = DHW mode control +channel-type.somfytahoma.dhw_mode.state.option.standard = Standard +channel-type.somfytahoma.dhw_mode.state.option.high\ demand = High Demand +channel-type.somfytahoma.dhw_setting_temp.label = DHW Temperature Setting +channel-type.somfytahoma.dhw_setting_temp.description = DHW temperature setting control +channel-type.somfytahoma.dhw_temp.label = DHW Temperature +channel-type.somfytahoma.dhw_temp.description = DHW temperature state +channel-type.somfytahoma.eco_mode_offset.label = Eco Mode Offset +channel-type.somfytahoma.eco_mode_offset.description = Eco mode offset state +channel-type.somfytahoma.eco_mode_target_offset.label = Eco Mode Target Offset +channel-type.somfytahoma.eco_mode_target_offset.description = Eco mode target offset control channel-type.somfytahoma.electric_booster_operating_time.label = Electric Bosster Operating Time channel-type.somfytahoma.electric_booster_operating_time.description = Time the Electric Bosster has been operating in hours channel-type.somfytahoma.energy_consumption.label = Energy Consumption @@ -160,6 +209,8 @@ channel-type.somfytahoma.heating_level.label = Heating Level channel-type.somfytahoma.heating_level.description = The level of the heating channel-type.somfytahoma.heating_mode.label = Heating Mode channel-type.somfytahoma.heating_mode.description = Heating mode of the Somfy thermostat +channel-type.somfytahoma.holiday_mode.label = Holiday Mode +channel-type.somfytahoma.holiday_mode.description = Holiday mode control channel-type.somfytahoma.humidity.label = Relative Humidity channel-type.somfytahoma.humidity.description = The current relative humidity channel-type.somfytahoma.intrusion_control.label = Intrusion Control @@ -174,6 +225,10 @@ channel-type.somfytahoma.light_intensity.label = Light Intensity channel-type.somfytahoma.light_intensity.description = The intensity of the light channel-type.somfytahoma.lighting_led_pod_mode.label = Lighting Led Pod Mod State channel-type.somfytahoma.lighting_led_pod_mode.description = Lighting Led Pod Mod State +channel-type.somfytahoma.liquid_temp.label = Liquid Temperature +channel-type.somfytahoma.liquid_temp.description = Liquid temperature state +channel-type.somfytahoma.liquid_temp_thmi.label = Liquid Temperature THMI +channel-type.somfytahoma.liquid_temp_thmi.description = Liquid temperature THMI state channel-type.somfytahoma.lock.label = Lock channel-type.somfytahoma.lock.description = A lock having ON/OFF state (unlocked/locked) channel-type.somfytahoma.long_beep.label = Dock Long Beep Test @@ -197,8 +252,22 @@ channel-type.somfytahoma.open_closed_valve.label = Valve Open/Closed state channel-type.somfytahoma.open_closed_valve.description = Current open/closed state of the Somfy thermostatic valve channel-type.somfytahoma.operating_mode.label = Operating mode channel-type.somfytahoma.operating_mode.description = Operating mode of the Somfy thermostatic valve +channel-type.somfytahoma.operation.label = Operation State +channel-type.somfytahoma.operation.description = Operation state +channel-type.somfytahoma.operation.state.option.alarm = Alarm +channel-type.somfytahoma.operation.state.option.cool\ demand-off = Cool demand off +channel-type.somfytahoma.operation.state.option.cool\ thermo-off = Cool thermo off +channel-type.somfytahoma.operation.state.option.cool\ thermo-on = Cool thermo on +channel-type.somfytahoma.operation.state.option.dhw-off = DHW off +channel-type.somfytahoma.operation.state.option.heat\ demand-off = Heat demand off +channel-type.somfytahoma.operation.state.option.heat\ thermo-off = Heat thermo off +channel-type.somfytahoma.operation.state.option.heat\ thermo-on = Heat thermo on +channel-type.somfytahoma.operation.state.option.off = Off +channel-type.somfytahoma.operation.state.option.swp-off = Swp off channel-type.somfytahoma.orientation.label = Orientation channel-type.somfytahoma.orientation.description = Orientation of the device slats +channel-type.somfytahoma.outdoor_temp.label = Outdoor Temperature +channel-type.somfytahoma.outdoor_temp.description = Outdoor ambient temperature state channel-type.somfytahoma.pergola_command.label = Command channel-type.somfytahoma.pergola_command.description = A channel used for sending commands to Somfy Bioclimatic Pergola device channel-type.somfytahoma.pergola_command.state.option.closeSlats = Close slats @@ -233,8 +302,17 @@ channel-type.somfytahoma.siren_status.state.option.off = OFF channel-type.somfytahoma.siren_status.state.option.cyclic = CYCLIC channel-type.somfytahoma.slats.label = Slats channel-type.somfytahoma.slats.description = Slats having OPEN/CLOSED state +channel-type.somfytahoma.space_mode.label = Space Mode +channel-type.somfytahoma.space_mode.description = Space mode control +channel-type.somfytahoma.space_mode.state.option.comfort = Comfort +channel-type.somfytahoma.space_mode.state.option.eco = Eco channel-type.somfytahoma.status.label = Status channel-type.somfytahoma.status.description = Status for SomfyTahoma +channel-type.somfytahoma.target_boost_mode.label = Boost Mode +channel-type.somfytahoma.target_boost_mode.description = Boost mode control +channel-type.somfytahoma.target_boost_mode.state.option.no\ request = No Request +channel-type.somfytahoma.target_boost_mode.state.option.enabled = Enabled +channel-type.somfytahoma.target_boost_mode.state.option.disabled = Disabled channel-type.somfytahoma.target_heating_level.label = Target Heating Level channel-type.somfytahoma.target_heating_level.description = A channel used for getting/setting the target heating level (on/off, frostprotection, confort, eco) channel-type.somfytahoma.target_heating_level.state.option.frostprotection = FROSTPROTECTION @@ -245,8 +323,50 @@ channel-type.somfytahoma.target_temperature.label = Target Temperature channel-type.somfytahoma.target_temperature.description = The target temperature of the heating system channel-type.somfytahoma.temperature.label = Temperature channel-type.somfytahoma.temperature.description = The temperature value of the sensor +channel-type.somfytahoma.unit_control.label = Unit Control +channel-type.somfytahoma.unit_control.description = Unit control +channel-type.somfytahoma.unit_control.state.option.run = Run +channel-type.somfytahoma.unit_control.state.option.stop = Stop +channel-type.somfytahoma.unit_mode_control.label = Unit Mode +channel-type.somfytahoma.unit_mode_control.description = Unit mode control +channel-type.somfytahoma.unit_mode_control.state.option.cool = Cool +channel-type.somfytahoma.unit_mode_control.state.option.heat = Heat +channel-type.somfytahoma.unit_mode_status.label = Unit Mode Status +channel-type.somfytahoma.unit_mode_status.description = Unit mode status state +channel-type.somfytahoma.unit_mode_status.state.option.cool = Cool +channel-type.somfytahoma.unit_mode_status.state.option.heat = Heat channel-type.somfytahoma.water_heater_mode.label = Mode channel-type.somfytahoma.water_heater_mode.description = Describes the water heater mode channel-type.somfytahoma.water_heater_mode.state.option.manualEcoActive = Manual - Eco channel-type.somfytahoma.water_heater_mode.state.option.manualEcoInactive = Manual channel-type.somfytahoma.water_heater_mode.state.option.autoMode = Auto +channel-type.somfytahoma.water_inlet_temp.label = Water Inlet Temperature +channel-type.somfytahoma.water_inlet_temp.description = Water inlet temperature state +channel-type.somfytahoma.water_outlet_hp_temp.label = Water Outlet Hp Temperature +channel-type.somfytahoma.water_outlet_hp_temp.description = Water outlet hp temperature state +channel-type.somfytahoma.water_outlet_temp.label = Water Outlet Temperature +channel-type.somfytahoma.water_outlet_temp.description = Water outlet temperature state +channel-type.somfytahoma.water_temp_setting.label = Water Temperature Setting +channel-type.somfytahoma.water_temp_setting.description = Water temperature setting state +channel-type.somfytahoma.yutaki_boost_mode.label = Boost Mode +channel-type.somfytahoma.yutaki_boost_mode.description = Boost mode state +channel-type.somfytahoma.yutaki_boost_mode.state.option.enabled = Enabled +channel-type.somfytahoma.yutaki_boost_mode.state.option.disabled = Disabled +channel-type.somfytahoma.yutaki_mode.label = Yutaki Mode +channel-type.somfytahoma.yutaki_mode.description = Yutaki mode state +channel-type.somfytahoma.yutaki_mode.state.option.comfort = Comfort +channel-type.somfytahoma.yutaki_mode.state.option.eco = Eco +channel-type.somfytahoma.yutaki_operating_mode.label = Yutaki Operating Mode +channel-type.somfytahoma.yutaki_operating_mode.description = Yutaki operating mode state +channel-type.somfytahoma.yutaki_operating_mode.state.option.auto = Auto +channel-type.somfytahoma.yutaki_operating_mode.state.option.holidays = Holidays +channel-type.somfytahoma.yutaki_operating_mode.state.option.normal = Normal +channel-type.somfytahoma.yutaki_operating_mode.state.option.timer = Timer +channel-type.somfytahoma.yutaki_target_mode.label = Yutaki Target Mode +channel-type.somfytahoma.yutaki_target_mode.description = Yutaki target mode control +channel-type.somfytahoma.yutaki_target_mode.state.option.comfort = Comfort +channel-type.somfytahoma.yutaki_target_mode.state.option.eco = Eco +channel-type.somfytahoma.zone_mode.label = Zone Mode +channel-type.somfytahoma.zone_mode.description = Zone mode control +channel-type.somfytahoma.zone_mode.state.option.auto = Auto +channel-type.somfytahoma.zone_mode.state.option.manu = Manual diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/channels.xml b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/channels.xml index 9b72a9c28..7fc6d686e 100644 --- a/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/channels.xml +++ b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/channels.xml @@ -158,7 +158,9 @@ String - A channel used for getting/setting the target heating level (on/off, frostprotection, confort, eco) + A channel used for getting/setting the target heating level (on/off, frostprotection, confort, + eco) + @@ -466,7 +468,6 @@ - String @@ -506,5 +507,340 @@ Away Mode (ON or OFF) + + String + + Zone mode control + + + + + + + + + + String + + Circuit control + + + + + + + + + + String + + Circuit status state + + + + + + + + + + String + + Yutaki target mode control + + + + + + + + + + String + + Yutaki mode state + + + + + + + + + + Switch + + Holiday mode control + + + + String + + Domestic hot water control + + + + + + + + + + String + + Anti legionella control + + + + + + + + + + Number:Temperature + + DHW temperature setting control + + + + + Number:Temperature + + DHW temperature state + + + + + String + + Boost mode control + + + + + + + + + + + String + + Boost mode state + + + + + + + + + + String + + Auto/Manu mode control + + + + + + + + + + String + + Unit control + + + + + + + + + + String + + Unit mode status state + + + + + + + + + + String + + Unit mode control + + + + + + + + + + String + + Block menu control + + + + + + + + + + String + + Space mode control + + + + + + + + + + Number:Temperature + + Eco mode target offset control + + + + + Number:Temperature + + Eco mode offset state + + + + + String + + Communication alarm bit status state + + + + + + + + + + String + + Operation state + + + + + + + + + + + + + + + + + + Number:Temperature + + Water inlet temperature state + + + + + Number:Temperature + + Water outlet temperature state + + + + + Number:Temperature + + Water outlet hp temperature state + + + + + Number:Temperature + + Liquid temperature THMI state + + + + + Number:Temperature + + Liquid temperature state + + + + + Number:Temperature + + Anti legionella temperature control + + + + + Number + + Compressor running current state + + + + + Number:Temperature + + Water temperature setting state + + + + + String + + Yutaki operating mode state + + + + + + + + + + + + Number + + Hitachi alarm number state + + + + + String + + DHW mode control + + + + + + + diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachiatwhz.xml b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachiatwhz.xml new file mode 100644 index 000000000..ed55d3ac0 --- /dev/null +++ b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachiatwhz.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + url + + + + diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachiatwmc.xml b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachiatwmc.xml new file mode 100644 index 000000000..dcfa63d34 --- /dev/null +++ b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachiatwmc.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + url + + + + diff --git a/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachidhw.xml b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachidhw.xml new file mode 100644 index 000000000..4807dd57d --- /dev/null +++ b/bundles/org.openhab.binding.somfytahoma/src/main/resources/OH-INF/thing/hitachidhw.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + url + + + +