-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Run commissioning from external class. #12643
Run commissioning from external class. #12643
Conversation
(cecille): device attestation casues operational cert provisioinging to happen, This should be a separate stage.connectedhomeip/src/controller/AutoCommissioner.cpp Lines 37 to 47 in 27032a1
This comment was generated by todo based on a
|
once case is working, need to add stages to find and reconnectconnectedhomeip/src/controller/AutoCommissioner.cpp Lines 41 to 51 in 27032a1
This comment was generated by todo based on a
|
check that there is no commissioning in progress currently.connectedhomeip/src/controller/AutoCommissioner.cpp Lines 68 to 78 in 27032a1
This comment was generated by todo based on a
|
(cecille): Once the commissioning stages are separated, this can be removed from the device and moved down into theconnectedhomeip/src/controller/CHIPDeviceController.cpp Lines 903 to 907 in 27032a1
This comment was generated by todo based on a
|
(cecille): Add to parameters and have the caller pass this in.connectedhomeip/src/controller/CHIPDeviceController.cpp Lines 1778 to 1781 in 27032a1
This comment was generated by todo based on a
|
(cecille): Remove the certificates from the CommissioneeDeviceProxy and take from the commissioning parameters.connectedhomeip/src/controller/CHIPDeviceController.cpp Lines 1813 to 1823 in 27032a1
This comment was generated by todo based on a
|
(cecille): The pointer re-interpret here is ugly. Once these steps are moved into the commissioning state machine,connectedhomeip/src/controller/CHIPDeviceController.cpp Lines 1829 to 1839 in 27032a1
This comment was generated by todo based on a
|
Add other things the delegate needs to know.connectedhomeip/src/controller/CommissioningDelegate.h Lines 53 to 63 in 27032a1
This comment was generated by todo based on a
|
PR #12643: Size comparison from db6d572 to 27032a1 Increases above 0.2%:
Increases (2 builds for linux)
Full report (39 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
PR #12643: Size comparison from db6d572 to acdabfe Increases above 0.2%:
Increases (16 builds for k32w, linux, mbed, p6, qpg, telink)
Decreases (10 builds for efr32, linux, mbed, p6)
Full report (27 builds for efr32, k32w, linux, mbed, p6, qpg, telink)
|
Adding a (soon to be) optional auto-commissioner to maintain current functionality as-is.
acdabfe
to
45579f9
Compare
PR #12643: Size comparison from 6f89b9b to 45579f9 Increases above 0.2%:
Increases (2 builds for linux)
Full report (39 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
/rebase |
PR #12643: Size comparison from d27ac43 to dc9792a Increases (1 build for linux)
Decreases (1 build for linux)
Full report (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
Problem
Right now the CHIPDeviceCommissioner class is very opinionated about commissioning and requires that all of the commissioning information be available at the time of the PairDevice call. Moving to have the commissioning steps being driven from an external class so sequencing and timing can be more easily controlled by the developers. As we move the DAC and opcerts into the commissioning state machine, this will also let developers have the ability to do "just-in-time" provisioning of the commissioning parameters. Right now, the auto commissioner is held by the DeviceCommissioner, but will be made optional in future PRs so that developers may write their own to better suit their own timing and certificate provisioning requirements.
Change overview
Moves the control of the commissioning process to an external class and provides a default
Testing
IP commissioning is tested by the cirque tests, also tested manually using IP testing with chip-tool and with chip-device-ctrl. Tested BLE on M5.