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

Don't expire failsafe when commissioning window closes #19695

Conversation

tehampson
Copy link
Contributor

@tehampson tehampson commented Jun 16, 2022

Problem

*Fixes #19678

Change overview

No longer expire the failsafe timer when the commission window closes either due to open window timeout or RevokeCommissioning command

Testing

  • Github CI
  • Did the following process:
    • Terminal 1:
      • chip-tool pairing onnetwork 1 20202021
      • chip-tool pairing open-commissioning-window 1 0 200 1000 3840
    • Terminal 2:
      • chip-tool interactive start
        • pairing code-paseonly 17 749701123365521327694
    • Terminal 1:
      • chip-tool administratorcommissioning revoke-commissioning 1 0 --timedInteractionTimeoutMs 1000
    • Terminal 2 (in interactive shell):
      • generalcommissioning arm-fail-safe 60 0 17 0
      • Confirmed command goes through, previously on the revoke-commissioning fail-safe would trigger and this command would never send

@github-actions
Copy link

github-actions bot commented Jun 16, 2022

PR #19695: Size comparison from 0a90632 to 45f5d70

Increases (37 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, nrfconnect, p6, telink)
platform target config section 0a90632 45f5d70 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 659531 659547 16 0.0
.text 572136 572152 16 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 647999 648015 16 0.0
.text 557272 557288 16 0.0
lock-ftd LP_CC2652R7 (read only) 690451 690467 16 0.0
.text 590804 590820 16 0.0
lock-mtd LP_CC2652R7 (read only) 639859 639875 16 0.0
.text 540324 540340 16 0.0
pump-app LP_CC2652R7 (read only) 671403 671419 16 0.0
.text 583660 583676 16 0.0
pump-controller-app LP_CC2652R7 (read only) 662399 662407 8 0.0
.text 576732 576740 8 0.0
shell LP_CC2652R7 (read only) 688946 688954 8 0.0
.text 578976 578984 8 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 612738 612754 16 0.0
.app_xip_area 469404 469420 16 0.0
lock cyw930739m2evb_01 (read/write) 610046 610062 16 0.0
.app_xip_area 466536 466552 16 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 616046 616054 8 0.0
.app_xip_area 473600 473608 8 0.0
efr32 lighting-app BRD4161A (read only) 924008 924024 16 0.0
.text 924000 924016 16 0.0
BRD4161A+rpc (read only) 959712 959728 16 0.0
.text 959704 959720 16 0.0
BRD4161A+rs911x (read only) 799092 799108 16 0.0
.text 799084 799100 16 0.0
lock-app BRD4161A+wf200 (read only) 965508 965540 32 0.0
.text 965500 965532 32 0.0
window-app BRD4161A (read only) 909104 909120 16 0.0
.text 909096 909112 16 0.0
esp32 all-clusters-app c3devkit (read only) 1012634 1012654 20 0.0
.flash.text 1012634 1012654 20 0.0
m5stack (read only) 1067171 1067199 28 0.0
.flash.text 1061787 1061815 28 0.0
k32w light k32w061+release (read/write) 658876 658892 16 0.0
.text 582328 582344 16 0.0
linux all-clusters-app debug (read only) 2929593 2929625 32 0.0
.text 2493730 2493762 32 0.0
all-clusters-minimal-app debug (read only) 2783305 2783337 32 0.0
.text 2348082 2348114 32 0.0
bridge-app debug+rpc (read only) 2285921 2285969 48 0.0
.text 1930530 1930578 48 0.0
lighting-app debug+rpc (read only) 2518673 2518721 48 0.0
.text 2138914 2138962 48 0.0
lock-app debug (read only) 2457401 2457433 32 0.0
.text 2069346 2069378 32 0.0
ota-provider-app debug (read only) 2295281 2295329 48 0.0
.text 1933202 1933250 48 0.0
ota-requestor-app debug (read only) 2411009 2411041 32 0.0
.text 2037010 2037042 32 0.0
shell debug (read only) 2603137 2603169 32 0.0
.text 2213634 2213666 32 0.0
thermostat-no-ble arm64 (read only) 2570668 2570732 64 0.0
.text 2168224 2168288 64 0.0
tv-app debug (read only) 3067137 3067185 48 0.0
.text 2634610 2634658 48 0.0
tv-casting-app debug (read only) 5549993 5550041 48 0.0
.text 4932354 4932402 48 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 text 822504 822512 8 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1146655 1146671 16 0.0
text 794724 794736 12 0.0
p6 all-clusters-app default (read/write) 2553568 2553584 16 0.0
.text 1511832 1511848 16 0.0
all-clusters-minimal-app default (read/write) 2499416 2499448 32 0.0
.text 1457680 1457712 32 0.0
light-app default (read/write) 2430160 2430176 16 0.0
.text 1388424 1388440 16 0.0
lock-app default (read/write) 2450784 2450800 16 0.0
.text 1409048 1409064 16 0.0
telink light-switch-app tlsr9518adk80d (read/write) 789008 789032 24 0.0
text 559600 559620 20 0.0
lighting-app tlsr9518adk80d (read/write) 808728 808744 16 0.0
text 576066 576082 16 0.0
Decreases (5 builds for cc13x2_26x2)
platform target config section 0a90632 45f5d70 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 191332 191316 -16 -0.0
lock-ftd LP_CC2652R7 (read/write) 150524 150508 -16 -0.0
pump-app LP_CC2652R7 (read/write) 170460 170444 -16 -0.0
pump-controller-app LP_CC2652R7 (read/write) 179592 179584 -8 -0.0
shell LP_CC2652R7 (read/write) 157412 157404 -8 -0.0
Full report (41 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 0a90632 45f5d70 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 659531 659547 16 0.0
(read/write) 191332 191316 -16 -0.0
.bss 73756 73756 0 0.0
.data 3356 3356 0 0.0
.rodata 87083 87083 0 0.0
.text 572136 572152 16 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 647999 648015 16 0.0
(read/write) 157316 157316 0 0.0
.bss 73044 73044 0 0.0
.data 3356 3356 0 0.0
.rodata 90407 90407 0 0.0
.text 557272 557288 16 0.0
lock-ftd LP_CC2652R7 (read only) 690451 690467 16 0.0
(read/write) 150524 150508 -16 -0.0
.bss 70756 70756 0 0.0
.data 3280 3280 0 0.0
.rodata 99163 99163 0 0.0
.text 590804 590820 16 0.0
lock-mtd LP_CC2652R7 (read only) 639859 639875 16 0.0
(read/write) 143888 143888 0 0.0
.bss 66492 66492 0 0.0
.data 3280 3280 0 0.0
.rodata 99043 99043 0 0.0
.text 540324 540340 16 0.0
pump-app LP_CC2652R7 (read only) 671403 671419 16 0.0
(read/write) 170460 170444 -16 -0.0
.bss 70876 70876 0 0.0
.data 3280 3280 0 0.0
.rodata 87259 87259 0 0.0
.text 583660 583676 16 0.0
pump-controller-app LP_CC2652R7 (read only) 662399 662407 8 0.0
(read/write) 179592 179584 -8 -0.0
.bss 71004 71004 0 0.0
.data 3276 3276 0 0.0
.rodata 85183 85183 0 0.0
.text 576732 576740 8 0.0
shell LP_CC2652R7 (read only) 688946 688954 8 0.0
(read/write) 157412 157404 -8 -0.0
.bss 76052 76052 0 0.0
.data 3360 3360 0 0.0
.rodata 109658 109658 0 0.0
.text 578976 578984 8 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 612738 612754 16 0.0
.app_xip_area 469404 469420 16 0.0
.bss 86288 86288 0 0.0
.data 728 728 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 610046 610062 16 0.0
.app_xip_area 466536 466552 16 0.0
.bss 86464 86464 0 0.0
.data 732 732 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 616046 616054 8 0.0
.app_xip_area 473600 473608 8 0.0
.bss 85456 85456 0 0.0
.data 672 672 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 924008 924024 16 0.0
(read/write) 132416 132416 0 0.0
.bss 130336 130336 0 0.0
.data 2080 2080 0 0.0
.text 924000 924016 16 0.0
BRD4161A+rpc (read only) 959712 959728 16 0.0
(read/write) 149296 149296 0 0.0
.bss 147008 147008 0 0.0
.data 2284 2284 0 0.0
.text 959704 959720 16 0.0
BRD4161A+rs911x (read only) 799092 799108 16 0.0
(read/write) 128692 128692 0 0.0
.bss 126604 126604 0 0.0
.data 2088 2088 0 0.0
.text 799084 799100 16 0.0
lock-app BRD4161A+wf200 (read only) 965508 965540 32 0.0
(read/write) 129068 129068 0 0.0
.bss 126980 126980 0 0.0
.data 2088 2088 0 0.0
.text 965500 965532 32 0.0
window-app BRD4161A (read only) 909104 909120 16 0.0
(read/write) 132520 132520 0 0.0
.bss 130408 130408 0 0.0
.data 2108 2108 0 0.0
.text 909096 909112 16 0.0
esp32 all-clusters-app c3devkit (read only) 1012634 1012654 20 0.0
(read/write) 1482898 1482898 0 0.0
.dram0.bss 69392 69392 0 0.0
.dram0.data 14632 14632 0 0.0
.flash.rodata 213440 213440 0 0.0
.flash.text 1012634 1012654 20 0.0
.iram0.text 62902 62902 0 0.0
m5stack (read only) 1067171 1067199 28 0.0
(read/write) 485016 485016 0 0.0
.dram0.bss 74912 74912 0 0.0
.dram0.data 34144 34144 0 0.0
.flash.rodata 243964 243964 0 0.0
.flash.text 1061787 1061815 28 0.0
.iram0.text 123267 123267 0 0.0
k32w light k32w061+release (read/write) 658876 658892 16 0.0
.bss 68756 68756 0 0.0
.data 1992 1992 0 0.0
.text 582328 582344 16 0.0
lock k32w061+release (read/write) 720848 720848 0 0.0
.bss 69196 69196 0 0.0
.data 2000 2000 0 0.0
.text 643852 643852 0 0.0
linux all-clusters-app debug (read only) 2929593 2929625 32 0.0
(read/write) 188656 188656 0 0.0
.bss 95744 95744 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 84664 84664 0 0.0
.dynamic 608 608 0 0.0
.got 4536 4536 0 0.0
.init 27 27 0 0.0
.init_array 1032 1032 0 0.0
.rodata 259421 259421 0 0.0
.text 2493730 2493762 32 0.0
all-clusters-minimal-app debug (read only) 2783305 2783337 32 0.0
(read/write) 180560 180560 0 0.0
.bss 95072 95072 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 77304 77304 0 0.0
.dynamic 608 608 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 1032 1032 0 0.0
.rodata 260957 260957 0 0.0
.text 2348082 2348114 32 0.0
bridge-app debug+rpc (read only) 2285921 2285969 48 0.0
(read/write) 159424 159424 0 0.0
.bss 83136 83136 0 0.0
.data 3792 3792 0 0.0
.data.rel.ro 66728 66728 0 0.0
.dynamic 608 608 0 0.0
.got 4392 4392 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 194304 194304 0 0.0
.text 1930530 1930578 48 0.0
chip-tool debug (read only) 10140045 10140045 0 0.0
(read/write) 609544 609544 0 0.0
.bss 24352 24352 0 0.0
.data 1088 1088 0 0.0
.data.rel.ro 577808 577808 0 0.0
.dynamic 624 624 0 0.0
.got 5008 5008 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 508725 508725 0 0.0
.text 8225589 8225589 0 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 9881788 9881788 0 0.0
(read/write) 674225 674225 0 0.0
.bss 42641 42641 0 0.0
.data 1152 1152 0 0.0
.data.rel.ro 613208 613208 0 0.0
.dynamic 528 528 0 0.0
.got 13416 13416 0 0.0
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 472300 472300 0 0.0
.text 7873060 7873060 0 0.0
lighting-app debug+rpc (read only) 2518673 2518721 48 0.0
(read/write) 163448 163448 0 0.0
.bss 83616 83616 0 0.0
.data 2064 2064 0 0.0
.data.rel.ro 71896 71896 0 0.0
.dynamic 608 608 0 0.0
.got 4424 4424 0 0.0
.init 27 27 0 0.0
.init_array 816 816 0 0.0
.rodata 210056 210056 0 0.0
.text 2138914 2138962 48 0.0
lock-app debug (read only) 2457401 2457433 32 0.0
(read/write) 158096 158096 0 0.0
.bss 82016 82016 0 0.0
.data 1680 1680 0 0.0
.data.rel.ro 68568 68568 0 0.0
.dynamic 608 608 0 0.0
.got 4424 4424 0 0.0
.init 27 27 0 0.0
.init_array 776 776 0 0.0
.rodata 223752 223752 0 0.0
.text 2069346 2069378 32 0.0
ota-provider-app debug (read only) 2295281 2295329 48 0.0
(read/write) 152232 152232 0 0.0
.bss 81696 81696 0 0.0
.data 1912 1912 0 0.0
.data.rel.ro 62840 62840 0 0.0
.dynamic 608 608 0 0.0
.got 4488 4488 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 199928 199928 0 0.0
.text 1933202 1933250 48 0.0
ota-requestor-app debug (read only) 2411009 2411041 32 0.0
(read/write) 158976 158976 0 0.0
.bss 84000 84000 0 0.0
.data 2200 2200 0 0.0
.data.rel.ro 66936 66936 0 0.0
.dynamic 608 608 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 203616 203616 0 0.0
.text 2037010 2037042 32 0.0
shell debug (read only) 2603137 2603169 32 0.0
(read/write) 219288 219288 0 0.0
.bss 134504 134504 0 0.0
.data 1232 1232 0 0.0
.data.rel.ro 77808 77808 0 0.0
.dynamic 608 608 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 936 936 0 0.0
.rodata 229746 229746 0 0.0
.text 2213634 2213666 32 0.0
thermostat-no-ble arm64 (read only) 2570668 2570732 64 0.0
(read/write) 192193 192193 0 0.0
.bss 99489 99489 0 0.0
.data 1688 1688 0 0.0
.data.rel.ro 82928 82928 0 0.0
.dynamic 528 528 0 0.0
.got 5072 5072 0 0.0
.init 24 24 0 0.0
.init_array 400 400 0 0.0
.rodata 163324 163324 0 0.0
.text 2168224 2168288 64 0.0
tv-app debug (read only) 3067137 3067185 48 0.0
(read/write) 289352 289352 0 0.0
.bss 199240 199240 0 0.0
.data 4656 4656 0 0.0
.data.rel.ro 79016 79016 0 0.0
.dynamic 608 608 0 0.0
.got 4840 4840 0 0.0
.init 27 27 0 0.0
.init_array 952 952 0 0.0
.rodata 245664 245664 0 0.0
.text 2634610 2634658 48 0.0
tv-casting-app debug (read only) 5549993 5550041 48 0.0
(read/write) 199960 199960 0 0.0
.bss 88072 88072 0 0.0
.data 2480 2480 0 0.0
.data.rel.ro 103184 103184 0 0.0
.dynamic 608 608 0 0.0
.got 4712 4712 0 0.0
.init 27 27 0 0.0
.init_array 872 872 0 0.0
.rodata 341193 341193 0 0.0
.text 4932354 4932402 48 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2437720 2437720 0 0.0
.bss 208204 208204 0 0.0
.data 5864 5864 0 0.0
.text 1400364 1400364 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1198699 1198699 0 0.0
bss 141598 141598 0 0.0
rodata 155676 155676 0 0.0
text 822504 822512 8 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1146655 1146671 16 0.0
bss 140850 140850 0 0.0
rodata 132200 132200 0 0.0
text 794724 794736 12 0.0
p6 all-clusters-app default (read/write) 2553568 2553584 16 0.0
.bss 143384 143384 0 0.0
.data 2776 2776 0 0.0
.text 1511832 1511848 16 0.0
all-clusters-minimal-app default (read/write) 2499416 2499448 32 0.0
.bss 142664 142664 0 0.0
.data 2776 2776 0 0.0
.text 1457680 1457712 32 0.0
light-app default (read/write) 2430160 2430176 16 0.0
.bss 134744 134744 0 0.0
.data 2592 2592 0 0.0
.text 1388424 1388440 16 0.0
lock-app default (read/write) 2450784 2450800 16 0.0
.bss 134568 134568 0 0.0
.data 2600 2600 0 0.0
.text 1409048 1409064 16 0.0
telink light-switch-app tlsr9518adk80d (read/write) 789008 789032 24 0.0
bss 69892 69892 0 0.0
noinit 40416 40416 0 0.0
text 559600 559620 20 0.0
lighting-app tlsr9518adk80d (read/write) 808728 808744 16 0.0
bss 70140 70140 0 0.0
noinit 40416 40416 0 0.0
text 576066 576082 16 0.0

Copy link
Contributor

@bzbarsky-apple bzbarsky-apple left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the ExpireFailSafeIfArmed() call in Cleanup() can just go away altogether, based on these callsites...

@tehampson
Copy link
Contributor Author

I was wondering if anyone had a recommendation on how to use chip-tool to test this PR

I tried to do something with chip-repl today and that didn't work out. I tried messing around with chip-tool and hitting issue with revoking-commissioning. I was thinking something along the lines of (not even sure if step 2 is doing what I think it is doing):

  1. Terminal 1:
  • chip-tool pairing onnetwork 1 20202021
  • chip-tool pairing open-commissioning-window 1 0 200 1000 3840
  1. Terminal 2:
  • chip-tool interactive start
    • pairing code-paseonly 17 749701123365521327694
  1. Terminal 1:
  • chip-tool administratorcommissioning revoke-commissioning 1 0

But the revoke command is failing here

@bzbarsky-apple
Copy link
Contributor

bzbarsky-apple commented Jun 22, 2022

pairing code-paseonly 17 749701123365521327694

You probably want to throw --commissioner-name beta on there, though in practice for paseonly it might not matter.

chip-tool administratorcommissioning revoke-commissioning 1 0

This needs a --timedInteractionTimeoutMs argument to not error out.

@tehampson tehampson merged commit 57169fc into project-chip:master Jun 22, 2022
@tehampson tehampson deleted the closing-comissioning-window-does-not-expire-fail-safe-19678 branch June 22, 2022 17:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Closing the commissioning window should not expire fail-safe
3 participants