-
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
[Chef] Create a ContactSensor to support LIT ICD (Linux Only) #37123
base: master
Are you sure you want to change the base?
Changes from 27 commits
8dbb7b3
459d4ad
a7074e8
91317d1
ef66372
0cc62c4
387f7f2
75ecb6f
4c52ef3
6763741
4ccb849
8e0efad
f3b8c91
bc994c9
aa2cae7
36008b5
4c00c84
02b04ca
0c37543
2340c3b
0447721
359366a
7a327ab
487d1e9
e7d92e3
6c19c49
07a6174
161ce0e
865e94a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -42,6 +42,7 @@ | |
_CD_STAGING_DIR = os.path.join(_CHEF_SCRIPT_PATH, "staging") | ||
_EXCLUDE_DEVICE_FROM_LINUX_CI = [ # These do not compile / deprecated. | ||
"noip_rootnode_dimmablelight_bCwGYSDpoe", | ||
"icd_rootnode_contactsensor_ed3b19ec55", | ||
"rootnode_refrigerator_temperaturecontrolledcabinet_temperaturecontrolledcabinet_ffdb696680", | ||
] | ||
|
||
|
@@ -328,6 +329,8 @@ def main() -> int: | |
action="store_true", dest="do_erase") | ||
parser.add_option("-i", "--terminal", help="opens terminal to interact with with device", | ||
action="store_true", dest="do_interact") | ||
parser.add_option("-I", "--enable_lit_icd", help="enable LIT ICD (Long Idle Time Intermittently Connected Device) mode", | ||
action="store_true", default=False) | ||
parser.add_option("-m", "--menuconfig", help="runs menuconfig on platforms that support it", | ||
action="store_true", dest="do_menuconfig") | ||
parser.add_option("-z", "--zap", help="runs zap to generate data model & interaction model artifacts", | ||
|
@@ -894,6 +897,13 @@ def main() -> int: | |
else: | ||
linux_args.append("chip_inet_config_enable_ipv4=false") | ||
|
||
if options.enable_lit_icd: | ||
linux_args.append("chip_enable_icd_server = true") | ||
linux_args.append("chip_subscription_timeout_resumption = true") | ||
linux_args.append("chip_icd_report_on_active_mode = true") | ||
linux_args.append("chip_enable_icd_lit = true") | ||
linux_args.append("chip_enable_icd_dsls = true") | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Does the contact sensor implement this feature? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The contact sensor is this current code under chef. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @mkardous-silabs I think this feature There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The question is does the contact-sensor require this feature in the sense do we need to enable it? I don't think the current contact sensor implementation uses but i might be wrong. The feature can be enabled without it being actually used. You can ignore the comment. |
||
|
||
if sw_ver_string: | ||
linux_args.append( | ||
f'chip_device_config_device_software_version_string = "{sw_ver_string}"') | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the persistent subscription feature enabled? It is a requirement for this feature.
As a side comment, this changes the behavior on when check-in messages are sent out based on wether we are retrying to re-subscribe or not.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mkardous-silabs
chip_persist_subscriptions
hasn't been enabled. Thanks for the reminder. May I know what is your suggestion?Actually I am not very familiar with these feature. So I'll leave this to @yunhanw-google to comment if we should enable both
chip_persist_subscriptions
andchip_subscription_timeout_resumption
.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ICDmanager behavior adapts based on the presence of both feature. The combos are
chip_persist_subscriptions
andchip_subscription_timeout_resumption
chip_persist_subscriptions
and withoutchip_subscription_timeout_resumption
Subscription timeout cannot be present without chip_persist_subscriptions IIRC.
making these configurable might be valuable to enable most tests case.