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

Correct ufsi timing calculation #14748

Merged
merged 3 commits into from
Jun 11, 2021

Conversation

AlbanJeantheau-silabs
Copy link
Contributor

Summary of changes

This change fixes UFSI calculation. We have noticed in some circumstances the fhss timer callback can be delayed, wisun devices can lost frequency hopping synchronization.

When calculating ufsi, the function was relying on the slot processed by the unicast fhss timer callback, which can be delayed. When it happens the slot value is wrong, and the ufsi is incorrect.

The ufsi is then used by the peer to determined the reply channel, so the devices are thus unsynchronized until the next uplink packet.

Impact of changes

Migration actions required

Documentation

None


Pull request type

[X] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[X] Tests / results supplied as part of this PR
Check there is no regression on our connection tests, udp tests, tcp tests, ping tests.
Run FHSS unit test.

Reviewers


When calculating ufsi, the function was relying
on the slot processed by the unicast fhss timer
callback, which can be delayed. When it happens
the slot value is wrong, and the ufsi is incorrect.

The ufsi is then used by the peer to determined
the reply channel, so the devices are thus
unsynchronized until the next uplink packet.
@ciarmcom ciarmcom added the release-type: patch Indentifies a PR as containing just a patch label Jun 8, 2021
@ciarmcom ciarmcom requested a review from a team June 8, 2021 16:30
@ciarmcom
Copy link
Member

ciarmcom commented Jun 8, 2021

@AlbanJeantheau-silabs, thank you for your changes.
@ARMmbed/mbed-os-maintainers please review.

@0xc0170
Copy link
Contributor

0xc0170 commented Jun 9, 2021

@artokin Please review

@artokin artokin requested a review from JarkkoPaso June 9, 2021 11:13
AlbanJeantheau-silabs and others added 2 commits June 11, 2021 10:35
Co-authored-by: Jarkko Paso <jarkko.paso@arm.com>
@0xc0170
Copy link
Contributor

0xc0170 commented Jun 11, 2021

CI started

@mbed-ci
Copy link

mbed-ci commented Jun 11, 2021

Jenkins CI Test : ✔️ SUCCESS

Build Number: 1 | 🔒 Jenkins CI Job | 🌐 Logs & Artifacts

CLICK for Detailed Summary

jobs Status
jenkins-ci/mbed-os-ci_unittests ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_cmake-cloud-example-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-cloud-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-cloud-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-greentea-ARM ✔️
jenkins-ci/mbed-os-ci_build-greentea-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-ARM ✔️
jenkins-ci/mbed-os-ci_cmake-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_build-example-ARM ✔️
jenkins-ci/mbed-os-ci_build-example-GCC_ARM ✔️
jenkins-ci/mbed-os-ci_greentea-test ✔️

@0xc0170 0xc0170 merged commit 3964478 into ARMmbed:master Jun 11, 2021
@mergify mergify bot removed the ready for merge label Jun 11, 2021
@AlbanJeantheau-silabs AlbanJeantheau-silabs deleted the fix_calculate_ufsi branch June 11, 2021 14:19
@mbedmain mbedmain added release-version: 6.12.0 Release-pending and removed release-type: patch Indentifies a PR as containing just a patch Release-pending labels Jun 18, 2021
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