blob: a4c311f1a26ef30a62ce4aa150377927523db86f [file] [log] [blame]
# Copyright (c) 2021 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.
name: 15.1.1. [TC-PCC-1.1] Global attributes with server as DUT
PICS:
- PCC.S
config:
nodeId: 0x12344321
cluster: "Pump Configuration and Control"
endpoint: 1
tests:
- label: "Wait for the commissioned device to be retrieved"
cluster: "DelayCommands"
command: "WaitForCommissionee"
arguments:
values:
- name: "nodeId"
value: nodeId
- label: "TH reads the ClusterRevision attribute from the DUT"
PICS: PCC.S.Afffd
command: "readAttribute"
attribute: "ClusterRevision"
response:
value: 4
constraints:
type: int16u
- label: "TH reads the FeatureMap attribute from the DUT"
PICS:
" PCC.S.Afffc && !PCC.S.F00 && !PCC.S.F01 && !PCC.S.F02 && !PCC.S.F03
&& !PCC.S.F04 && !PCC.S.F05 && !PCC.S.F06 "
command: "readAttribute"
attribute: "FeatureMap"
response:
value: 0
constraints:
type: bitmap32
- label:
"Given PCC.S.F00(PRSCONST) ensure featuremap has the correct bit set"
PICS: PCC.S.F00 && PCC.S.Afffc
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
hasMasksSet: [0x1]
- label:
"Given PCC.S.F01(PRSCOMP) ensure featuremap has the correct bit set"
PICS: PCC.S.F01 && PCC.S.Afffc
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
hasMasksSet: [0x2]
- label: "Given PCC.S.F02(FLW) ensure featuremap has the correct bit set"
PICS: PCC.S.F02 && PCC.S.Afffc
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
hasMasksSet: [0x4]
- label: "Given PCC.S.F03(SPD) ensure featuremap has the correct bit set"
PICS: PCC.S.F03 && PCC.S.Afffc
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
hasMasksSet: [0x8]
- label: "Given PCC.S.F04(TEMP) ensure featuremap has the correct bit set"
PICS: PCC.S.F04 && PCC.S.Afffc
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
hasMasksSet: [0x10]
- label: "Given PCC.S.F05(AUTO) ensure featuremap has the correct bit set"
PICS: PCC.S.F05 && PCC.S.Afffc
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
hasMasksSet: [0x20]
- label: "Given PCC.S.F06(LOCAL) ensure featuremap has the correct bit set"
PICS: PCC.S.F06 && PCC.S.Afffc
command: "readAttribute"
attribute: "FeatureMap"
response:
constraints:
type: bitmap32
hasMasksSet: [0x40]
- label: "TH reads the AttributeList attribute from the DUT"
PICS: PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains:
[
0,
1,
2,
17,
18,
19,
32,
65528,
65529,
65530,
65531,
65532,
65533,
]
- label:
"TH reads optional attribute(MinConstPressure) attribute in
AttributeList from the DUT"
PICS: PCC.S.A0003 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [3]
- label:
"TH reads optional attribute(MaxConstPressure) attribute in
AttributeList from the DUT"
PICS: PCC.S.A0004 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [4]
- label:
"TH reads optional attribute(MinCompPressure) attribute in
AttributeList from the DUT"
PICS: PCC.S.A0005 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [5]
- label:
"TH reads optional attribute(MaxCompPressure) attribute in
AttributeList from the DUT"
PICS: PCC.S.A0006 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [6]
- label:
"TH reads optional attribute(MinConstSpeed) attribute in AttributeList
from the DUT"
PICS: PCC.S.A0007 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [7]
- label:
"TH reads optional attribute(MaxConstSpeed) attribute in AttributeList
from the DUT"
PICS: PCC.S.A0008 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [8]
- label:
"TH reads optional attribute(MinConstFlow) attribute in AttributeList
from the DUT"
PICS: PCC.S.A0009 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [9]
- label:
"TH reads optional attribute(MaxConstFlow) attribute in AttributeList
from the DUT"
PICS: PCC.S.A000a && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [10]
- label:
"TH reads optional attribute(MinConstTemp) attribute in AttributeList
from the DUT"
PICS: PCC.S.A000b && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [11]
- label:
"TH reads optional attribute(MaxConstTemp) attribute in AttributeList
from the DUT"
PICS: PCC.S.A000c && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [12]
- label:
"TH reads optional attribute(PumpStatus) attribute in AttributeList
from the DUT"
PICS: PCC.S.A0010 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [16]
- label:
"TH reads optional attribute(Speed) attribute in AttributeList from
the DUT"
PICS: PCC.S.A0014 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [20]
- label:
"TH reads optional attribute(LifetimeRunningHours) attribute in
AttributeList from the DUT"
PICS: PCC.S.A0015 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [21]
- label:
"TH reads optional attribute(Power) attribute in AttributeList from
the DUT"
PICS: PCC.S.A0016 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [22]
- label:
"TH reads optional attribute(LifetimeEnergyConsumed) attribute in
AttributeList from the DUT"
PICS: PCC.S.A0017 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [23]
- label:
"TH reads optional attribute(ControlMode) attribute in AttributeList
from the DUT"
PICS: PCC.S.A0021 && PCC.S.Afffb
command: "readAttribute"
attribute: "AttributeList"
response:
constraints:
type: list
contains: [33]
#List values range check support https://github.com/project-chip/connectedhomeip/issues/26570
- label:
"TH reads AttributeList attribute from DUT. 1.The list MAY contain
values in the Manufacturer Extensible Identifier (MEI) range:
(0xXXXX_0000 - 0xXXXX_4FFF), where XXXX is the allowed MEI range
(0x0001 - 0xFFF1), these values SHALL be ignored. 2.The list SHALL NOT
contain any values in the Test Vendor or invalid range: (0x0000_5000 -
0x0000_EFFF and 0x0000_FFFF), (0xXXXX_5000 - 0xXXXX_FFFF) and
(0xFFF1_0000 - 0xFFFF_FFFF), where XXXX is the allowed MEI range
(0x0001 - 0xFFF1)"
verification: |
./chip-tool pumpconfigurationandcontrol read attribute-list 1 1
Verify " AttributeList " value consists the list of mandatory attributes (0, 1, 2, 17, 18, 19, 32), global attributes (65528, 65529, 65531, 65530, 65533) and if DUT supports it lists optional attribute (values 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 16, 20, 21, 22, 23, 33) in RPI on the TH(Chip-tool) Log:
[1653994466.323987][6163:6168] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0200 Attribute 0x0000_FFFB DataVersion: 2088686512
[1676289423.470799][4494:4496] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0200 Attribute 0x0000_FFFB DataVersion: 2763063333
[1676289423.470926][4494:4496] CHIP:TOO: AttributeList: 29 entries
[1676289423.470950][4494:4496] CHIP:TOO: [1]: 0
[1676289423.470965][4494:4496] CHIP:TOO: [2]: 1
[1676289423.470979][4494:4496] CHIP:TOO: [3]: 2
[1676289423.470992][4494:4496] CHIP:TOO: [4]: 3
[1676289423.471007][4494:4496] CHIP:TOO: [5]: 4
[1676289423.471022][4494:4496] CHIP:TOO: [6]: 5
[1676289423.471037][4494:4496] CHIP:TOO: [7]: 6
[1676289423.471052][4494:4496] CHIP:TOO: [8]: 7
[1676289423.471066][4494:4496] CHIP:TOO: [9]: 8
[1676289423.471083][4494:4496] CHIP:TOO: [10]: 9
[1676289423.471098][4494:4496] CHIP:TOO: [11]: 10
[1676289423.471113][4494:4496] CHIP:TOO: [12]: 11
[1676289423.471128][4494:4496] CHIP:TOO: [13]: 12
[1676289423.471143][4494:4496] CHIP:TOO: [14]: 16
[1676289423.471158][4494:4496] CHIP:TOO: [15]: 17
[1676289423.471173][4494:4496] CHIP:TOO: [16]: 18
[1676289423.471188][4494:4496] CHIP:TOO: [17]: 19
[1676289423.471203][4494:4496] CHIP:TOO: [18]: 20
[1676289423.471219][4494:4496] CHIP:TOO: [19]: 21
[1676289423.471236][4494:4496] CHIP:TOO: [20]: 22
[1676289423.471251][4494:4496] CHIP:TOO: [21]: 23
[1676289423.471266][4494:4496] CHIP:TOO: [22]: 32
[1676289423.471281][4494:4496] CHIP:TOO: [23]: 33
[1676289423.471296][4494:4496] CHIP:TOO: [24]: 65528
[1676289423.471312][4494:4496] CHIP:TOO: [25]: 65529
[1676289423.471327][4494:4496] CHIP:TOO: [26]: 65530
[1676289423.471342][4494:4496] CHIP:TOO: [27]: 65531
[1676289423.471357][4494:4496] CHIP:TOO: [28]: 65532
[1676289423.471372][4494:4496] CHIP:TOO: [29]: 65533
[1676289423.471674][4494:4496] CHIP:EM: <<< [E:63825i M:222566558 (Ack:152045997)] (S) Msg TX to 1:00000000
cluster: "LogCommands"
command: "UserPrompt"
PICS: PICS_USER_PROMPT && PCC.S.Afffb
arguments:
values:
- name: "message"
value: "Please enter 'y' for success"
- name: "expectedValue"
value: "y"
- label: "TH reads EventList from DUT"
PICS:
" PCC.S.Afffa && !PCC.S.E00 && !PCC.S.E01 && !PCC.S.E02 && !PCC.S.E03
&& !PCC.S.E04 && !PCC.S.E05 && !PCC.S.E06 && !PCC.S.E07 && !PCC.S.E08
&& !PCC.S.E09 && !PCC.S.E0a && !PCC.S.E0b && !PCC.S.E0c && !PCC.S.E0d
&& !PCC.S.E0e && !PCC.S.E0f && !PCC.S.E10 "
command: "readAttribute"
attribute: "EventList"
response:
value: []
constraints:
type: list
- label:
"TH reads from the DUT the EventList optional
(SupplyVoltageLow)attribute."
PICS: PCC.S.E00 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x00]
- label:
"TH reads from the DUT the EventList optional
(SupplyVoltageHigh)attribute."
PICS: PCC.S.E01 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x01]
- label:
"TH reads from the DUT the EventList optional
(PowerMissingPhase)attribute."
PICS: PCC.S.E02 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x02]
- label:
"TH reads from the DUT the EventList optional
(SystemPressureLow)attribute."
PICS: PCC.S.E03 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x03]
- label:
"TH reads from the DUT the EventList optional
(SystemPressureHigh)attribute."
PICS: PCC.S.E04 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x04]
- label:
"TH reads from the DUT the EventList optional (DryRunning)attribute."
PICS: PCC.S.E05 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x05]
- label:
"TH reads from the DUT the EventList optional
(MotorTemperatureHigh)attribute."
PICS: PCC.S.E06 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x06]
- label:
"TH reads from the DUT the EventList optional
(PumpMotorFatalFailure)attribute."
PICS: PCC.S.E07 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x07]
- label:
"TH reads from the DUT the EventList optional
(ElectronicTemperatureHigh)attribute."
PICS: PCC.S.E08 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x08]
- label:
"TH reads from the DUT the EventList optional (PumpBlocked)attribute."
PICS: PCC.S.E09 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x09]
- label:
"TH reads from the DUT the EventList optional
(SensorFailure)attribute."
PICS: PCC.S.E0a && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x0a]
- label:
"TH reads from the DUT the EventList optional
(ElectronicNonFatalFailure)attribute."
PICS: PCC.S.E0b && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x0b]
- label:
"TH reads from the DUT the EventList optional
(ElectronicFatalFailure)attribute."
PICS: PCC.S.E0c && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x0c]
- label:
"TH reads from the DUT the EventList optional (GeneralFault)attribute."
PICS: PCC.S.E0d && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x0d]
- label: "TH reads from the DUT the EventList optional (Leakage)attribute."
PICS: PCC.S.E0e && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x0e]
- label:
"TH reads from the DUT the EventList optional (AirDetection)attribute."
PICS: PCC.S.E0f && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x0f]
- label:
"TH reads from the DUT the EventList optional
(TurbineOperation)attribute."
PICS: PCC.S.E10 && PCC.S.Afffa
command: "readAttribute"
attribute: "EventList"
response:
constraints:
type: list
contains: [0x10]
#List values range check support https://github.com/project-chip/connectedhomeip/issues/26570
- label:
"TH reads EventList attribute from DUT. 1.The list SHALL NOT contain
any additional values in the standard or scoped range: (0x0000_0000 -
0x0000_00FF). 2. The list MAY contain values in the Manufacturer
Extensible Identifier (MEI) range: (0xXXXX_0000 - 0xXXXX_00FF), where
XXXX is the allowed MEI range (0x0001 - 0xFFF1), these values SHALL be
ignored. 3. The list SHALL NOT contain any values in the Test Vendor
or invalid range: (0x0000_0100 - 0x0000_FFFF), (0xXXXX_0100 -
0xXXXX_FFFF) and (0xFFF1_0000 - 0xFFFF_FFFF), where XXXX is the
allowed MEI range (0x0001 - 0xFFF1)"
verification: |
./chip-tool pumpconfigurationandcontrol read event-list 1 1
On TH(chip-tool) Verify that the DUT response contains the EventList attribute and have the list of supported events:
The list MAY include these optional entries:
- 0x00: SHALL be included if and only if PCC.S.E0000(SupplyVoltageLow)
- 0x01: SHALL be included if and only if PCC.S.E0001(SupplyVoltageHigh)
- 0x02: SHALL be included if and only if PCC.S.E0002(PowerMissingPhase)
- 0x03: SHALL be included if and only if PCC.S.E0003(SystemPressureLow)
- 0x04: SHALL be included if and only if PCC.S.E0004(SystemPressureHigh)
- 0x05: SHALL be included if and only if PCC.S.E0005(DryRunning)
- 0x06: SHALL be included if and only if PCC.S.E0006(MotorTemperatureHigh)
- 0x07: SHALL be included if and only if PCC.S.E0007(PumpMotorFatalFailure)
- 0x08: SHALL be included if and only if PCC.S.E0008(ElectronicTemperatureHigh)
- 0x09: SHALL be included if and only if PCC.S.E0009(PumpBlocked)
- 0x0a: SHALL be included if and only if PCC.S.E000a(SensorFailure)
- 0x0b: SHALL be included if and only if PCC.S.E000b(ElectronicNonFatalFailure)
- 0x0c: SHALL be included if and only if PCC.S.E000c(ElectronicFatalFailure)
- 0x0d: SHALL be included if and only if PCC.S.E000d(GeneralFault)
- 0x0e: SHALL be included if and only if PCC.S.E000e(Leakage)
- 0x0f: SHALL be included if and only if PCC.S.E000f(AirDetection)
- 0x10: SHALL be included if and only if PCC.S.E0010(TurbineOperation)
[1676465494.926366][27828:27830] CHIP:DMG: }
[1676465494.926925][27828:27830] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0200 Attribute 0x0000_FFFA DataVersion: 2921467772
[1676465494.926969][27828:27830] CHIP:TOO: EventList: 12 entries
[1676465494.926980][27828:27830] CHIP:TOO: [1]: 0
[1676465494.926987][27828:27830] CHIP:TOO: [2]: 1
[1676465494.926994][27828:27830] CHIP:TOO: [3]: 2
[1676465494.927000][27828:27830] CHIP:TOO: [4]: 3
[1676465494.927007][27828:27830] CHIP:TOO: [5]: 4
[1676465494.927013][27828:27830] CHIP:TOO: [6]: 5
[1676465494.927020][27828:27830] CHIP:TOO: [7]: 6
[1676465494.927026][27828:27830] CHIP:TOO: [8]: 7
[1676465494.927037][27828:27830] CHIP:TOO: [9]: 8
[1676465494.927043][27828:27830] CHIP:TOO: [10]: 9
[1676465494.927049][27828:27830] CHIP:TOO: [11]: 10
[1676465494.927056][27828:27830] CHIP:TOO: [12]: 11
[1676465494.927151][27828:27830] CHIP:EM: <<< [E:22786i S:33761 M:187792061 (Ack:125860330)] (S) Msg TX to 1:0000000000000001 [110F] --- Type 0000:10 (SecureChannel:StandaloneAck)
[1676465494.927165][27828:27830] CHIP:IN: (S) Sending msg 187792061 on secure session with LSID: 33761
cluster: "LogCommands"
command: "UserPrompt"
PICS: PICS_USER_PROMPT && PCC.S.Afffa
arguments:
values:
- name: "message"
value: "Please enter 'y' for success"
- name: "expectedValue"
value: "y"
- label:
"TH reads AcceptedCommandList attribute from DUT. 1.The list MAY
contain values in the Manufacturer Extensible Identifier (MEI) range:
(0xXXXX_0000 - 0xXXXX_00FF), where XXXX is the allowed MEI range
(0x0001 - 0xFFF1), these values SHALL be ignored. 2.The list SHALL NOT
contain any values in the Test Vendor or invalid range: (0x0000_0100 -
0x0000_FFFF), (0xXXXX_0100 - 0xXXXX_FFFF) and (0xFFF1_0000 -
0xFFFF_FFFF), where XXXX is the allowed MEI range (0x0001 - 0xFFF1)"
verification: |
./chip-tool pumpconfigurationandcontrol read accepted-command-list 1 1
Verify "AcceptedCommandList " consists the list of supported commands, Also verify that the DUT response with an empty list (0 entries) if there is no accepted command on the TH(Chip-tool) Log:
[1650441052.209252][7168:7173] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0200 Attribute 0x0000_FFF9 DataVersion: 57416550
[1650441052.209350][7168:7173] CHIP:TOO: AcceptedCommandList: 0 entries
cluster: "LogCommands"
command: "UserPrompt"
PICS: PICS_USER_PROMPT && PCC.S.Afff9
arguments:
values:
- name: "message"
value: "Please enter 'y' for success"
- name: "expectedValue"
value: "y"
- label:
"TH reads GeneratedCommandList attribute from DUT. 1.The list MAY
contain values in the Manufacturer Extensible Identifier (MEI) range:
(0xXXXX_0000 - 0xXXXX_00FF), where XXXX is the allowed MEI range
(0x0001 - 0xFFF1), these values SHALL be ignored. 2.The list SHALL NOT
contain any values in the Test Vendor or invalid range: (0x0000_0100 -
0x0000_FFFF), (0xXXXX_0100 - 0xXXXX_FFFF) and (0xFFF1_0000 -
0xFFFF_FFFF), where XXXX is the allowed MEI range (0x0001 - 0xFFF1)"
verification: |
./chip-tool pumpconfigurationandcontrol read generated-command-list 1 1
Verify " GeneratedCommandList " consists the list of supported commands, Also verify that the DUT response with an empty list (0 entries) if there is no generated command on the TH(Chip-tool) Log:
[1650441182.692505][7174:7179] CHIP:TOO: Endpoint: 1 Cluster: 0x0000_0200 Attribute 0x0000_FFF8 DataVersion: 57416550 [1650441182.692600][7174:7179] CHIP:TOO: GeneratedCommandList: 0 entries
cluster: "LogCommands"
command: "UserPrompt"
PICS: PICS_USER_PROMPT && PCC.S.Afff8
arguments:
values:
- name: "message"
value: "Please enter 'y' for success"
- name: "expectedValue"
value: "y"