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

Add target endpoint to CommissioningWindowOpener #34425

Merged

Conversation

samadDotDev
Copy link
Contributor

Revives #33799 after the params API refactor.

I'm not sure if this PR needs to be strictly blocked on the issue raised in https://github.com/CHIP-Specifications/connectedhomeip-spec/issues/9354 since this is just adding the endpoint parameter for CommissioningWindowOpener to target when sending out ACC (AdminCommissioningCluster) commands instead of always sending to root as being done currently, but I'll follow the conversation there to ensure if this needs to be gated by specific feature bits.

The behavior of restricting endpoint ID to root in server handling of ACC command has been intentionally left out since that's definitely not spec-compliant as discussed here. Please correct my understanding if that's not the case or if there needs to be a different requirement for it.

For context: The 2-way Eco-to-Eco Fabric sync has a use case of a fabric-admin containing fabric-bridge as one of its connected devices. The requirement is to be able to direct the OCW command at a specific endpoint of the bridge [(bridgeNodeId, bridgedEndpointId)] which will then be expected to be translated and forwarded to the relevant bridged node [(bridgedNodeId, rootOrAccEndpointId)] by the bridge.

Fixes #33798

@samadDotDev samadDotDev changed the title Upstream/ocw endpoint Add target endpoint to CommissioningWindowOpener Jul 19, 2024
Copy link

github-actions bot commented Jul 19, 2024

PR #34425: Size comparison from 19a774a to 60dad48

Full report (85 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, mbed, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 19a774a 60dad48 change % change
bl602 lighting-app bl602 FLASH 1271796 1271796 0 0.0
RAM 95392 95392 0 0.0
bl602+mfd FLASH 1286054 1286054 0 0.0
RAM 95536 95536 0 0.0
bl602+rpc FLASH 1310756 1310756 0 0.0
RAM 103816 103816 0 0.0
bl702 lighting-app bl702 FLASH 1092690 1092690 0 0.0
RAM 15229 15229 0 0.0
bl702+mfd FLASH 1103640 1103640 0 0.0
RAM 15381 15381 0 0.0
bl702+rpc FLASH 1182756 1182756 0 0.0
RAM 24245 24245 0 0.0
bl706-eth FLASH 875998 875998 0 0.0
RAM 27348 27348 0 0.0
bl706-wifi FLASH 1128180 1128180 0 0.0
RAM 14681 14681 0 0.0
bl702l lighting-app bl702l FLASH 1079832 1079832 0 0.0
RAM 21800 21800 0 0.0
bl702l+mfd FLASH 1091094 1091094 0 0.0
RAM 21960 21960 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 798820 798820 0 0.0
RAM 109236 109236 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816628 816628 0 0.0
RAM 117028 117028 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808484 808484 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 761180 761180 0 0.0
RAM 105400 105400 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 746868 746868 0 0.0
RAM 105632 105632 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606650 606650 0 0.0
RAM 204572 204572 0 0.0
lock CC3235SF_LAUNCHXL FLASH 651990 651990 0 0.0
RAM 204844 204844 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 667945 667945 0 0.0
RAM 77700 77700 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 687805 687805 0 0.0
RAM 80340 80340 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 687805 687805 0 0.0
RAM 80340 80340 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 644733 644733 0 0.0
RAM 72768 72768 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 609561 609561 0 0.0
RAM 70876 70876 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 629189 629189 0 0.0
RAM 73420 73420 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 629189 629189 0 0.0
RAM 73420 73420 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 625257 625257 0 0.0
RAM 73892 73892 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 644973 644973 0 0.0
RAM 76436 76436 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 644973 644973 0 0.0
RAM 76436 76436 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 593637 593637 0 0.0
RAM 67844 67844 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 613489 613489 0 0.0
RAM 70484 70484 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 613489 613489 0 0.0
RAM 70484 70484 0 0.0
efr32 lighting-app BRD4187C FLASH 924784 924784 0 0.0
RAM 137604 137604 0 0.0
lock-app BRD4338a FLASH 734196 734188 -8 -0.0
RAM 207988 207988 0 0.0
window-app BRD4187C FLASH 1012948 1012940 -8 -0.0
RAM 129716 129716 0 0.0
esp32 all-clusters-app c3devkit DRAM 90932 90932 0 0.0
FLASH 1471270 1471270 0 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117404 117404 0 0.0
FLASH 1540239 1540239 0 0.0
IRAM 125403 125403 0 0.0
linux air-purifier-app debug unknown 4624 4624 0 0.0
FLASH 2706909 2706909 0 0.0
RAM 125200 125200 0 0.0
all-clusters-app debug unknown 5392 5392 0 0.0
FLASH 5835124 5835124 0 0.0
RAM 494688 494688 0 0.0
all-clusters-minimal-app debug unknown 5304 5304 0 0.0
FLASH 5295098 5295098 0 0.0
RAM 235696 235696 0 0.0
bridge-app debug unknown 5288 5288 0 0.0
FLASH 4694434 4694434 0 0.0
RAM 212960 212960 0 0.0
chip-tool debug unknown 5776 5776 0 0.0
FLASH 12296492 12296660 168 0.0
RAM 548818 548818 0 0.0
chip-tool-ipv6only arm64 unknown 20168 20168 0 0.0
FLASH 11002588 11002748 160 0.0
RAM 598464 598464 0 0.0
fabric-admin debug unknown 5672 5672 0 0.0
FLASH 11314561 11315167 606 0.0
RAM 545658 545658 0 0.0
fabric-bridge-app debug unknown 4560 4560 0 0.0
FLASH 4448638 4448758 120 0.0
RAM 198992 198992 0 0.0
lighting-app debug+rpc+ui unknown 5968 5968 0 0.0
FLASH 5618193 5618193 0 0.0
RAM 224240 224240 0 0.0
lock-app debug unknown 5224 5224 0 0.0
FLASH 4752908 4752908 0 0.0
RAM 200672 200672 0 0.0
ota-provider-app debug unknown 4600 4600 0 0.0
FLASH 4397298 4397298 0 0.0
RAM 194848 194848 0 0.0
ota-requestor-app debug unknown 4536 4536 0 0.0
FLASH 4535112 4535112 0 0.0
RAM 199384 199384 0 0.0
shell debug unknown 4168 4168 0 0.0
FLASH 2979293 2979293 0 0.0
RAM 153736 153736 0 0.0
thermostat-no-ble arm64 unknown 9208 9208 0 0.0
FLASH 4256900 4256900 0 0.0
RAM 236336 236336 0 0.0
tv-app debug unknown 5496 5496 0 0.0
FLASH 5893615 5893615 0 0.0
RAM 342080 342080 0 0.0
tv-casting-app debug unknown 5160 5160 0 0.0
FLASH 10431405 10431405 0 0.0
RAM 403080 403080 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503276 1503276 0 0.0
RAM 226728 226728 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 883240 883240 0 0.0
RAM 142311 142311 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 953492 953492 0 0.0
RAM 140739 140739 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 828256 828256 0 0.0
RAM 141179 141179 0 0.0
nxp contact k32w0+release FLASH 576100 576100 0 0.0
RAM 70096 70096 0 0.0
k32w1+release FLASH 591672 591672 0 0.0
RAM 74144 74144 0 0.0
light k32w0+release FLASH 610448 610448 0 0.0
RAM 69564 69564 0 0.0
k32w1+release FLASH 675296 675296 0 0.0
RAM 82880 82880 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1611548 1611548 0 0.0
RAM 209736 209736 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1532052 1532052 0 0.0
RAM 206544 206544 0 0.0
light cy8ckit_062s2_43012 FLASH 1458724 1458724 0 0.0
RAM 199808 199808 0 0.0
lock cy8ckit_062s2_43012 FLASH 1459484 1459484 0 0.0
RAM 224336 224336 0 0.0
qpg lighting-app qpg6105+debug FLASH 651628 651628 0 0.0
RAM 104644 104644 0 0.0
lock-app qpg6105+debug FLASH 612136 612136 0 0.0
RAM 99312 99312 0 0.0
stm32 light STM32WB5MM-DK FLASH 474008 474008 0 0.0
RAM 144268 144268 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 633088 633088 0 0.0
RAM 50576 50576 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 658984 658984 0 0.0
RAM 148488 148488 0 0.0
all-clusters-minimal-app tlsr9528a FLASH 779256 779256 0 0.0
RAM 113260 113260 0 0.0
bridge-app tlsr9258a FLASH 676088 676088 0 0.0
RAM 95352 95352 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 634672 634672 0 0.0
RAM 50620 50620 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 720540 720540 0 0.0
RAM 77196 77196 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 614060 614060 0 0.0
RAM 144684 144684 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 801842 801842 0 0.0
RAM 103088 103088 0 0.0
lock-app-dfu tlsr9528a FLASH 666496 666496 0 0.0
RAM 69900 69900 0 0.0
ota-requestor-app tlsr9258a FLASH 695420 695420 0 0.0
RAM 95076 95076 0 0.0
pump-app tlsr9518adk80d FLASH 616954 616954 0 0.0
RAM 57000 57000 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607338 607338 0 0.0
RAM 56800 56800 0 0.0
shell tlsr9518adk80d FLASH 466518 466518 0 0.0
RAM 72488 72488 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 641290 641290 0 0.0
RAM 52248 52248 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651164 651164 0 0.0
RAM 60436 60436 0 0.0
thermostat tlsr9518adk80d FLASH 626228 626228 0 0.0
RAM 57132 57132 0 0.0
window-covering tlsr9118bdk40d FLASH 519454 519454 0 0.0
RAM 97848 97848 0 0.0
tizen all-clusters-app arm unknown 1584 1584 0 0.0
FLASH 1641004 1641004 0 0.0
RAM 48708 48708 0 0.0
chip-tool-ubsan arm unknown 2384 2384 0 0.0
FLASH 16310606 16311534 928 0.0
RAM 7168484 7168968 484 0.0

Copy link
Contributor

@yufengwangca yufengwangca left a comment

Choose a reason for hiding this comment

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

Previous #33799 is pending on whether to add the Endpoint parameter to the OpenCommissioningWindow API. This parameter is currently already part of the CommissioningWindowPasscodeParams. I believe we should avoid hardcoding it to kRootEndpointId in the SDK, particularly since the application can now set this Endpoint parameter via the public API.

@bzbarsky-apple

@samadDotDev samadDotDev force-pushed the upstream/ocw-endpoint-id branch from badd7f4 to 477bf13 Compare July 25, 2024 04:45
Copy link

github-actions bot commented Jul 25, 2024

PR #34425: Size comparison from c4a25e6 to 477bf13

Full report (65 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, linux, mbed, nxp, qpg, stm32, telink, tizen)
platform target config section c4a25e6 477bf13 change % change
bl602 lighting-app bl602 FLASH 1271964 1271964 0 0.0
RAM 95384 95384 0 0.0
bl602+mfd FLASH 1286222 1286222 0 0.0
RAM 95528 95528 0 0.0
bl602+rpc FLASH 1311188 1311188 0 0.0
RAM 103808 103808 0 0.0
bl702 lighting-app bl702 FLASH 1092858 1092858 0 0.0
RAM 15245 15245 0 0.0
bl702+mfd FLASH 1103808 1103808 0 0.0
RAM 15397 15397 0 0.0
bl702+rpc FLASH 1182924 1182924 0 0.0
RAM 24245 24245 0 0.0
bl706-eth FLASH 876158 876158 0 0.0
RAM 27348 27348 0 0.0
bl706-wifi FLASH 1128598 1128598 0 0.0
RAM 14681 14681 0 0.0
bl702l lighting-app bl702l FLASH 1080012 1080012 0 0.0
RAM 21800 21800 0 0.0
bl702l+mfd FLASH 1091274 1091274 0 0.0
RAM 21960 21960 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 798972 798972 0 0.0
RAM 109236 109236 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 816684 816684 0 0.0
RAM 117020 117020 0 0.0
lock-mtd LP_EM_CC1354P10_6 FLASH 808516 808516 0 0.0
RAM 111308 111308 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 761132 761132 0 0.0
RAM 105408 105408 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 746916 746916 0 0.0
RAM 105632 105632 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 606494 606494 0 0.0
RAM 204564 204564 0 0.0
lock CC3235SF_LAUNCHXL FLASH 652026 652026 0 0.0
RAM 204836 204836 0 0.0
efr32 lighting-app BRD4187C FLASH 926152 926152 0 0.0
RAM 134528 134528 0 0.0
lock-app BRD4338a FLASH 734524 734516 -8 -0.0
RAM 208004 208004 0 0.0
window-app BRD4187C FLASH 1014604 1014604 0 0.0
RAM 126648 126648 0 0.0
esp32 all-clusters-app c3devkit DRAM 90948 90948 0 0.0
FLASH 1471120 1471120 0 0.0
IRAM 75570 75570 0 0.0
m5stack DRAM 117428 117428 0 0.0
FLASH 1540255 1540255 0 0.0
IRAM 125403 125403 0 0.0
linux air-purifier-app debug unknown 4632 4632 0 0.0
FLASH 2710279 2710279 0 0.0
RAM 125200 125200 0 0.0
all-clusters-app debug unknown 5400 5400 0 0.0
FLASH 5838962 5838962 0 0.0
RAM 494560 494560 0 0.0
all-clusters-minimal-app debug unknown 5312 5312 0 0.0
FLASH 5298760 5298760 0 0.0
RAM 235728 235728 0 0.0
bridge-app debug unknown 5296 5296 0 0.0
FLASH 4699178 4699178 0 0.0
RAM 212992 212992 0 0.0
chip-tool debug unknown 5784 5784 0 0.0
FLASH 12279306 12279384 78 0.0
RAM 548050 548050 0 0.0
chip-tool-ipv6only arm64 unknown 20128 20128 0 0.0
FLASH 10986972 10987004 32 0.0
RAM 597680 597680 0 0.0
fabric-admin debug unknown 5672 5672 0 0.0
FLASH 11299679 11299943 264 0.0
RAM 544890 544890 0 0.0
fabric-bridge-app debug unknown 4568 4568 0 0.0
FLASH 4453412 4453464 52 0.0
RAM 199024 199024 0 0.0
lighting-app debug+rpc+ui unknown 5968 5968 0 0.0
FLASH 5623585 5623585 0 0.0
RAM 224272 224272 0 0.0
lock-app debug unknown 5232 5232 0 0.0
FLASH 4757630 4757630 0 0.0
RAM 200704 200704 0 0.0
ota-provider-app debug unknown 4608 4608 0 0.0
FLASH 4402124 4402124 0 0.0
RAM 194880 194880 0 0.0
ota-requestor-app debug unknown 4544 4544 0 0.0
FLASH 4540272 4540272 0 0.0
RAM 199416 199416 0 0.0
shell debug unknown 4168 4168 0 0.0
FLASH 2983165 2983165 0 0.0
RAM 153704 153704 0 0.0
thermostat-no-ble arm64 unknown 9208 9208 0 0.0
FLASH 4259572 4259572 0 0.0
RAM 236360 236360 0 0.0
tv-app debug unknown 5504 5504 0 0.0
FLASH 5974781 5974781 0 0.0
RAM 573184 573184 0 0.0
tv-casting-app debug unknown 5168 5168 0 0.0
FLASH 10490877 10490877 0 0.0
RAM 633352 633352 0 0.0
mbed lock-app-release cy8cproto_062_4343w FLASH 1503276 1503276 0 0.0
RAM 226720 226720 0 0.0
nxp contact k32w0+release FLASH 576100 576100 0 0.0
RAM 70104 70104 0 0.0
k32w1+release FLASH 591672 591672 0 0.0
RAM 74144 74144 0 0.0
light k32w0+release FLASH 610464 610464 0 0.0
RAM 69564 69564 0 0.0
k32w1+release FLASH 675248 675248 0 0.0
RAM 82872 82872 0 0.0
qpg lighting-app qpg6105+debug FLASH 651780 651780 0 0.0
RAM 104636 104636 0 0.0
lock-app qpg6105+debug FLASH 612136 612136 0 0.0
RAM 99320 99320 0 0.0
stm32 light STM32WB5MM-DK FLASH 474176 474176 0 0.0
RAM 144260 144260 0 0.0
telink air-quality-sensor-app tlsr9528a_retention FLASH 633112 633112 0 0.0
RAM 50576 50576 0 0.0
all-clusters-app tlsr9118bdk40d FLASH 658820 658820 0 0.0
RAM 148480 148480 0 0.0
all-clusters-minimal-app tlsr9528a FLASH 779046 779046 0 0.0
RAM 113260 113260 0 0.0
bridge-app tlsr9258a FLASH 676032 676032 0 0.0
RAM 95344 95344 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 634696 634696 0 0.0
RAM 50620 50620 0 0.0
light-switch-app-ota-shell-factory-data tlsr9528a FLASH 720568 720568 0 0.0
RAM 77196 77196 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 614100 614100 0 0.0
RAM 144684 144684 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 801904 801904 0 0.0
RAM 103088 103088 0 0.0
lock-app-dfu tlsr9528a FLASH 666524 666524 0 0.0
RAM 69900 69900 0 0.0
ota-requestor-app tlsr9258a FLASH 695428 695428 0 0.0
RAM 95068 95068 0 0.0
pump-app tlsr9518adk80d FLASH 616960 616960 0 0.0
RAM 57000 57000 0 0.0
pump-controller-app tlsr9518adk80d FLASH 607370 607370 0 0.0
RAM 56800 56800 0 0.0
shell tlsr9518adk80d FLASH 466520 466520 0 0.0
RAM 72488 72488 0 0.0
smoke_co_alarm-app tlsr9528a_retention FLASH 641314 641314 0 0.0
RAM 52248 52248 0 0.0
temperature-measurement-app-mars-ota tlsr9518adk80d FLASH 651192 651192 0 0.0
RAM 60436 60436 0 0.0
thermostat tlsr9518adk80d FLASH 626078 626078 0 0.0
RAM 57124 57124 0 0.0
window-covering tlsr9118bdk40d FLASH 519462 519462 0 0.0
RAM 97856 97856 0 0.0
tizen all-clusters-app arm unknown 1588 1588 0 0.0
FLASH 1640836 1640836 0 0.0
RAM 48708 48708 0 0.0
chip-tool-ubsan arm unknown 2388 2388 0 0.0
FLASH 16290886 16291318 432 0.0
RAM 7153232 7153452 220 0.0

@yufengwangca yufengwangca enabled auto-merge (squash) July 25, 2024 05:39
@yufengwangca yufengwangca merged commit 34462f1 into project-chip:master Jul 25, 2024
69 of 70 checks passed
j-ororke pushed a commit to j-ororke/connectedhomeip that referenced this pull request Jul 31, 2024
* Add target endpoint id to commissioning window opener params

Co-authored-by: Yufeng Wang <[email protected]>

* Set endpoint id in fabric-admin app

* Set root endpoint id by default in commissioning window params

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Yufeng Wang <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
rochaferraz pushed a commit to rochaferraz/connectedhomeip that referenced this pull request Jul 31, 2024
* Add target endpoint id to commissioning window opener params

Co-authored-by: Yufeng Wang <[email protected]>

* Set endpoint id in fabric-admin app

* Set root endpoint id by default in commissioning window params

Co-authored-by: Boris Zbarsky <[email protected]>

---------

Co-authored-by: Yufeng Wang <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
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.

[Feature] Allows opening a commissioning window on a bridged node that is not on Endpoint 0.
4 participants