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

[pre-sve] NotifyUpdateApplied fails if triggered before the node joins the fabric #19192

Closed
selissia opened this issue Jun 3, 2022 · 7 comments
Labels
ota stale Stale issue or PR

Comments

@selissia
Copy link
Contributor

selissia commented Jun 3, 2022

Problem

When a node reboots after a successful OTA update the sending NotifyUpdateApplied might get triggered before the Node re-joins the fabric. In this case the command fails to be transmitted. This fails the TC-SU-2.6 test case

For example, in case of Thread transport re-joining the Thread network takes some time, see attached log snippet.

Proposed Solution

OTARequestor class should delay sending NotifyUpdateApplied until the device has joined the fabric.

@selissia selissia added the ota label Jun 3, 2022
@selissia
Copy link
Contributor Author

selissia commented Jun 3, 2022

tc-su-26-dut-log.txt

@carol-apple
Copy link
Contributor

I think it'd be tricky to figure out how long to delay. There are no timestamps in your log snippet. How long between the first failed Advertise operational node 2BF32B802FF0AE27-0000000000000002 vs the second one which was successful?

@selissia
Copy link
Contributor Author

selissia commented Jun 4, 2022

Several seconds, I don't have a more specific info than that. But this will vary between devices and network conditions anyway.
I meant "delay" in a more general sense, as in "don't attempt NotifyUpdateApplied until the device has joined the fabric" -- how exactly to accomplish that I'm not yet sure.

@marius-alex-tache
Copy link
Contributor

Hi! I'm seeing this after trying to increase OT baud rate to 921600. Seems like the call to HandleDnssdInit is delayed quite a lot. The only thing that got it to work was a combination between a timer and capturing the kDnssdPlatformInitialized event.

@stale
Copy link

stale bot commented Mar 19, 2023

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale Stale issue or PR label Mar 19, 2023
@stale
Copy link

stale bot commented Apr 2, 2023

This stale issue has been automatically closed. Thank you for your contributions.

@stale stale bot closed this as completed Apr 2, 2023
@eme-bennytang
Copy link

Hi all,

I think I am seeing this problem here, I found another issue that is related but my code has already implemented that change
#22131

Is there any further update for the OTA state machine for this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ota stale Stale issue or PR
Projects
None yet
Development

No branches or pull requests

4 participants