Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[miele] Add information/failure channels #16463

Merged
merged 1 commit into from
Mar 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
30 changes: 22 additions & 8 deletions bundles/org.openhab.binding.miele/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,18 +45,18 @@ discovery.miele:removalGracePeriod=30

### Thing Configuration for Miele XGW3000

| Configuration Parameter | Description |
|-------------------------|---------------|
| ipAddress | Network address of the Miele@home gateway |
| Configuration Parameter | Description |
|-------------------------|----------------------------------------------------------------------------------------------------------------------------------|
| ipAddress | Network address of the Miele@home gateway |
| interface | Network address of openHAB host interface where the binding will listen for multicast events coming from the Miele@home gateway. |
| userName | Name of a registered Miele@home user. |
| password | Password for the registered Miele@home user. |
| language | Language for state, program and phase texts. Leave blank for system language. |
| userName | Name of a registered Miele@home user. |
| password | Password for the registered Miele@home user. |
| language | Language for state, program and phase texts. Leave blank for system language. |

### Thing Configuration for appliance

| Configuration Parameter | Description |
|-------------------------|---------------|
| Configuration Parameter | Description |
|-------------------------|----------------------------------------------------------|
| uid | Unique identifier for specific appliance on the gateway. |

Each appliance needs the device UID as a configuration parameter.
Expand Down Expand Up @@ -112,6 +112,8 @@ Channels available for each appliance type are listed below.
| phase | String | Read | Current phase of the program running on the appliance |
| rawPhase | Number | Read | Current phase of the program running on the appliance as raw number |
| door | Contact | Read | Current state of the door of the appliance |
| info | Switch | Read | Signals information, check appliance for details |
| failure | Switch | Read | Signals failure, check appliance for details |
| switch | Switch | Write | Switch the appliance on or off |

#### Dishwasher
Expand All @@ -130,6 +132,8 @@ Channels available for each appliance type are listed below.
| elapsed | Number:Time | Read | Time elapsed in the program running on the appliance |
| finish | Number:Time | Read | Time to finish the program running on the appliance |
| door | Contact | Read | Current state of the door of the appliance |
| info | Switch | Read | Signals information, check appliance for details |
| failure | Switch | Read | Signals failure, check appliance for details |
| switch | Switch | Write | Switch the appliance on or off |
| energyConsumption | Number:Energy | Read | Energy consumption by the currently running program on the appliance |
| waterConsumption | Number:Volume | Read | Water consumption by the currently running program on the appliance |
Expand Down Expand Up @@ -172,6 +176,8 @@ Channels available for each appliance type are listed below.
| current | Number:Temperature | Read | Current temperature in the fridge |
| target | Number:Temperature | Read | Target temperature to be reached by the fridge |
| door | Contact | Read | Current state of the door of the appliance |
| info | Switch | Read | Signals information, check appliance for details |
| failure | Switch | Read | Signals failure, check appliance for details |
| switch | Switch | Write | Switch the appliance on or off |

#### Fridge/Freezer combination
Expand All @@ -189,6 +195,8 @@ Channels available for each appliance type are listed below.
| fridgecurrent | Number:Temperature | Read | Current temperature in the fridge compartment |
| fridgetarget | Number:Temperature | Read | Target temperature to be reached by the fridge compartment |
| door | Contact | Read | Current state of the door of the appliance |
| info | Switch | Read | Signals information, check appliance for details |
| failure | Switch | Read | Signals failure, check appliance for details |
| start | Switch | Write | Switch the appliance on or off |

#### Hob
Expand Down Expand Up @@ -247,6 +255,8 @@ Channels available for each appliance type are listed below.
| temp1 | Number:Temperature | Read | Program temperature in the oven 1 |
| temp2 | Number:Temperature | Read | Program temperature in the oven 2 |
| door | Contact | Read | Current state of the door of the appliance |
| info | Switch | Read | Signals information, check appliance for details |
| failure | Switch | Read | Signals failure, check appliance for details |
| switch | Switch | Write | Switch the appliance on or off |
| stop | Switch | Write | Stop the appliance |

Expand Down Expand Up @@ -286,6 +296,8 @@ See oven.
| elapsed | Number:Time | Read | Time elapsed in the program running on the appliance |
| finish | Number:Time | Read | Time to finish the program running on the appliance |
| door | Contact | Read | Current state of the door of the appliance |
| info | Switch | Read | Signals information, check appliance for details |
| failure | Switch | Read | Signals failure, check appliance for details |
| switch | Switch | Write | Switch the appliance on or off |
| step | Number | Read | Current step in the program running on the appliance |

Expand Down Expand Up @@ -351,6 +363,8 @@ See oven.
| elapsed | Number:Time | Read | Time elapsed in the program running on the appliance |
| finish | Number:Time | Read | Time to finish the program running on the appliance |
| door | Contact | Read | Current state of the door of the appliance |
| info | Switch | Read | Signals information, check appliance for details |
| failure | Switch | Read | Signals failure, check appliance for details |
| switch | Switch | Write | Switch the appliance on or off |
| target | Number:Temperature | Read | Temperature of the selected program (10 °C = cold) |
| spinningspeed | String | Read | Spinning speed in the program running on the appliance |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
}
},
PROGRAM_PHASE(RAW_PHASE_PROPERTY_NAME, PHASE_CHANNEL_ID, DecimalType.class, false),
// lightingStatus signalFailure signalInfo
// lightingStatus
DOOR("signalDoor", "door", OpenClosedType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
Expand All @@ -82,6 +82,18 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
return UnDefType.UNDEF;
}
},
INFO("signalInfo", "info", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
FAILURE("signalFailure", "failure", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
SWITCH("", "switch", OnOffType.class, false);

private final Logger logger = LoggerFactory.getLogger(CoffeeMachineChannelSelector.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,18 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
return UnDefType.UNDEF;
}
},
INFO("signalInfo", "info", OnOffType.class, false, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
FAILURE("signalFailure", "failure", OnOffType.class, false, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
SWITCH("", "switch", OnOffType.class, false, false),
ENERGY_CONSUMPTION(EXTENDED_DEVICE_STATE_PROPERTY_NAME, ENERGY_CONSUMPTION_CHANNEL_ID, QuantityType.class, false,
true),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,18 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
return UnDefType.UNDEF;
}
},
INFO("signalInfo", "info", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
FAILURE("signalFailure", "failure", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
START("", "start", OnOffType.class, false);

private final Logger logger = LoggerFactory.getLogger(FridgeChannelSelector.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,18 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
return UnDefType.UNDEF;
}
},
INFO("signalInfo", "info", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
FAILURE("signalFailure", "failure", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
START("", "start", OnOffType.class, false);

private final Logger logger = LoggerFactory.getLogger(FridgeFreezerChannelSelector.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,18 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
return UnDefType.UNDEF;
}
},
INFO("signalInfo", "info", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
FAILURE("signalFailure", "failure", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
STOP("", "stop", OnOffType.class, false),
SWITCH("", "switch", OnOffType.class, false);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,18 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
return UnDefType.UNDEF;
}
},
INFO("signalInfo", "info", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
FAILURE("signalFailure", "failure", OnOffType.class, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
SWITCH("", "switch", OnOffType.class, false);

private final Logger logger = LoggerFactory.getLogger(TumbleDryerChannelSelector.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,18 @@ public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationPr
return UnDefType.UNDEF;
}
},
INFO("signalInfo", "info", OnOffType.class, false, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
FAILURE("signalFailure", "failure", OnOffType.class, false, false) {
@Override
public State getState(String s, @Nullable DeviceMetaData dmd, MieleTranslationProvider translationProvider) {
return OnOffType.from("true".equals(s));
}
},
SWITCH("", "switch", OnOffType.class, false, false),
ENERGY_CONSUMPTION(EXTENDED_DEVICE_STATE_PROPERTY_NAME, ENERGY_CONSUMPTION_CHANNEL_ID, QuantityType.class, false,
true),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,8 @@ channel-type.miele.end.label = End Time
channel-type.miele.end.description = End time of the program (programmed or running)
channel-type.miele.energy-consumption.label = Energy Consumption
channel-type.miele.energy-consumption.description = Energy consumption by the currently running program on the appliance
channel-type.miele.failure.label = Signal Failure
channel-type.miele.failure.description = Signals failure, check appliance for details
channel-type.miele.finish.label = Finish Time
channel-type.miele.finish.description = Time to finish the program running on the appliance
channel-type.miele.finish.state.pattern = %1$tR
Expand All @@ -81,6 +83,8 @@ channel-type.miele.fridgestate.label = Status
channel-type.miele.fridgestate.description = Current status of the fridge compartment
channel-type.miele.heat.label = Remaining Heat
channel-type.miele.heat.description = Remaining heat level of the heating zone/plate
channel-type.miele.info.label = Signal Information
channel-type.miele.info.description = Signals information, check appliance for details
channel-type.miele.phase.label = Phase
channel-type.miele.phase.description = Current phase of the program running on the appliance
channel-type.miele.plates.label = Plates
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,21 @@
<state readOnly="true"></state>
</channel-type>

<channel-type id="info" advanced="true">
<item-type>Switch</item-type>
<label>Signal Information</label>
<description>Signals information, check appliance for details</description>
<state readOnly="true"></state>
</channel-type>

<channel-type id="failure" advanced="true">
<item-type>Switch</item-type>
<label>Signal Failure</label>
<description>Signals failure, check appliance for details</description>
<category>Error</category>
<state readOnly="true"></state>
</channel-type>

<channel-type id="switch">
<item-type>Switch</item-type>
<label>Switch</label>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,15 @@
<channel id="phase" typeId="phase"/>
<channel id="rawPhase" typeId="rawPhase"/>
<channel id="door" typeId="door"/>
<channel id="info" typeId="info"/>
<channel id="failure" typeId="failure"/>
<channel id="switch" typeId="switch"/>
</channels>

<properties>
<property name="thingTypeVersion">1</property>
</properties>

<representation-property>uid</representation-property>

<config-description-ref uri="thing-type:miele:appliance"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,15 @@
<channel id="elapsed" typeId="elapsed"/>
<channel id="finish" typeId="finish"/>
<channel id="door" typeId="door"/>
<channel id="info" typeId="info"/>
<channel id="failure" typeId="failure"/>
<channel id="switch" typeId="switch"/>
<channel id="energyConsumption" typeId="energy-consumption"/>
<channel id="waterConsumption" typeId="water-consumption"/>
</channels>

<properties>
<property name="thingTypeVersion">1</property>
<property name="thingTypeVersion">2</property>
</properties>

<representation-property>uid</representation-property>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,15 @@
<description>Target temperature to be reached by the fridge</description>
</channel>
<channel id="door" typeId="door"/>
<channel id="info" typeId="info"/>
<channel id="failure" typeId="failure"/>
<channel id="start" typeId="switch"/>
</channels>

<properties>
<property name="thingTypeVersion">1</property>
</properties>

<representation-property>uid</representation-property>

<config-description-ref uri="thing-type:miele:appliance"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,15 @@
<description>Target temperature to be reached by the fridge compartment</description>
</channel>
<channel id="door" typeId="door"/>
<channel id="info" typeId="info"/>
<channel id="failure" typeId="failure"/>
<channel id="start" typeId="switch"/>
</channels>

<properties>
<property name="thingTypeVersion">1</property>
</properties>

<representation-property>uid</representation-property>

<config-description-ref uri="thing-type:miele:appliance"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,16 @@
<description>Program temperature in the oven</description>
</channel>
<channel id="door" typeId="door"/>
<channel id="info" typeId="info"/>
<channel id="failure" typeId="failure"/>
<channel id="stop" typeId="stop"/>
<channel id="switch" typeId="switch"/>
</channels>

<properties>
<property name="thingTypeVersion">1</property>
</properties>

<representation-property>uid</representation-property>

<config-description-ref uri="thing-type:miele:appliance"/>
Expand Down