-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
【Feature】dishwasher operational state cluster xml #26949
Changes from all commits
9dc6d27
a7f6e3b
2932f17
d2bd401
ecafd88
295f30e
247795f
0618092
df902bc
c952dbe
a936321
8a405d1
a8702c4
29dd7c0
cc7d7d8
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
<?xml version="1.0"?> | ||
<!-- | ||
Copyright (c) 2023 Project CHIP Authors | ||
|
||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
|
||
http://www.apache.org/licenses/LICENSE-2.0 | ||
|
||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
--> | ||
<configurator> | ||
<domain name="CHIP"/> | ||
|
||
<enum name="OperationalStateEnum" type="ENUM8"> | ||
mideayanghui marked this conversation as resolved.
Show resolved
Hide resolved
|
||
<cluster code="0x005A"/> | ||
<item name="Stopped" value="0x00"/> | ||
mideayanghui marked this conversation as resolved.
Show resolved
Hide resolved
|
||
<item name="Running" value="0x01"/> | ||
<item name="Paused" value="0x02"/> | ||
<item name="Error" value="0x03"/> | ||
</enum> | ||
|
||
<enum name="ErrorStateEnum" type="ENUM8"> | ||
<cluster code="0x005A"/> | ||
<item name="NoError" value="0x00"/> | ||
mideayanghui marked this conversation as resolved.
Show resolved
Hide resolved
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Similar comment to my previous one. The values from the generic Operational State cluster (0x01 to 0x03) should not be redefined here. This enum should only include those specific to this cluster derivation (0x40 to 0x45). Please see what was done for the Mode Select cluster and its derivations, in this merged PR: https://github.com/project-chip/connectedhomeip/pull/26508/files# src/app/zap-templates/zcl/data-model/chip/dishwasher-mode-select-cluster.xml There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Sorry, I'm not sure why this was marked as resolved. Please clarify. |
||
<item name="UnableToStartOrResume" value="0x01"/> | ||
<item name="UnableToCompleteOperation" value="0x02"/> | ||
<item name="CommandInvalidInState" value="0x03"/> | ||
<item name="InflowError" value="0x40"/> | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could you point me to where these Dishwasher specific errors are defined in the spec? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. They used to be there, then got removed in https://github.com/CHIP-Specifications/connectedhomeip-spec/pull/7070 Hence my question above about what changes this XML needs as a result. |
||
<item name="DrainError" value="0x41"/> | ||
<item name="DoorError" value="0x42"/> | ||
<item name="TempTooLow" value="0x43"/> | ||
<item name="TempTooHigh" value="0x44"/> | ||
<item name="WaterLevelError" value="0x45"/> | ||
</enum> | ||
|
||
<struct name="OperationalStateStruct"> | ||
mideayanghui marked this conversation as resolved.
Show resolved
Hide resolved
|
||
<cluster code="0x005A"/> | ||
<item name="OperationalStateID" type="OperationalStateEnum" optional="false"/> | ||
<item name="OperationalStateLabel" type="CHAR_STRING" optional="false" length="64"/> | ||
</struct> | ||
|
||
<struct name="ErrorStateStruct"> | ||
mideayanghui marked this conversation as resolved.
Show resolved
Hide resolved
|
||
<cluster code="0x005A"/> | ||
<item name="ErrorStateID" type="ErrorStateEnum" optional="false" /> | ||
<item name="ErrorStateLabel" type="CHAR_STRING" optional="false" isNullable="true" length="64"/> | ||
<item name="ErrorStateDetails" type="CHAR_STRING" optional="true" length="64"/> | ||
</struct> | ||
|
||
<cluster> | ||
<domain>Appliances</domain> | ||
<name>Dishwasher Operational State</name> | ||
<code>0x005A</code> | ||
<define>OPERATIONAL_STATE_DISHWASHER_CLUSTER</define> | ||
<client init="false" tick="false">true</client> | ||
<server init="false" tick="false">true</server> | ||
<description>This cluster supports remotely monitoring and, where supported, changing the operational state of a Dishwasher.</description> | ||
|
||
<globalAttribute side="server" code="0xFFFD" value="1" /> | ||
|
||
<attribute side="server" code="0x0000" define="PHASE_LIST" type="ARRAY" entryType="CHAR_STRING" writable="false" isNullable="true" optional="false">PhaseList</attribute> | ||
<attribute side="server" code="0x0001" define="CURRENT_PHASE" type="INT8U" min="0x00" max="0x1F" writable="false" isNullable="true" optional="false">CurrentPhase</attribute> | ||
<attribute side="server" code="0x0002" define="COUNTDOWN_TIME" type="elapsed_s" min="0x00" max="2529200" writable="false" isNullable="true" optional="true">CountdownTime</attribute> | ||
<attribute side="server" code="0x0003" define="OPERATIONAL_STATE_LIST" type="ARRAY" entryType="OperationalStateStruct" writable="false" optional="false">OperationalStateList</attribute> | ||
<attribute side="server" code="0x0004" define="OPERATIONAL_STATE" type="OperationalStateStruct" writable="false" optional="false">OperationalState</attribute> | ||
<attribute side="server" code="0x0005" define="OPERATIONAL_ERROR" type="ErrorStateStruct" writable="false" optional="false">OperationalError</attribute> | ||
|
||
<command source="client" code="0x00" name="Pause" response="OperationalCommandResponse" optional="true"> | ||
<description>Upon receipt, the device SHALL pause its operation if it is possible based on the current function of the server.</description> | ||
</command> | ||
|
||
<command source="client" code="0x01" name="Stop" response="OperationalCommandResponse" optional="true"> | ||
<description>Upon receipt, the device SHALL stop its operation if it is at a position where it is safe to do so and/or permitted.</description> | ||
</command> | ||
|
||
<command source="client" code="0x02" name="Start" response="OperationalCommandResponse" optional="true"> | ||
<description>Upon receipt, the device SHALL start its operation if it is safe to do so and the device is in an operational state from which it can be started.</description> | ||
</command> | ||
|
||
<command source="client" code="0x03" name="Resume" response="OperationalCommandResponse" optional="true"> | ||
<description>Upon receipt, the device SHALL resume its operation from the point it was at when it received the Pause command, or from the point when it was paused by means outside of this cluster (for example by manual button press).</description> | ||
</command> | ||
|
||
<command source="server" code="0x04" name="OperationalCommandResponse" optional="true"> | ||
<description>This command SHALL be generated in response to any of the Start, Stop, Pause, or Resume commands.</description> | ||
<arg name="CommandResponseState" type="ErrorStateStruct"/> | ||
</command> | ||
|
||
<event side="server" code="0x00" priority="critical" name="OperationalError" optional="false"> | ||
<description>OperationalError</description> | ||
<field id="0" name="ErrorState" type="ErrorStateStruct" /> | ||
</event> | ||
|
||
<event side="server" code="0x01" priority="info" name="OperationCompletion" optional="true"> | ||
<description>OperationCompletion</description> | ||
<field id="0" name="CompletionErrorCode" type="ErrorStateEnum" /> | ||
<field id="1" name="TotalOperationalTime" type="elapsed_s" isNullable="true" optional="true"/> | ||
<field id="2" name="PausedTime" type="elapsed_s" isNullable="true" optional="true"/> | ||
</event> | ||
|
||
</cluster> | ||
</configurator> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this still relevant given https://github.com/CHIP-Specifications/connectedhomeip-spec/pull/7070 ?