blob: 6e9dd0f317e56ba0578f3b1c5111ee4a4bbd47e9 [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.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default
name:
3.3.16. [TC-DD-3.16] Commissioning Flow - 11-digit Manual Pairing Code -
Negative Scenario [DUT - Commissioner]
PICS:
- MCORE.ROLE.COMMISSIONER
- MCORE.DD.11_MANUAL_PC
config:
nodeId: 0x12344321
cluster: "Basic"
endpoint: 0
tests:
- label: "Note"
verification: |
Chip-tool command used below are an example to verify the DUT as commissioner test cases. For certification test, we expect DUT should have a capability or way to run the equivalent command.
disabled: true
- label: "Preconditions"
verification: |
1 - DUT is on an operational network and has accurate date, time, timezone, regulatory, and fabric information available.
2 - 5.1.4.2 - 11-digit Manual Pairing Code is printed on the Commissionee device or in additional provided materials (ex: manual).
An example onboarding payload could be "34970112332" (following 5.1.4. Table 37. "Manual Pairing Code Elements") which each include:
- 1-bit VID_PID_PRESENT = 0 (11-digit only)
- 1-bit VERSION=0
- 4-bit SHORT DISCRIMINATOR=0xF00 (4 Most-significant bits of the 12-bits Discriminator value)
- 27-bit PASSCODE=20202021 (see section 5.1.6. Generation of the Passcode)
- 16-bit VENDOR_ID=0xFFF1 (as defined in section 2.5.2. "Vendor Identifier", for 21-digit Manual Pairing Code only)
- 16-bit PRODUCT_ID=0x8001 (as defined in section 2.5.3. "Product Identifier", present if and only if VID is present)
- A generated CHECK_DIGIT (see section 5.1.4. Manual Pairing Code, subsection "Check Digit")
disabled: true
- label:
"Provide the 11-digit Manual Pairing Code from the Commissionee to the
DUT in any format supported by DUT"
verification: |
Verify on the TH Commissionee side:
$ ./out/all-clusters-app/chip-all-clusters-app --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --custom-flow 0 --capabilities 4 --discriminator 3840 --passcode 20202021
[1651180718.960383][13218:13218] CHIP:DL: Device Configuration:
[1651180718.960441][13218:13218] CHIP:DL: Serial Number: TEST_SN
[1651180718.960477][13218:13218] CHIP:DL: Vendor Id: 65521 (0xFFF1)
[1651180718.960512][13218:13218] CHIP:DL: Product Id: 32769 (0x8001)
[1651180718.960546][13218:13218] CHIP:DL: Hardware Version: 0
[1651180718.960569][13218:13218] CHIP:DL: Setup Pin Code (0 for UNKNOWN/ERROR): 20202021
[1651180718.960597][13218:13218] CHIP:DL: Setup Discriminator (0xFFFF for UNKNOWN/ERROR): 3840 (0xF00)
[1651180718.960627][13218:13218] CHIP:DL: Manufacturing Date: (not set)
[1651180718.960650][13218:13218] CHIP:DL: Device Type: 65535 (0xFFFF)
[1651180718.960671][13218:13218] CHIP:-: ==== Onboarding payload for Standard Commissioning Flow ====
[1651180718.960729][13218:13218] CHIP:SVR: SetupQRCode: [MT:-24J0AFN00KA0648G00]
[1651180718.960760][13218:13218] CHIP:SVR: Copy/paste the below URL in a browser to see the QR Code:
[1651180718.960781][13218:13218] CHIP:SVR: https://dhrishi.github.io/connectedhomeip/qrcode.html?data=MT%3A-24J0AFN00KA0648G00
[1651180718.960814][13218:13218] CHIP:SVR: Manual pairing code: [34970112332]
disabled: true
- label:
"VERSION: Using the manual code from Step 1, generate a new manual
code but substituting out the current VERSION with an invalid VERSION:
2"
verification: |
1. Use chip-tool"s "payload verhoeff-generate" command to help generate the new, invalid Manual code
No applicable DUT or TH logs
$ ./chip-tool payload verhoeff-generate 8497011233
[1651186243492] [13415:349553] CHIP: [SPL] Generating Character for: 84970112331
[1651186243492] [13415:349553] CHIP: [SPL] Generated Char: 1
Manual Code: 84970112331
disabled: true
- label:
"Provide the Manual Pairing Code, generated in the previous step, to
the DUT in any format supported by the DUT"
verification: |
$ ./chip-tool pairing code 1 84970112331
Verify in DUT Commissioner side
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
disabled: true
- label:
"VID_PID_PRESENT: Using the manual code from Step 1, generate a new
manual code but substituting out the current VID_PID_PRESENT with an
invalid VID_PID_PRESENT set to 1"
verification: |
1. Use chip-tool"s "payload generate-manualcode" command to help generate the new, invalid Manual code
No applicable DUT or TH logs
$ ./chip-tool payload generate-manualcode --discriminator 0xF00 --setup-pin-code 20202021 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 2 --force-short-code 1
[1651181048462] [11611:269469] CHIP: [TOO] Manual Code: 74970112334
disabled: true
- label:
"Provide the Manual Pairing Code, generated in the previous step, to
the DUT in any format supported by the DUT"
verification: |
$ ./chip-tool pairing code 1 74970112334
Verify on the DUT Commissioner side:
[1651184274318] [12512:321250] CHIP: [SPL] Failed decoding base10. Input length 10 was not expected length 20
...
[1651184274321] [12512:321244] CHIP: [TOO] Run command failure: ../../examples/chip-tool/third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:63: CHIP Error 0x0000001E: Invalid string length
disabled: true
- label:
"SHORT DISCRIMINATOR: Using the manual code from Step 1, generate a
new manual code but substituting out the current SHORT DISCRIMINATOR
string with a discriminator value that makes the generated manual code
differ from Step 1s manual code (i.e. Choose a discriminator value
that changes any of the 4 most-significant bits of Step 1s 12-bit
discriminator value and adheres to rules of section 5.1.1.5.
Discriminator value)"
verification: |
1. Use chip-tool"s "payload generate-manualcode" command to help generate the new, invalid Manual code
No applicable DUT or TH logs
$ ./chip-tool payload generate-manualcode --existing-payload 34970112332 --discriminator 0xE00
[1657236763262] [31784:16850989] CHIP: [TOO] Manual Code: 33331712336
Manual Code: 33331712336
disabled: true
- label:
"Provide the Manual Pairing Code, generated in the previous step, to
the DUT in any format supported by the DUT"
verification: |
Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 33331712336
[1654001605.517505][3200:3205] CHIP:-: ../../third_party/connectedhomeip/src/platform/Linux/BLEManagerImpl.cpp:748: CHIP Error 0x0000002D: Not Implemented at ../../third_party/connectedhomeip/src/controller/SetUpCodePairer.cpp:450
[1654001605.517563][3200:3205] CHIP:CTL: Stopping commissioning discovery over DNS-SD
[1654001605.517619][3200:3205] CHIP:TOO: Secure Pairing Failed
disabled: true
- label:
"Passcode: Using the manual code from Step 1, generate a new manual
code using all the same Onboarding Payload components except for the
Passcode. For each Passcode in the following list, set the Passcode
component to one of the invalid Passcode and generate a new manual
code using all the same Onboarding Payload components and one Passcode
from the list: 00000000, 11111111, 22222222, 33333333, 44444444,
55555555, 66666666, 77777777, 88888888, 99999999, 12345678, 87654321"
verification: |
1. Use these as examples of how to generate manual codes with invalid passcodes
No applicable DUT or TH logs
"34915200008" (00000000),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 00000000
[1651182185732] [11790:282099] CHIP: [TOO] Manual Code: 34915200008
"35191106788" (11111111),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 11111111
[1651182284292] [11799:283222] CHIP: [TOO] Manual Code: 35191106788
"35467013565" (22222222),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 22222222
[1651182331458] [11817:283904] CHIP: [TOO] Manual Code: 35467013565
"35742920344" (33333333),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 33333333
[1651182345419] [11876:284294] CHIP: [TOO] Manual Code: 35742920344
"36018827124" (44444444),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 44444444
[1651182362963] [11944:284816] CHIP: [TOO] Manual Code: 36018827124
"36294733900" (55555555),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 55555555
[1651182375363] [11945:284938] CHIP: [TOO] Manual Code: 36294733900
"34932240691" (66666666),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 66666666
[1651182395140] [11958:285261] CHIP: [TOO] Manual Code: 34932240691
"35208147474" (77777777),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 77777777
[1651182411341] [11966:285478] CHIP: [TOO] Manual Code: 35208147474
"35484054250" (88888888),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 88888888
[1651182422264] [11967:285581] CHIP: [TOO] Manual Code: 35484054250
"35759961037" (99999999),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 99999999
[1651182431755] [11968:285672] CHIP: [TOO] Manual Code: 35759961037
"35767807533" (12345678),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 12345678
[1651182443511] [11969:285786] CHIP: [TOO] Manual Code: 35767807533
"36545753496" (87654321),
$ ./chip-tool payload generate-manualcode --discriminator 3840 --version 0 --vendor-id 0xFFF1 --product-id 0x8001 --commissioning-mode 0 --allow-invalid-payload 1 --setup-pin-code 87654321
[1651182459737] [11970:285960] CHIP: [TOO] Manual Code: 36545753496
disabled: true
- label:
"Provide each of the Manual Pairing Codes, generated in the previous
step, to the DUT in any format supported by the DUT"
verification: |
Verify on the DUT Commissioner side:
No applicable TH logs
(00000000)
$ ./chip-tool pairing code 1 34915200008
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(11111111)
$ ./chip-tool pairing code 1 35191106788
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(22222222)
$ ./chip-tool pairing code 1 35467013565
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(33333333)
$ ./chip-tool pairing code 1 35742920344
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(44444444)
$ ./chip-tool pairing code 1 36018827124
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(55555555)
$ ./chip-tool pairing code 1 36294733900
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(66666666)
$ ./chip-tool pairing code 1 34932240691
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(77777777)
$ ./chip-tool pairing code 1 35208147474
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(88888888)
$ ./chip-tool pairing code 1 35484054250
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(99999999)
$ ./chip-tool pairing code 1 35759961037
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(12345678)
$ ./chip-tool pairing code 1 35767807533
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
(87654321)
$ ./chip-tool pairing code 1 36545753496
Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:137: CHIP Error 0x0000002F: Invalid argument
disabled: true
- label:
"CHECK_DIGIT: Using the manual code from Step 1, generate a new manual
code but substituting out the current CHECK_DIGIT with an invalid
CHECK_DIGIT (i.e. Any different CHECK_DIGIT than the commissionees
CHECK_DIGIT while following Table 38. Encoding Method without Vendor
and Product IDs (VID_PID_Present == 0))"
verification: |
1. Manually change the last digit of the manual pairing code to a different digit
No applicable DUT or TH logs
Manual Code: 34970112331
disabled: true
- label:
"Provide the Manual Pairing Code, generated in the previous step, to
the DUT in any format supported by the DUT"
verification: |
Verify on the DUT Commissioner side:
$ ./chip-tool pairing code 1 34970112331
[1657586218401] [10710:465838] CHIP: [TOO] Run command failure: ../../third_party/connectedhomeip/src/setup_payload/ManualSetupPayloadParser.cpp:50: CHIP Error 0x00000013: Integrity check failed
disabled: true