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

Fix pairing via the SetupCodePairer #13677

Merged
merged 7 commits into from
Jan 20, 2022

Conversation

sagar-apple
Copy link
Contributor

@sagar-apple sagar-apple commented Jan 18, 2022

Problem

SetupCodePairer doesn't need to use the BLE auto commissioning mechanism.

Instead its purpose is to establish PASE by parsing the onboarding payload and figuring out whether the commissionee is on BLE or IP.

Change overview

Only establish a PASE session inside the SetupCodePairer when the node was discovered over BLE and perform a full commissioning when it's on-network.

Also fixed iOS CHIPTool and exposed the Commission API to ObjC.

Testing

How was this tested? (at least one bullet point required)

  • If manually tested, what platforms controller and device platforms were manually tested, and how?
    Verified that chip-tool qrcode/manualcode pairing is no longer broken.
./out/host/chip-tool pairing qrcode 1 'MT:C8XA0SRB00KA0648G00'

@github-actions
Copy link

github-actions bot commented Jan 19, 2022

PR #13677: Size comparison from 78a6636 to d3a1dea

Decreases (1 build for linux)
platform target config section 78a6636 d3a1dea change % change
linux chip-tool-ipv6only arm64 (read only) 8090660 8090564 -96 -0.0
.text 6873764 6873668 -96 -0.0
Full report (21 builds for efr32, esp32, k32w, linux, mbed, p6, qpg, telink)
platform target config section 78a6636 d3a1dea change % change
efr32 lighting-app BRD4161A (read only) 834948 834948 0 0.0
(read/write) 127636 127636 0 0.0
.bss 125744 125744 0 0.0
.data 1892 1892 0 0.0
.text 834940 834940 0 0.0
BRD4161A+rpc (read only) 822352 822352 0 0.0
(read/write) 144296 144296 0 0.0
.bss 142304 142304 0 0.0
.data 1992 1992 0 0.0
.text 822344 822344 0 0.0
window-app BRD4161A (read only) 805536 805536 0 0.0
(read/write) 126328 126328 0 0.0
.bss 124480 124480 0 0.0
.data 1844 1844 0 0.0
.text 805528 805528 0 0.0
esp32 all-clusters-app c3devkit (read only) 912452 912452 0 0.0
(read/write) 1316698 1316698 0 0.0
.dram0.bss 70528 70528 0 0.0
.dram0.data 14292 14292 0 0.0
.flash.rodata 178384 178384 0 0.0
.flash.text 912452 912452 0 0.0
.iram0.text 62056 62056 0 0.0
m5stack (read only) 961295 961295 0 0.0
(read/write) 448856 448856 0 0.0
.dram0.bss 74984 74984 0 0.0
.dram0.data 34072 34072 0 0.0
.flash.rodata 207672 207672 0 0.0
.flash.text 955911 955911 0 0.0
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 659156 659156 0 0.0
.bss 77136 77136 0 0.0
.data 1860 1860 0 0.0
.text 574360 574360 0 0.0
lock k32w061+release (read/write) 661888 661888 0 0.0
.bss 77432 77432 0 0.0
.data 1880 1880 0 0.0
.text 576776 576776 0 0.0
linux chip-tool-ipv6only arm64 (read only) 8090660 8090564 -96 -0.0
(read/write) 373409 373409 0 0.0
.bss 55217 55217 0 0.0
.data 1112 1112 0 0.0
.data.rel.ro 248088 248088 0 0.0
.dynamic 560 560 0 0.0
.got 65296 65296 0 0.0
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 421100 421100 0 0.0
.text 6873764 6873668 -96 -0.0
thermostat-no-ble arm64 (read only) 2044156 2044156 0 0.0
(read/write) 145985 145985 0 0.0
.bss 65089 65089 0 0.0
.data 896 896 0 0.0
.data.rel.ro 73016 73016 0 0.0
.dynamic 560 560 0 0.0
.got 4048 4048 0 0.0
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129932 129932 0 0.0
.text 1699616 1699616 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2350176 2350176 0 0.0
.bss 189220 189220 0 0.0
.data 5328 5328 0 0.0
.text 1312752 1312752 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2334632 2334632 0 0.0
.bss 180760 180760 0 0.0
.data 5576 5576 0 0.0
.text 1297232 1297232 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304984 2304984 0 0.0
.bss 179768 179768 0 0.0
.data 5552 5552 0 0.0
.text 1267584 1267584 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139712 1139712 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103096 103096 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2054464 2054464 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1017064 1017064 0 0.0
p6 all-clusters-app default (read/write) 2405304 2405304 0 0.0
.bss 117556 117556 0 0.0
.data 2608 2608 0 0.0
.text 1363568 1363568 0 0.0
light-app default (read/write) 2330160 2330160 0 0.0
.bss 106128 106128 0 0.0
.data 2400 2400 0 0.0
.text 1288424 1288424 0 0.0
lock-app default (read/write) 2299168 2299168 0 0.0
.bss 104976 104976 0 0.0
.data 2352 2352 0 0.0
.text 1257432 1257432 0 0.0
qpg lighting-app qpg6105+debug (read only) 565160 565160 0 0.0
(read/write) 146940 146940 0 0.0
.bss 89960 89960 0 0.0
.data 1056 1056 0 0.0
.text 559840 559840 0 0.0
lock-app qpg6105+debug (read only) 515572 515572 0 0.0
(read/write) 146936 146936 0 0.0
.bss 88584 88584 0 0.0
.data 980 980 0 0.0
.text 510252 510252 0 0.0
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 840902 840902 0 0.0
bss 87316 87316 0 0.0
noinit 37160 37160 0 0.0
text 587854 587854 0 0.0

@msandstedt msandstedt self-requested a review January 19, 2022 01:08
@sagar-apple
Copy link
Contributor Author

I need to make some changes to this PR to get it to pass CI.
I'm also working on fixing the iOS CHIPTool's commissioning flows as part of this. The PR will not pass CI until then.

Copy link
Contributor

@pan-apple pan-apple left a comment

Choose a reason for hiding this comment

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

LGTM

@sagar-apple sagar-apple merged commit 3853608 into project-chip:master Jan 20, 2022
@sagar-apple sagar-apple deleted the fix_pairing branch January 20, 2022 03:03
selissia pushed a commit to selissia/connectedhomeip that referenced this pull request Jan 28, 2022
* Fix pairing via the SetupCodePairer

* Fix iOS CHIPTool and make sure only PASE is setup for BLE discovery

* Fix compile

* Restyled by clang-format

* Update src/controller/SetUpCodePairer.cpp

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

* Fix Darwin test

* Fix the zapt file

Co-authored-by: Restyled.io <[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.

6 participants