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

Support FeatureMap in Network Commissioning cluster #12184

Merged
merged 2 commits into from
Nov 24, 2021
Merged

Support FeatureMap in Network Commissioning cluster #12184

merged 2 commits into from
Nov 24, 2021

Conversation

yufengwangca
Copy link
Contributor

Problem

What is being fixed? Examples:

  • Missing FeatureMap feature in Network Commissioning cluster

Change overview

Support FeatureMap in Network Commissioning cluster

Testing

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

  • Read featuremap of Network Commissioning Cluster against lighting-app and confirm features WI(bit1) is enabled
yufengw@yufengw-SEi:~/connectedhomeip/out/debug/standalone$ ./chip-tool networkcommissioning read feature-map 12344321 0
....
[1637705430.955995][502934:502939] CHIP:DMG: ReportDataMessage =
[1637705430.955999][502934:502939] CHIP:DMG: {
[1637705430.956003][502934:502939] CHIP:DMG: 	AttributeReportIBs =
[1637705430.956009][502934:502939] CHIP:DMG: 	[
[1637705430.956012][502934:502939] CHIP:DMG: 		AttributeReportIB =
[1637705430.956017][502934:502939] CHIP:DMG: 		{
[1637705430.956021][502934:502939] CHIP:DMG: 			AttributeDataIB =
[1637705430.956025][502934:502939] CHIP:DMG: 			{
[1637705430.956029][502934:502939] CHIP:DMG: 				AttributePathIB =
[1637705430.956034][502934:502939] CHIP:DMG: 				{
[1637705430.956041][502934:502939] CHIP:DMG: 					Endpoint = 0x0,
[1637705430.956047][502934:502939] CHIP:DMG: 					Cluster = 0x31,
[1637705430.956054][502934:502939] CHIP:DMG: 					Attribute = 0x0000_FFFC,
[1637705430.956059][502934:502939] CHIP:DMG: 				}
[1637705430.956065][502934:502939] CHIP:DMG: 					
[1637705430.956070][502934:502939] CHIP:DMG: 					Data = 1, 
[1637705430.956075][502934:502939] CHIP:DMG: 				DataVersion = 0x0,
[1637705430.956078][502934:502939] CHIP:DMG: 			},
[1637705430.956084][502934:502939] CHIP:DMG: 			
[1637705430.956087][502934:502939] CHIP:DMG: 		},
[1637705430.956092][502934:502939] CHIP:DMG: 		
[1637705430.956095][502934:502939] CHIP:DMG: 	],
[1637705430.956101][502934:502939] CHIP:DMG: 	
[1637705430.956105][502934:502939] CHIP:DMG: 	SuppressResponse = true, 
[1637705430.956108][502934:502939] CHIP:DMG: }
[1637705430.956132][502934:502939] CHIP:ZCL: ReadAttributesResponse:
[1637705430.956136][502934:502939] CHIP:ZCL:   ClusterId: 0x0000_0031
[1637705430.956142][502934:502939] CHIP:ZCL:   attributeId: 0x0000_FFFC
[1637705430.956145][502934:502939] CHIP:ZCL:   status: Success                (0x0000)
[1637705430.956149][502934:502939] CHIP:ZCL:   attribute TLV Type: 0x04
[1637705430.956155][502934:502939] CHIP:TOO: Int32u attribute Response: 1

@github-actions
Copy link

github-actions bot commented Nov 23, 2021

PR #12184: Size comparison from 6eba258 to 2f10710

Increases (26 builds for efr32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 6eba258 2f10710 change % change
efr32 lighting-app BRD4161A (read only) 754832 754856 24 0.0
(read/write) 119796 119804 8 0.0
.bss 117980 117988 8 0.0
.text 754824 754848 24 0.0
BRD4161A+rpc (read only) 742292 742308 16 0.0
(read/write) 136420 136428 8 0.0
.bss 134484 134492 8 0.0
.text 742284 742300 16 0.0
lock-app BRD4161A (read only) 730688 730704 16 0.0
(read/write) 117508 117516 8 0.0
.bss 115740 115748 8 0.0
.text 730680 730696 16 0.0
window-app BRD4161A (read only) 734136 734152 16 0.0
(read/write) 117868 117876 8 0.0
.bss 116092 116100 8 0.0
.text 734128 734144 16 0.0
k32w lighting-app k32w061+se05x+release (read/write) 710268 710288 20 0.0
.text 625228 625248 20 0.0
lock-app k32w061+debug (read/write) 600480 600500 20 0.0
.text 525032 525052 20 0.0
shell k32w061+debug (read/write) 665960 665988 28 0.0
.bss 78916 78924 8 0.0
.text 579384 579404 20 0.0
linux bridge-app debug+rpc (read only) 1331405 1331429 24 0.0
(read/write) 77408 77472 64 0.1
.bss 41488 41520 32 0.1
.data.rel.ro 29200 29232 32 0.1
chip-tool debug (read only) 5939053 5939077 24 0.0
lighting-app debug+rpc (read only) 1602017 1602041 24 0.0
(read/write) 110688 110720 32 0.0
.data.rel.ro 56800 56832 32 0.1
ota-provider-app debug (read only) 1296153 1296177 24 0.0
ota-requestor-app debug (read only) 1392673 1392697 24 0.0
(read/write) 79792 79824 32 0.0
.data.rel.ro 27112 27144 32 0.1
tv-app debug (read only) 1901081 1901105 24 0.0
mbed lighting-app CY8CPROTO_062_4343W+release (read/write) 2277344 2277368 24 0.0
.bss 172292 172300 8 0.0
.text 1239944 1239968 24 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2251664 2251688 24 0.0
.bss 171108 171116 8 0.0
.text 1214264 1214288 24 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 870183 870235 52 0.0
bss 112640 112644 4 0.0
rodata 96784 96804 20 0.0
nrf52840dk_nrf52840+rpc (read/write) 832551 832603 52 0.0
bss 108992 108996 4 0.0
rodata 87968 87988 20 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 795222 795242 20 0.0
bss 114012 114016 4 0.0
rodata 92040 92060 20 0.0
lock-app nrf52840dk_nrf52840 (read/write) 842299 842319 20 0.0
bss 109672 109676 4 0.0
rodata 92788 92808 20 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 767586 767606 20 0.0
bss 111084 111088 4 0.0
rodata 88076 88096 20 0.0
pump-app nrf52840dk_nrf52840 (read/write) 848407 848427 20 0.0
bss 109812 109816 4 0.0
rodata 94496 94516 20 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 841999 842019 20 0.0
bss 109708 109712 4 0.0
rodata 92744 92764 20 0.0
p6 lock-app default (read/write) 2218904 2218920 16 0.0
.bss 100968 100976 8 0.0
.text 1177168 1177184 16 0.0
qpg lighting-app qpg6100+debug (read only) 497012 497032 20 0.0
.bss 50360 50368 8 0.0
.text 491692 491712 20 0.0
lock-app qpg6100+debug (read only) 470916 470936 20 0.0
.bss 49232 49240 8 0.0
.text 465596 465616 20 0.0
telink lighting-app tlsr9518adk80d (read/write) 771514 771550 36 0.0
bss 79216 79220 4 0.0
Decreases (3 builds for mbed, p6)
platform target config section 6eba258 2f10710 change % change
mbed lighting-app CY8CPROTO_062_4343W+release .heap 858560 858552 -8 -0.0
lock-app CY8CPROTO_062_4343W+release .heap 859760 859752 -8 -0.0
p6 lock-app default .heap 929960 929952 -8 -0.0
Full report (38 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 6eba258 2f10710 change % change
efr32 lighting-app BRD4161A (read only) 754832 754856 24 0.0
(read/write) 119796 119804 8 0.0
.bss 117980 117988 8 0.0
.data 1812 1812 0 0.0
.text 754824 754848 24 0.0
BRD4161A+rpc (read only) 742292 742308 16 0.0
(read/write) 136420 136428 8 0.0
.bss 134484 134492 8 0.0
.data 1936 1936 0 0.0
.text 742284 742300 16 0.0
lock-app BRD4161A (read only) 730688 730704 16 0.0
(read/write) 117508 117516 8 0.0
.bss 115740 115748 8 0.0
.data 1768 1768 0 0.0
.text 730680 730696 16 0.0
window-app BRD4161A (read only) 734136 734152 16 0.0
(read/write) 117868 117876 8 0.0
.bss 116092 116100 8 0.0
.data 1776 1776 0 0.0
.text 734128 734144 16 0.0
esp32 all-clusters-app c3devkit (read only) 834242 834242 0 0.0
(read/write) 1222658 1222658 0 0.0
.dram0.bss 57832 57832 0 0.0
.dram0.data 14100 14100 0 0.0
.flash.rodata 165464 165464 0 0.0
.flash.text 834242 834242 0 0.0
.iram0.text 61394 61394 0 0.0
m5stack (read only) 905103 905103 0 0.0
(read/write) 421956 421956 0 0.0
.dram0.bss 63224 63224 0 0.0
.dram0.data 34064 34064 0 0.0
.flash.rodata 193388 193388 0 0.0
.flash.text 899719 899719 0 0.0
.iram0.text 122943 122943 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 710268 710288 20 0.0
.bss 77316 77316 0 0.0
.data 1924 1924 0 0.0
.text 625228 625248 20 0.0
lock-app k32w061+debug (read/write) 600480 600500 20 0.0
.bss 67756 67756 0 0.0
.data 1892 1892 0 0.0
.text 525032 525052 20 0.0
shell k32w061+debug (read/write) 665960 665988 28 0.0
.bss 78916 78924 8 0.0
.data 1860 1860 0 0.0
.text 579384 579404 20 0.0
linux all-clusters-app debug (read only) 1752673 1752673 0 0.0
(read/write) 129432 129432 0 0.0
.bss 58576 58576 0 0.0
.data 1138 1138 0 0.0
.data.rel.ro 64400 64400 0 0.0
.dynamic 592 592 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 576 576 0 0.0
.rodata 138485 138485 0 0.0
.text 1476178 1476178 0 0.0
bridge-app debug+rpc (read only) 1331405 1331429 24 0.0
(read/write) 77408 77472 64 0.1
.bss 41488 41520 32 0.1
.data 1680 1680 0 0.0
.data.rel.ro 29200 29232 32 0.1
.dynamic 592 592 0 0.0
.got 3984 3984 0 0.0
.init 27 27 0 0.0
.init_array 424 424 0 0.0
.rodata 113044 113044 0 0.0
.text 1118581 1118581 0 0.0
chip-tool debug (read only) 5939053 5939077 24 0.0
(read/write) 196776 196776 0 0.0
.bss 39896 39896 0 0.0
.data 2384 2384 0 0.0
.data.rel.ro 148936 148936 0 0.0
.dynamic 592 592 0 0.0
.got 4456 4456 0 0.0
.init 27 27 0 0.0
.init_array 488 488 0 0.0
.rodata 283922 283922 0 0.0
.text 5272773 5272773 0 0.0
lighting-app debug+rpc (read only) 1602017 1602041 24 0.0
(read/write) 110688 110720 32 0.0
.bss 47216 47216 0 0.0
.data 1330 1330 0 0.0
.data.rel.ro 56800 56832 32 0.1
.dynamic 608 608 0 0.0
.got 4136 4136 0 0.0
.init 27 27 0 0.0
.init_array 552 552 0 0.0
.rodata 131409 131409 0 0.0
.text 1333202 1333202 0 0.0
ota-provider-app debug (read only) 1296153 1296177 24 0.0
(read/write) 75928 75928 0 0.0
.bss 44128 44128 0 0.0
.data 880 880 0 0.0
.data.rel.ro 25784 25784 0 0.0
.dynamic 592 592 0 0.0
.got 4048 4048 0 0.0
.init 27 27 0 0.0
.init_array 464 464 0 0.0
.rodata 114831 114831 0 0.0
.text 1081282 1081282 0 0.0
ota-requestor-app debug (read only) 1392673 1392697 24 0.0
(read/write) 79792 79824 32 0.0
.bss 46592 46592 0 0.0
.data 944 944 0 0.0
.data.rel.ro 27112 27144 32 0.1
.dynamic 592 592 0 0.0
.got 4032 4032 0 0.0
.init 27 27 0 0.0
.init_array 488 488 0 0.0
.rodata 126240 126240 0 0.0
.text 1163602 1163602 0 0.0
shell debug (read only) 820313 820313 0 0.0
(read/write) 66584 66584 0 0.0
.bss 23272 23272 0 0.0
.data 338 338 0 0.0
.data.rel.ro 38440 38440 0 0.0
.dynamic 592 592 0 0.0
.got 3560 3560 0 0.0
.init 27 27 0 0.0
.init_array 360 360 0 0.0
.rodata 79119 79119 0 0.0
.text 634770 634770 0 0.0
tv-app debug (read only) 1901081 1901105 24 0.0
(read/write) 319704 319704 0 0.0
.bss 249976 249976 0 0.0
.data 2880 2880 0 0.0
.data.rel.ro 61184 61184 0 0.0
.dynamic 592 592 0 0.0
.got 4432 4432 0 0.0
.init 27 27 0 0.0
.init_array 632 632 0 0.0
.rodata 159317 159317 0 0.0
.text 1593874 1593874 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2293064 2293064 0 0.0
.bss 180388 180388 0 0.0
.data 5240 5240 0 0.0
.heap 850816 850816 0 0.0
.text 1255664 1255664 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2277344 2277368 24 0.0
.bss 172292 172300 8 0.0
.data 5592 5592 0 0.0
.heap 858560 858552 -8 -0.0
.text 1239944 1239968 24 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2251664 2251688 24 0.0
.bss 171108 171116 8 0.0
.data 5576 5576 0 0.0
.heap 859760 859752 -8 -0.0
.text 1214264 1214288 24 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2051224 2051224 0 0.0
.bss 156320 156320 0 0.0
.data 4984 4984 0 0.0
.heap 875144 875144 0 0.0
.text 1013824 1013824 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 870183 870235 52 0.0
bss 112640 112644 4 0.0
rodata 96784 96804 20 0.0
text 585136 585136 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 832551 832603 52 0.0
bss 108992 108996 4 0.0
rodata 87968 87988 20 0.0
text 559304 559304 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 795222 795242 20 0.0
bss 114012 114016 4 0.0
rodata 92040 92060 20 0.0
text 514600 514600 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 842299 842319 20 0.0
bss 109672 109676 4 0.0
rodata 92788 92808 20 0.0
text 564380 564380 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 767586 767606 20 0.0
bss 111084 111088 4 0.0
rodata 88076 88096 20 0.0
text 493936 493936 0 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497327 497327 0 0.0
bss 51824 51824 0 0.0
rodata 45780 45780 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 848407 848427 20 0.0
bss 109812 109816 4 0.0
rodata 94496 94516 20 0.0
text 568560 568560 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 841999 842019 20 0.0
bss 109708 109712 4 0.0
rodata 92744 92764 20 0.0
text 564000 564000 0 0.0
shell nrf52840dk_nrf52840 (read/write) 778907 778907 0 0.0
bss 109184 109184 0 0.0
rodata 73304 73304 0 0.0
text 521828 521828 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 693962 693962 0 0.0
bss 110168 110168 0 0.0
rodata 67948 67948 0 0.0
text 442436 442436 0 0.0
p6 all-clusters-app default (read/write) 2306904 2306904 0 0.0
.bss 113376 113376 0 0.0
.data 2536 2536 0 0.0
.heap 917432 917432 0 0.0
.text 1265168 1265168 0 0.0
lock-app default (read/write) 2218904 2218920 16 0.0
.bss 100968 100976 8 0.0
.data 2416 2416 0 0.0
.heap 929960 929952 -8 -0.0
.text 1177168 1177184 16 0.0
qpg lighting-app qpg6100+debug (read only) 497012 497032 20 0.0
(read/write) 114140 114140 0 0.0
.bss 50360 50368 8 0.0
.data 1020 1020 0 0.0
.text 491692 491712 20 0.0
lock-app qpg6100+debug (read only) 470916 470936 20 0.0
(read/write) 114144 114144 0 0.0
.bss 49232 49240 8 0.0
.data 976 976 0 0.0
.text 465596 465616 20 0.0
persistent-storage-app qpg6100+debug (read only) 105408 105408 0 0.0
(read/write) 114142 114142 0 0.0
.bss 8986 8986 0 0.0
.data 272 272 0 0.0
.text 100088 100088 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 771514 771550 36 0.0
bss 79216 79220 4 0.0
noinit 37160 37160 0 0.0
text 535570 535570 0 0.0

@andy31415
Copy link
Contributor

Fast track: data definition change only (generally trivial).

@yufengwangca - I assume we will have a followup to have platforms reply correctly with functionality here (i.e. all-clusters should say wifi on esp32 and thread one efr/nrf and such)?

@andy31415 andy31415 merged commit 1749ed1 into project-chip:master Nov 24, 2021
@yufengwangca
Copy link
Contributor Author

Fast track: data definition change only (generally trivial).

@yufengwangca - I assume we will have a followup to have platforms reply correctly with functionality here (i.e. all-clusters should say wifi on esp32 and thread one efr/nrf and such)?

No, the featuremap is used to discover what attributes/commands are implemented and those attributes/commands are selected by the user from ZAP UI, not decided by the platform.

The next step is we need to update ZAP UI to add features checkbox, so that the user can enable/disable the features from the UI.

@yufengwangca yufengwangca deleted the pr/featuremap/network branch November 24, 2021 16:18
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.

3 participants